DevDome Analytics
Lưu lượng truy cập website, báo cáo bot, khách truy cập thời gian thực và tình trạng sức khỏe trang web cho các trang DevDome của bạn
Máy chủ MCP được lưu trữ
npx add-mcp 'https://analytics.devdome.com/mcp'Cài vào Claude Code, Codex, Cursor và nhiều công cụ khác
Tài liệu
1URL, no install
10tools, from stats to site health
9clients documented below
0data stored on our side
The server is a stateless proxy over your account at https://analytics.devdome.com/mcp. Every answer comes straight from your live data, scoped to your API key. The same data is available as a plain REST API.
01
Get your API key
One key per account, created under Account → API. It is shown exactly once - copy it right away. Preferred transport is the Authorization: Bearer header; clients that cannot send headers append ?key=YOUR_API_KEY to the URL instead (treat that URL as a secret).
02
Connect your client
Pick yours - each card is the complete setup.
Claude Code
Terminal
One command in your terminal:
claude mcp add devdome https://analytics.devdome.com/mcp \
-t http -H "Authorization: Bearer YOUR_API_KEY"
Claude Desktop
Config file
Settings, Developer, Edit Config. Add this to claude_desktop_config.json and restart the app:
{
"mcpServers": {
"devdome": {
"url": "https://analytics.devdome.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Claude.ai (web)
In the browser
Settings, Connectors, Add custom connector. The dialog cannot send headers, so the key rides in the URL:
https://analytics.devdome.com/mcp?key=YOUR_API_KEY
Cursor
Config file
Settings, MCP, Add new global MCP server (or.cursor/mcp.json in a project):
{
"mcpServers": {
"devdome": {
"url": "https://analytics.devdome.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Windsurf
Config file
Settings, Cascade, MCP Servers (or ~/.codeium/windsurf/mcp_config.json - note serverUrl):
{
"mcpServers": {
"devdome": {
"serverUrl": "https://analytics.devdome.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
VS Code (Copilot)
Config file
Command palette, "MCP: Add Server", HTTP - or.vscode/mcp.json:
{
"servers": {
"devdome": {
"type": "http",
"url": "https://analytics.devdome.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
ChatGPT
In the browser
Settings, Connectors, Advanced, Developer mode, then Create connector. ChatGPT cannot send custom headers, so the key rides in the URL:
https://analytics.devdome.com/mcp?key=YOUR_API_KEY
Zed
Config file
settings.json, context_servers:
{
"context_servers": {
"devdome": {
"source": "custom",
"url": "https://analytics.devdome.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Any other MCP client
Terminal
Plain streamable HTTP, no OAuth, no session. Prove it works with curl:
curl https://analytics.devdome.com/mcp \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
03
What it can do
Ten tools, each mapped 1:1 to a dashboard report. Time arguments default to the full history your plan retains.
| Tool | Arguments | What it answers |
|---|---|---|
list_sites | none | The sites on your account with verification status. |
add_site | domain | Add a website. Returns the tracking snippet; stays pending until verified. |
verify_site | domain | Verify a pending website (installed snippet or DNS TXT record). |
get_stats | site, days? | from?/to? | Headline KPIs vs the previous window. |
get_timeseries | site, days? | from?/to? | Daily traffic series in the site timezone. |
get_breakdown | site, dimension, days?, limit? | Top-N by pages, referrers, countries, devices, browsers, os, dates, keywords, products or redirects. |
get_bot_report | site, kind?, days? | Which bots hit the site and why they were flagged; kind "threats" = detection-category totals. |
get_realtime | site | Visitors active in the last 5 minutes with their current page. |
get_visitors | site, days?, limit? | Recent individual visits with step-by-step paths. |
get_site_health | site | Uptime, response times, TLS/DNS checks and incidents. |
Things to ask
Once connected, these all work out of the box:
- “How was my traffic this week compared to last week?”
- “Which pages got the most visitors this month, and which of them are broken?”
- “Which bots hit example.com yesterday, and how much of my traffic is bots?”
- “Where do my visitors come from - top referrers and countries for the last 90 days?”
- “Is anyone on my site right now? What are they looking at?”
- “Add newsite.com to my DevDome account and give me the snippet to install.”
- “Is my site healthy? Any downtime incidents this month?”
- “Write a weekly traffic report I can paste into Slack.”
Troubleshooting
The four things that ever go wrong, and their fixes.
- 401 invalid API key: the key was mistyped, revoked or rotated. Copy a fresh one from Account, API.
- 429 rate limit: 60 requests per minute per key. Assistants that fan out many tool calls can hit this; it resets within a minute.
- "not your site": the site argument must be a domain on THIS account, in punycode for international names (münchen.de = xn--mnchen-3ya.de). Ask the assistant to run list_sites first.
- Client cannot connect: the server answers POST with JSON-RPC only - no OAuth, no session. Verify with the curl example above, then check your client uses the HTTP transport.