Hackle Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Hackle Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
[!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>
#### Experiment List Tool
experiment-listpageNumber: Page number (default: 1)pageSize: Number of items per page (default: 100)searchKeyword: Search keyword (optional)#### Experiment Detail Tool
experiment-detailexperimentId: Experiment ID#### In-App Message List Tool
in-app-message-listpageNumber: Page number (default: 1)pageSize: Number of items per page (default: 100)searchKeyword: Search keyword (optional)#### In-App Message Detail Tool
in-app-message-detailinAppMessageId: In-app message ID#### Push Message List Tool
push-message-listpageNumber: Page number (default: 1)pageSize: Number of items per page (default: 100)searchKeyword: Search keyword (optional)#### Push Message Detail Tool
push-message-detailpushMessageId: Push message ID#### Active User Series Tool
active-user-seriesunit: Time unit (DAY, WEEK, MONTH) (default: DAY)date: Date (optional)#### Retention Series Tool
retention-seriesunit: Time unit (DAY, WEEK, MONTH) (default: DAY)date: Date (optional)#### Stickiness Series Tool
stickiness-seriesunit: Time unit (WEEK, MONTH) (default: WEEK)date: Date (optional)#### Data Report List Tool
data-report-list#### Data Report Detail Tool
data-report-detaildataReportId: Data report's id. This can be found in response of Data Report List Tool.#### Analytics Chart List Tool
analytics-chart-listpageNumber: 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
analytics-chart-detailchartId: 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
remote-config-listpageNumber: 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
remote-config-detailremoteConfigId: Remote config's id. You can get this information by using Remote Config List Tool.#### Remote Config Creation Tool
remote-config-createbody: 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
remote-config-updateremoteConfigId: 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.targetconditions: Targeting rules. Users who The user he satisfies all conditions in this array will see this rule's remote config value.keytype: 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.matchoperator: 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
remote-config-update-user-identifier-criteriaremoteConfigId: 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
remote-config-update-descriptionremoteConfigId: Remote config's id.body: Request body.description: Remote config's description.Add this entry to your claude_desktop_config.json:
{
"mcpServers": {
"hackle-mcp": {
"command": "npx",
"args": ["-y", "@hackle-io/hackle-mcp@latest"],
"env": {
"API_KEY": "YOUR_API_KEY"
}
}
}
}Restart Claude if running
To use the Hackle MCP Server, you will need an API key. To obtain your API key:
Important: Never share your API key or commit it to public repositories. Treat your API key as a sensitive credential.
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.