Allows an AI client to access App Store keyword observations, generate or translate listing metadata, and apply changes to editable drafts.
Also known as blaze-apps/appdrift, appdrift-mcp
- Stars
- 0
- Tools
- 10
- Downloads, 30 days
- —
- Latest version
- 0.2.1
- Last commit
- Oct 1, 2026
- License
- MIT
What is AppDrift MCP?
AppDrift allows an AI client to access App Store keyword observations, generate or translate listing metadata, and apply changes to editable drafts. It exposes 10 tools, such as keyword_difficulty, list_apps, app_keywords.
Summary generated from the project's README
About AppDrift MCP server
Managing App Store Optimization directly from your AI client is what AppDrift enables for mobile developers and marketers. By connecting to the AppDrift REST API via a local stdio client, users can access keyword observations, app lists, and prioritized action plans within environments like Claude Desktop or Cursor. The server requires Node.js 22 or later and a valid API key from an eligible paid plan to function.
Users can perform research using tools like app_keywords to see observed ranks or app_opportunities to find candidates for review. The server also handles content creation through generate_metadata and translate_metadata, which can produce or localize listing text across multiple locales. Once you have reviewed the proposed changes, the apply_optimization tool allows you to save accepted titles, subtitles, or descriptions to an editable draft within the AppDrift platform. Note that these tools do not publish directly to Apple or Google stores.
Written from the project's README. Every use case is checked against a quote from it.
How to install AppDrift MCP
Formats verified 10 Nov 2026Install AppDrift MCP in Claude Code
$ claude mcp add --env APPDRIFT_API_KEY=<YOUR_APPDRIFT_API_KEY> appdrift -- npx -y appdrift-mcpInstall AppDrift MCP in Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"appdrift": {
"command": "npx",
"args": [
"-y",
"appdrift-mcp"
],
"env": {
"APPDRIFT_API_KEY": "<YOUR_APPDRIFT_API_KEY>"
}
}
}
}Install AppDrift MCP in VS Code
.vscode/mcp.json
{
"servers": {
"appdrift": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"appdrift-mcp"
],
"env": {
"APPDRIFT_API_KEY": "<YOUR_APPDRIFT_API_KEY>"
}
}
}
}Install AppDrift MCP in Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"appdrift": {
"command": "npx",
"args": [
"-y",
"appdrift-mcp"
],
"env": {
"APPDRIFT_API_KEY": "<YOUR_APPDRIFT_API_KEY>"
}
}
}
}Install AppDrift MCP in Codex
~/.codex/config.toml
[mcp_servers.appdrift] command = "npx" args = ["-y", "appdrift-mcp"] [mcp_servers.appdrift.env] APPDRIFT_API_KEY = "<YOUR_APPDRIFT_API_KEY>"
Install AppDrift MCP in Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"appdrift": {
"command": "npx",
"args": [
"-y",
"appdrift-mcp"
],
"env": {
"APPDRIFT_API_KEY": "<YOUR_APPDRIFT_API_KEY>"
}
}
}
}AppDrift MCP tools 10
Detected from the READMEkeyword_difficultylist_appsapp_keywordsapp_opportunitiesaction_planaccount_statusapply_optimizationoptimize_for_keywordgenerate_metadatatranslate_metadata
| keyword_difficulty | — | |
| list_apps | — | |
| app_keywords | — | |
| app_opportunities | — | |
| action_plan | — | |
| account_status | — | |
| apply_optimization | — | |
| optimize_for_keyword | — | |
| generate_metadata | — | |
| translate_metadata | — |
Configuration
APPDRIFT_API_KEYRequiredSecretAPI key from the AppDrift Developers dashboard. API access requires a paid plan.
| Name | Description | |
|---|---|---|
| APPDRIFT_API_KEY | API key from the AppDrift Developers dashboard. API access requires a paid plan. | RequiredSecret |
Automated checks
Ran Nov 14, 2026Full report →Passed our automated checks. That is not a security audit: read the code and give the server the narrowest access it needs. How checks work
- Source repository linked and reachableblaze-apps/appdrift is public and reachablegithub.com/blaze-apps/appdrift ↗Pass
- Package names this repository as its sourceNot checked
- Build provenance (Sigstore attestation)No build attestation published for this releaseNot checked
- Open source license (OSI)MITspdx.org/licenses/MIT.html ↗Pass
- Commit or release in the last yearLast commit or release 2026-10-01github.com/blaze-apps/appdrift ↗Pass
- OpenSSF ScorecardNot checked
- Package name not close to a popular packageNo popular package one edit away from appdrift-mcpPass
- No critical advisory in the package or its dependencies99 resolved dependencies checked; no critical advisoryosv.dev ↗Pass
- No hidden instructions to the model10 tool descriptions and the README read; no override phrases, credential paths or hidden charactersPass
- Destructive tools are labelledNo tool named like delete, drop or execPass
- Remote endpoint answers the MCP handshakeNot checked
README
View on GitHubAppDrift MCP Server
Read your AppDrift keyword observations, account apps and action plan from Claude Desktop, Cursor or another MCP client. Generate or translate listing copy, review the result, and apply accepted fields to an editable AppDrift draft. These tools do not publish to Apple or Google.
This package is a small local stdio client for the AppDrift REST API. It requires Node.js 22 or later and an AppDrift API key. API access is available on eligible paid plans. Eligible first subscriptions have a seven-day trial with a card; the trial adds no tokens. Current plans and token allowances.
Install
Add AppDrift to your MCP client's configuration (Claude Desktop, Cursor or another MCP client):
{
"mcpServers": {
"appdrift": {
"command": "npx",
"args": ["-y", "appdrift-mcp"],
"env": { "APPDRIFT_API_KEY": "ad_live_your_key_here" }
}
}
}
- Create a key in the Developers dashboard.
- Replace the placeholder in your client's local MCP configuration. Keep the key out of shared configuration and source control.
- Restart the client. Ask it to call
account_status, thenlist_apps. These calls consume no AI tokens. - Choose the returned app ID before asking for its tracked keywords. Review proposed text before allowing a paid action or a saved-draft change.
On the first run, npx downloads the package and its dependencies. If the client cannot find npx, use its absolute local executable path.
Without the npm registry: AppDrift also hosts the same wrapper as a versioned archive. Use https://appdrift.co/downloads/appdrift-mcp-0.2.0.tgz in args in place of appdrift-mcp, and check it against its SHA-256 checksum. The archive includes the complete wrapper source and MIT license. server.json prepares the official MCP registry entry, which is not published yet.
Tools and costs
No additional AI tokens: API access still requires an eligible account plan.
| Tool | Result |
|---|---|
keyword_difficulty |
Legacy competitor-based difficulty/popularity heuristics. These are not measured keyword demand or ranking probability. Store collection can fail or be incomplete. |
list_apps |
Apps connected to the account, including the ID used by app-scoped tools. |
app_keywords |
Tracked keywords and latest observed ranks for the selected app. |
app_opportunities |
Tracked keywords ranked 11–30, ordered by the legacy difficulty heuristic; candidates to review, not predicted gains. |
action_plan |
The account's prioritized ASO actions. |
account_status |
Plan and remaining AI-token balance. |
apply_optimization |
Changes saved content: applies accepted title, subtitle, keywords or short_description fields to the app's editable draft. Review and store publishing remain separate. |
AI tools: AppDrift charges for successful processing. Check the returned token charge and account balance. The client never retries these actions automatically.
| Tool | Cost | Result |
|---|---|---|
optimize_for_keyword |
3 tokens | Proposed title/subtitle/keyword changes and rationale. |
generate_metadata |
1 per short field; 2 per long field | Listing fields generated from the app brief. |
translate_metadata |
Per language: 1 normally; 3 for description; 5 for full_description |
One field translated into 1–15 distinct locales. |
Paid operations and apply_optimization are advertised as writes to MCP clients. A timeout or lost response does not prove that the server stopped processing or charged nothing. Check the account and draft before retrying. The client sends your API key and supplied listing text to the configured AppDrift API; AI requests may use the account's configured AI provider.
The legacy keyword_difficulty tool is separate from the experimental Keyword analyzer. Its scores do not predict rank, traffic or download gains.
Configuration
| Environment variable | Required | Default |
|---|---|---|
APPDRIFT_API_KEY |
Yes | Create it in the Developers dashboard. |
APPDRIFT_API_BASE |
No | AppDrift production API. Change only to an endpoint you trust with the key and listing text. HTTPS required; HTTP permitted only for loopback development. |
APPDRIFT_REQUEST_TIMEOUT_MS |
No | 90000; permitted range 1000–120000. |
The client rejects redirects, bounds response size, validates tool inputs before requests and returns authored error messages instead of provider errors or stack traces. These safeguards do not replace backend authorization or review of an agent's proposed actions.
Troubleshooting
- No tools: confirm Node 22+,
npxavailability and a nonemptyAPPDRIFT_API_KEY. MCP protocol messages use stdout; startup errors use stderr. - Invalid or revoked key: create or select an active key in Developers and update the local config.
- Insufficient tokens: inspect
account_statusand current token options. A trial itself adds no tokens. - No editable draft: create the app's draft in AppDrift, then apply only the fields you reviewed.
- No store results: try again later. A missing score is not zero competition.
- Timeout after a paid action: inspect balance and saved state before requesting the action again.
Development
Within a source checkout, run npm ci, npm test and npm run verify:package. Integration checks launch the actual stdio process against local fixture APIs; they do not use production credentials or spend tokens. Package verification packs only the declared runtime files, installs the archive through a local HTTP URL into a clean directory and runs the integration suite against the installed executable.
License
MIT. See LICENSE.
AppDrift MCP questions
How do I add AppDrift MCP to Claude Code?
Run claude mcp add --env APPDRIFT_API_KEY=<YOUR_APPDRIFT_API_KEY> appdrift -- npx -y appdrift-mcp in your terminal. Add --scope user to make it available in every project.
How do I add AppDrift MCP to Cursor?
Open ~/.cursor/mcp.json and add the server under mcpServers, using the Cursor config shown in the install section above.
What tools does AppDrift MCP provide?
It exposes 10 tools, including keyword_difficulty, list_apps, app_keywords, app_opportunities, action_plan.
Does this server publish directly to the App Store or Google Play?
No, these tools do not publish to Apple or Google; they only prepare and apply changes to editable drafts within AppDrift.
How much do AI tools cost?
AI tools use tokens based on the specific action, such as 3 tokens for optimizing for a keyword or varying amounts for generating or translating metadata.
What are the system requirements for installation?
The server requires Node.js version 22 or later and a valid AppDrift API key.