coinstats-mcp
Documentation
CoinStats MCP Server
Hosted Model Context Protocol server for the CoinStats API. Lets AI agents (Claude, Cursor, Codex, ChatGPT — anything that speaks MCP) read and act on the same crypto data the CoinStats apps use, over a single OAuth-protected HTTPS URL.
There's no API key to copy and no env var to manage: each user authorises the agent against their own CoinStats account in the browser, and the agent gets a per-user token from then on.
Server URL
https://mcp.coinstats.app/mcpInstallation
Claude.ai / Claude Desktop
Settings → Connectors → Add custom connector. Paste the server URL and click Add:
https://mcp.coinstats.app/mcpA browser window opens at `coinstats.app/openapi/consent`. Sign in (or recognise your existing session), review the requested access, click Approve.
Cursor
Or add to `~/.cursor/mcp.json` manually:
{
"mcpServers": {
"coinstats": {
"url": "https://mcp.coinstats.app/mcp"
}
}
}Restart Cursor; on first call it opens a browser window for the OAuth flow.
Claude Code
claude mcp add coinstats --transport http https://mcp.coinstats.app/mcpClaude Code opens a browser to authorise. Verify with:
claude mcp listCodex
`codex mcp add` only registers the URL; it does not open a browser. Run `codex mcp login` separately:
codex mcp add coinstats --url https://mcp.coinstats.app/mcp
codex mcp login coinstatsAfter the login step `codex mcp list` should show `Auth: OAuth` for `coinstats`.
Other MCP clients
Any client that speaks the Streamable HTTP transport with OAuth 2.1 authorization will work. Point it at `https://mcp.coinstats.app/mcp` — Dynamic Client Registration (RFC 7591) is supported, so no pre-shared `client_id` is needed.
What you can do
After authorising, your agent can:
- Look up real-time prices, charts and market data for 100,000+ coins
- Read your CoinStats portfolio coins, P/L and performance over time
- Query wallet balances and transactions across 120+ blockchains
- Compare ticker pricing across 200+ exchanges
- Pull crypto news (latest, trending, filtered by source or topic)
Full tool catalog: https://coinstats.app/api-docs/mcp/tools.
Authentication
Discovery + OAuth flow follows the standard MCP / RFC pattern:
| Endpoint | Spec | Purpose |
|---|---|---|
| `GET /.well-known/oauth-protected-resource` | RFC 9728 | Points at the authorization server (`https://api.coin-stats.com`) |
| `GET /.well-known/oauth-authorization-server` | RFC 8414 | AS metadata (also mirrored on the MCP host so older clients can find it without the indirection) |
| `POST /v1/oauth/register` (on AS) | RFC 7591 | Dynamic Client Registration |
| `GET /v1/oauth/authorize` → consent UI | OAuth 2.1 §4.1 | User approves access |
| `POST /v1/oauth/token` (on AS) | OAuth 2.1 §4.1 | PKCE code exchange |
| `POST /v1/oauth/revoke` (on AS) | RFC 7009 | Per-client disconnect |
Token transport: `Authorization: Bearer `. Single `coinstats` scope today; granular scopes are on the roadmap.
Self-host / stdio fallback (developer mode)
If you want to run the MCP server yourself (no per-user OAuth, just a developer API key), the legacy stdio entry point is published on npm:
npx @coinstats/coinstats-mcpwith `COINSTATS_API_KEY` set in the env. Wire into a client like this:
{
"mcpServers": {
"coinstats": {
"command": "npx",
"args": ["-y", "@coinstats/coinstats-mcp"],
"env": { "COINSTATS_API_KEY": "" }
}
}
}Or via Docker:
{
"mcpServers": {
"coinstats": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "COINSTATS_API_KEY", "coinstats/coinstats-mcp"],
"env": { "COINSTATS_API_KEY": "" }
}
}
}This path is the right choice for headless / unattended integrations where there's no human to click "Approve". Get a key from the CoinStats API Dashboard.
Architecture
The hosted server is a stateless Cloudflare Worker (~225 KiB / ~41 KiB gzipped) that:
1. Exposes the RFC 9728 + RFC 8414 discovery endpoints.
2. Gates `POST /mcp` on a `Authorization: Bearer …` token.
3. Dispatches MCP JSON-RPC (`initialize` / `tools/list` / `tools/call` / `ping`) without session state.
4. Forwards each tool call to `https://openapiv1.coinstats.app` carrying the same bearer.
Source: `src/worker.ts`. Config: `wrangler.jsonc`.
Local development
The repo ships two entry points:
- `src/worker.ts` — Cloudflare Worker. Run with `wrangler dev` (port 8787 by default).
- `src/index.ts` — stdio server. Run with `node dist/index.js` after building, or via the published npm package.
# Build the stdio CLI
npm run build
# Run the Worker locally (requires `wrangler login` first)
npm run dev
# Deploy the Worker — needs CLOUDFLARE_ACCOUNT_ID exported in the env
# (the account ID isn't committed to wrangler.jsonc; pull it from the
# Cloudflare dashboard sidebar or the CI deploy job's secrets).
export CLOUDFLARE_ACCOUNT_ID=
npm run deploy
# Tail production logs
npm run tailFor local Worker development you can override env vars:
wrangler dev --var OAUTH_ISSUER:http://localhost:1337 \
--var COINSTATS_API_BASE_URL:http://localhost:9999Related
- CoinStats API docs — full REST surface, MCP setup guide, tool catalog
- API dashboard — for stdio-mode users to manage their developer API key
License
MIT — see LICENSE.
Frequently asked questions
What is coinstats-mcp?
coinstats-mcp is a Model Context Protocol (MCP) server listed in the TrackMCP directory.
How do I install coinstats-mcp?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is coinstats-mcp open source?
Yes — it is hosted on GitHub at https://github.com/coinstatshq/coinstats-mcp and has 9 stars.
Related MCP tools
Connect an MCP Client that only supports local (stdio) servers to a Remote MCP Server, with auth support: TypeScript-based implementation.
- Discover available MCP servers from our curated registry TypeScript-based implementation.
🍒 Cherry Studio is a desktop client that supports for multiple LLM providers. Built for the Model Context Protocol to enhance AI capabilities.
Enhanced ChatGPT Clone: Features Agents, MCP, DeepSeek, Anthropic, AWS, OpenAI, Responses API, Azure, Groq, o1, GPT-5, Mistral, OpenRouter, Vertex AI, Gemini...
FastGPT is a knowledge-based platform built on the LLMs, offers a comprehensive suite of out-of-the-box capabilities such as data processing, RAG retrieval, ...
Composio equips your AI agents & LLMs with 100+ high-quality integrations via function calling for the Model Context Protocol. Enhance AI assistants with powerf
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP