Analyzes app reviews, metadata, and keyword rankings from the Apple App Store, offering features like sentiment analysis, semantic topic search, and competitive intelligence.
Analyzes app reviews, metadata, and keyword rankings from the Google Play Store, offering features like sentiment analysis, semantic topic search, and competitive intelligence.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AppDataLayer MCP ServerCompare review sentiment for Spotify and Apple Music"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
appdatalayer-mcp
Open-source TypeScript SDK for the AppDataLayer MCP Server — the App Intelligence Query Engine powered by the Model Context Protocol.
Analyze 1B+ app reviews across Google Play and the Apple App Store. Semantic topic search, sentiment analysis, keyword rankings, competitive analysis, and time-series forecasting — all through a single typed API.
Installation
npm install appdatalayer-mcpQuick Start
As a TypeScript/JavaScript SDK
import { AppDataLayerClient } from "appdatalayer-mcp";
const client = new AppDataLayerClient({ apiKey: "sk_live_..." });
// Get app metadata
const app = await client.getAppOverview("com.instagram.android");
console.log(app.data?.title, app.data?.score);
// Analyze review sentiment
const reviews = await client.analyzeReviews({
app_id: "com.spotify.music",
dimensions: ["sentiment", "topic"],
days: 30,
});
// Semantic topic search
const topics = await client.searchTopics("crashes and bugs");
// Compare apps head-to-head
const comparison = await client.compareApps({
app_ids: ["com.spotify.music", "com.apple.music"],
});
// Forecast review volume
const forecast = await client.forecastMetric({
series: [100, 120, 115, 130, 128, 145, 142, 160, 155, 170],
horizon: 7,
});
await client.disconnect();As an MCP Server for LLM Agents
Use AppDataLayer directly in Claude Desktop, Cursor, Windsurf, or any MCP-compatible AI agent:
import { generateMcpConfig } from "appdatalayer-mcp";
const config = generateMcpConfig("sk_live_...");
console.log(JSON.stringify(config, null, 2));Paste the output into your agent's config file:
Client | Config File |
Claude Desktop |
|
Cursor |
|
Windsurf |
|
VS Code |
|
Generated config:
{
"mcpServers": {
"appdatalayer": {
"url": "https://mcp.appdatalayer.com/mcp",
"headers": {
"APPDATALAYER_API_KEY": "sk_live_..."
}
}
}
}Available Tools
The SDK provides typed methods for all 22 MCP tools:
Data Querying
Method | Description |
| App metadata: title, developer, score, installs, rating histogram |
| Aggregate reviews by day/week/month/sentiment/country/score/topic |
| Track app ranking for a search keyword over time |
| Latest top charts (free, paid, grossing, new) |
| Apps similar/related to a given app |
| Autocomplete suggestions from app stores |
| Platform totals: apps tracked, reviews count |
| Actual review text filtered by topic IDs |
| Head-to-head comparison of 2-5 apps |
| Track topic volume and sentiment changes over time |
Topic Intelligence
Method | Description |
| Convert topic IDs → human-readable labels |
| Semantic search over 1M+ review topics |
| Find apps at the intersection of two topic sets |
Forecasting
Method | Description |
| Predict future values using Google TimesFM 2.5 |
Scraping Operations
Method | Description |
| Overview of all scraping jobs by type |
| List and filter individual scrape jobs |
| Get failed/dead jobs with failure reasons |
| Get overdue jobs |
Webhooks
Method | Description |
| List all webhooks for the authenticated user |
| Create a webhook alert rule |
| Delete a webhook |
| Enable/disable a webhook |
Raw Access
Method | Description |
| Call any MCP tool by name |
| List all available tools |
| List all available resources |
| Read a resource (e.g. table schemas) |
API Reference
AppDataLayerClient
const client = new AppDataLayerClient({
apiKey: string; // Required — your API key
endpoint?: string; // Default: "https://mcp.appdatalayer.com/mcp"
timeout?: number; // Default: 30000ms
});Return Type
All methods return ToolCallResult<T>:
interface ToolCallResult<T> {
content: { type: string; text: string }[]; // Raw MCP content
isError?: boolean; // True if the tool returned an error
data: T | null; // Parsed JSON data (null if error)
}generateMcpConfig
import { generateMcpConfig } from "appdatalayer-mcp";
const config = generateMcpConfig(
apiKey: string,
endpoint?: string // Default: "https://mcp.appdatalayer.com/mcp"
);Configuration
Env Variable | Description |
| Your AppDataLayer API key |
Examples
See the examples/ directory:
basic-usage.ts— All major SDK featuresgenerate-config.ts— Generate LLM agent config
Data Coverage
Metric | Value |
Reviews | 1B+ |
Apps | 250K+ |
Topics | 1M+ clusters |
Countries | 44 |
Stores | Google Play, Apple App Store |
License
MIT — AppDataLayer
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.