Model Context Protocol server for Hackle
git clone https://github.com/hackle-io/hackle-mcp{
"mcpServers": {
"hackle-mcp": {
"command": "node",
"args": ["/path/to/hackle-mcp/dist/index.js"]
}
}
}MCP Servers overview
# Hackle MCP Server
[](https://smithery.ai/server/@hackle-io/hackle-mcp)
> [!WARNING]
> ## ⚠️ This local npm package is deprecated — use the remote MCP server
>
> The Hackle MCP server is now available as a **remote server**, and this local npm package is **deprecated**. The remote server requires no npm or Node.js setup, updates automatically, works in the browser, and is where all new tools (such as messaging statistics and Kakao/Text message queries) ship.
>
> **This package will no longer receive updates or new tools.** Existing installations keep working for now, but please migrate to the remote server.
>
> 👉 **Migration guide: https://docs.hackle.io/external-link/model-context-protocol/migration**
>
> ### How to connect to the remote server
>
> 1. **Add a custom connector** in claude.ai (web) or Claude Desktop via **Customization → Connectors → + Add Custom Connector**, using the remote MCP server URL:
>
> ```
> https://mcp.hackle.io/mcp
> ```
>
> 2. Enter your **existing Hackle API key** in the authentication screen — your API key remains unchanged.
> 3. Once connected, you can optionally remove the local server entry from your `claude_desktop_config.json`.
A Model Context Protocol server for Hackle API providing tools and resources for querying A/B Test data.
<a href="https://glama.ai/mcp/servers/@hackle-io/hackle-mcp">
<img width="380" height="200" src="https://glama.ai/mcp/servers/@hackle-io/hackle-mcp/badge" alt="hackle-mcp MCP server" />
</a>
## Features
### Tools
#### Experiment List Tool
- **Name**: `experiment-list`
- **Description**: Fetches a paginated list of A/B test experiments with search functionality.
- **Parameters**:
- `pageNumber`: Page number (default: 1)
- `pageSize`: Number of items per page (default: 100)
- `searchKeyword`: Search keyword (optional)
#### Experiment Detail Tool
- **Name**: `experiment-detail`
- **Description**: Retrieves detailed information for a specific A/B test experiment.
- **Parameters**:
- `experimentId`: Experiment ID
#### In-App Message List Tool
- **Name**: `in-app-message-list`
- **Description**: Fetches a paginated list of in-app messages with search functionality.
- **Parameters**:
- `pageNumber`: Page number (default: 1)
- `pageSize`: Number of items per page (default: 100)
- `searchKeyword`: Search keyword (optional)
#### In-App Message Detail Tool
- **Name**: `in-app-message-detail`
- **Description**: Retrieves detailed information for a specific in-app message.
- **Parameters**:
- `inAppMessageId`: In-app message ID
#### Push Message List Tool
- **Name**: `push-message-list`
- **Description**: Fetches a paginated list of push messages with search functionality.
- **Parameters**:
- `pageNumber`: Page number (default: 1)
- `pageSize`: Number of items per page (default: 100)
- `searchKeyword`: Search keyword (optional)
#### Push Message Detail Tool
- **Name**: `push-message-detail`
- **Description**: Retrieves detailed information for a specific push message.
- **Parameters**:
- `pushMessageId`: Push message ID
#### Active User Series Tool
- **Name**: `active-user-series`
- **Description**: Retrieves time-series data of active users. Available in daily, weekly, and monthly units.
- **Parameters**:
- `unit`: Time unit (DAY, WEEK, MONTH) (default: DAY)
- `date`: Date (optional)
#### Retention Series Tool
- **Name**: `retention-series`
- **Description**: Retrieves time-series data of user retention. Available in daily, weekly, and monthly units.
- **Parameters**:
- `unit`: Time unit (DAY, WEEK, MONTH) (default: DAY)
- `date`: Date (optional)
#### Stickiness Series Tool
- **Name**: `stickiness-series`
- **Description**: Retrieves time-series data of user stickiness (return visit frequency). Available in weekly and monthly units.
- **Parameters**:
- `unit`: Time unit (WEEK, MONTH) (default: WEEK)
- `date`: Date (optional)
#### Data Report List Tool
- **Name**: `data-report-list`
- **Description**: Retrieves all data report metadata.
#### Data Report Detail Tool
- **Name**: `data-report-detail`
- **Description**: Retrieves single data report's detail. It will provide analytics chart id and type inside data report. It is recommended to use Analytics Chart Detail Tool to get further information of each chart.
- **Parameters**:
- `dataReportId`: Data report's id. This can be found in response of Data Report List Tool.
#### Analytics Chart List Tool
- **Name**: `analytics-chart-list`
- **Description**: Retrieves data analytics chart's metadata list.
- **Parameters**:
- `pageNumber`: Page number (default: 1) (optional)
- `pageSize`: Number of items per page (default: 100) (optional)
- `searchKeyword`: Search keyword (optional) (optional)
- `chartType`: Chart types that Hackle provides: FUNNEL, DATA_INSIGHT, RETENTION, and USER_PATH. (optional)
#### Analytics Chart Detail Tool
- **Name**: `analytics-chart-detail`
- **Description**: Retrieves data analytics chart's detail. You can visualize the chart using this tool's result.
- **Parameters**:
- `chartId`: Analytics chart's id. It can be found in the response of Data Report Detail Tool or Analytics Chart List Tool.
- `chartType`: Analytics chart's type(FUNNEL, DATA_INSIGHT, RETENTION, USER_PATH). It can be found in the response of Data Report Detail Tool or Analytics Chart List Tool.
#### Remote Config List Tool
- **Name**: `remote-config-list`
- **Description**: Retrieves remote config list.
- **Parameters**:
- `pageNumber`: Page number (default: 1)
- `pageSize`: Number of items per page (default: 100)
- `searchKeyword`: Search keyword (optional)
- `status`: Status of remote config: ACTIVE, ARCHIVED (default: 'ACTIVE')
#### Remote Config Detail Tool
- **Name**: `remote-config-detail`
- **Description**: Retrieves remote config's detail.
- **Parameters**:
- `remoteConfigId`: Remote config's id. You can get this information by using Remote Config List Tool.
#### Remote Config Creation Tool
- **Name**: `remote-config-create`
- **Description**: Creates an empty remote config. It is recommended to update an existing RC first if there is an associated RC with the one you want to create since the total number of RC is limited.
- **Parameters**:
- `body`: Request body.
- `key`: Remote config's name.
- `description`: Remote config's description.
- `dataType`: Type of remote config's value: STRING, JSON, NUMBER, BOOLEAN.
- `userIdentifierCriteria`: User identifier criteria for targeting. You can use criteria provided by Hackle($deviceId, $userId) or your own criteria created at Hackle dashboard website. (default: '$deviceId')
#### Remote Config Content Update Tool
- **Name**: `remote-config-update`
- **Description**: Updates remote config's content.
- **Parameters**:
- `remoteConfigId`: Remote config's id.
- `body`: Request body.
- `dataType`: Type of remote config's value: STRING, JSON, NUMBER, BOOLEAN. The request will not be accepted if dataType and remote config values does not match.
- `remoteConfigDefaultValue`: Default value of remote config. This value's type should match with dataType field.
- `conditionalValues`: Array of conditional remote config's value with user group targeting.
- `ruleName`: Name of targeting condition rule.
- `remoteConfigValue`: Remote config's value. This value's type should match with dataType field.
- `target`
- `conditions`: Targeting rules. Users who The user he satisfies all conditions in this array will see this rule's remote config value.
- `key`
- `type`: Condition's type: HACKLE_PROPERTY, USER_PROPERTY, AB_TEST, FEATURE_FLAG, COHORT, SEGMENT.
- `name`: Property's name if type is HACKLE_PROPERTY or USER_PROPERTY. Experiment key if type is AB_TEST. Feature flag key if type is FEATURE_FLAG. You can put any non-empty string if type is COHORT or SEGMENT.
- `match`
- `operator`: Operators that will be used to match key and values of the condition.
- `valueType`: Type of targeting condition's value: NUMBER, STRING, BOOLEAN, VERSION.
- `values`: Values of targeting condition's key. Followings are some special cases: The values will be treated as names if you are using SEGMENT. Only strings 'A' and 'B' are allowed if type is AB_TEST. Only boolean values are accepted if type is FEATURE_FLAG. You should put cohort's id if type is COHORT.
#### Remote Config User Identifier Criteria Update Tool
- **Name**: `remote-config-update-user-identifier-criteria`
- **Description**: Updates remote config's user identifier criteria. The change will be applied to both production and development environment.
- **Parameters**:
- `remoteConfigId`: Remote config's id.
- `body`: Request body.
- `userIdentifierCriteria`: User identifier criteria for targeting. You can use criteria provided by Hackle($deviceId, $userId) or your own criteria created at Hackle dashboard website. (default: '$deviceId')
#### Remote Config Description Update Tool
- **Name**: `remote-config-update-description`
- **Description**: Updates remote config's description. The change will be applied to both production and development environment.
- **Parameters**:
- `remoteConfigId`: Remote config's id.
- `body`: Request body.
- `description`: Remote config's description.
## Installation
Add this entry to your claude_desktop_config.json:
- On Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
- On Windows: %APPDATA%\Claude\claude_desktop_config.json
- On Linux: ~/.config/Claude/claude_desktop_config.json
```json
{
"mcpServers": {
"hackle-mcp": {
"command": "npx",
"args": ["-y", "@hackle-io/hackle-mcp@latest"],
"env": {
"API_KEY": "YOUR_API_KEY"
}
}
}
}
```
Restart Claude if running
## Getting Your API Key
To use the Hackle MCP Server, you will What people ask about hackle-mcp
What is hackle-io/hackle-mcp?
+
hackle-io/hackle-mcp is mcp servers for the Claude AI ecosystem. Model Context Protocol server for Hackle It has 2 GitHub stars and was last updated today.
How do I install hackle-mcp?
+
You can install hackle-mcp by cloning the repository (https://github.com/hackle-io/hackle-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is hackle-io/hackle-mcp safe to use?
+
hackle-io/hackle-mcp has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.
Who maintains hackle-io/hackle-mcp?
+
hackle-io/hackle-mcp is maintained by hackle-io. The last recorded GitHub activity is from today, with 2 open issues.
Are there alternatives to hackle-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy hackle-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/hackle-io-hackle-mcp)<a href="https://claudewave.com/repo/hackle-io-hackle-mcp"><img src="https://claudewave.com/api/badge/hackle-io-hackle-mcp" alt="Featured on ClaudeWave: hackle-io/hackle-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。