CoinGecko MCP server
Endpoint: https://mcp.api.coingecko.com · Authentication: No auth
CoinGecko provides real-time crypto market data, onchain analytics, and rich metadata for more than 15,000 coins.
How do I authenticate?
Add the endpoint directly in your client. The catalog records no authentication requirement; no OAuth sign-in or API key is configured in this setup. The live server may change.
Authentication and connection guideConnection specification
- Remote endpoint
https://mcp.api.coingecko.com- Live-validated endpoint
https://mcp.api.coingecko.com/mcp- Browser-verified endpoint
https://mcp.api.coingecko.com/sse- Browser access
- Direct browser connection verified
- Declared MCP transport
- Streamable HTTP
- Live-validated MCP transport
- Streamable HTTP and legacy SSE — Observed by the latest catalog validation
- Declared authentication
- No authentication
- Detected authentication
- No authentication detected or retained from publisher evidence
- Protocol lifecycle
- Stateful MCP · 2025-11-25
- Category
- Finance
Product documentation · Official listing documentation
More Finance MCP servers · Browse all MCP servers · Test this endpoint in the MCP Playground
Connect it
Browser-verified endpoint: https://mcp.api.coingecko.com/sse · Legacy HTTP+SSE. No authentication is required by the catalog listing.
Agent prompt for Claude Code or Codex
Add the CoinGecko MCP server to my MCP client configuration and verify that it works. What it is: CoinGecko provides real-time crypto market data, onchain analytics, and rich metadata for more than 15,000 coins. Server URL: https://mcp.api.coingecko.com/sse Transport: Legacy HTTP+SSE (remote MCP server, no local install). Authentication: none. The server accepts connections without credentials. Codex CLI setup unavailable: Codex CLI supports Streamable HTTP remote servers, not legacy SSE endpoints. Do not invent a configuration for this client. Tools (2, as last observed by mcptest): execute, search_docs. Reference: https://mcptest.io/servers/coingecko/ Steps: 1. Work out which MCP client I use (Claude Code, Codex, Cursor, VS Code or another) and add the server under the name "coingecko" in that client's MCP configuration, user scope unless I ask otherwise. Claude Code: claude mcp add --transport sse --scope user 'coingecko' 'https://mcp.api.coingecko.com/sse' Other clients: use the setup for that client on the reference page. 2. Never write a credential value into a file that could be committed; reference an environment variable or the client's secret store, and ask me for any value you need. 3. Verify: connect to the server and call tools/list. Confirm the tools above are listed, and report any sign-in step I still have to complete.
Claude Code setup
Run in a terminal. This user-scoped entry is available across projects.
claude mcp add --transport sse --scope user 'coingecko' 'https://mcp.api.coingecko.com/sse'Codex CLI setup
Review the endpoint in the publisher documentation before editing Codex configuration.
Codex CLI supports Streamable HTTP remote servers, not legacy SSE endpoints. Use a publisher-documented Streamable HTTP endpoint if one is available.
Cursor setup
Add to .cursor/mcp.json for this project, or ~/.cursor/mcp.json for all projects.
{
"mcpServers": {
"coingecko": {
"url": "https://mcp.api.coingecko.com/sse"
}
}
}- This URL is a legacy SSE endpoint; Cursor determines the remote transport from the endpoint.
VS Code setup
Add to .vscode/mcp.json, or run “MCP: Open User Configuration” for a private user-level entry.
{
"servers": {
"coingecko": {
"type": "sse",
"url": "https://mcp.api.coingecko.com/sse"
}
}
}Claude setup
Add the endpoint above in Claude:
- Customize > Connectors > Add custom connector
- Team/Enterprise: Organization settings > Connectors > Add > Custom > Web
Claude Desktop setup
Add the endpoint above in Claude Desktop:
- Remote: Customize > Connectors (same as claude.ai)
- Local: Settings > Developer > Edit Config, or Settings > Extensions for .mcpb files
~/Library/Application Support/Claude/claude_desktop_config.json(macOS) or%APPDATA%\Claude\claude_desktop_config.json(Windows), local servers only
ChatGPT setup
Add the endpoint above in ChatGPT:
- ChatGPT web: Plugins > Add custom MCP server, then configure authentication and accept the risk warning
Windsurf setup
Add the endpoint above in Windsurf:
~/.config/devin/mcp_config.json(%APPDATA%\devin\mcp_config.jsonon Windows),serverUrlorurl- Cascade panel > ... > MCPs > Open MCP config file
Gemini CLI setup
Add the endpoint above in Gemini CLI:
gemini mcp add --transport http <name> <url>~/.gemini/settings.json(user) or.gemini/settings.json(project),mcpServers
MCP SDK setup
Add the endpoint above in MCP SDK:
- Programmatic:
new Client(...).connect(new StreamableHTTPClientTransport(url))
Client compatibility
| Client | Status | Why |
|---|---|---|
| Claude Code | Partial | Legacy SSE is deprecated: Claude Code can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| Codex | Partial | Codex needs a bridge for legacy SSE servers. Only stdio and Streamable HTTP are documented; legacy SSE servers need a stdio bridge such as the community mcp-remote package. Codex's documentation does not state support for servers without authentication. Legacy SSE is deprecated: Codex CLI can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| Cursor | Partial | Legacy SSE is deprecated: Cursor can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| VS Code | Partial | Legacy SSE is deprecated: VS Code/Copilot can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| Claude | Partial | Legacy SSE is deprecated: Claude can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| Claude Desktop | Partial | Legacy SSE is deprecated: Claude Desktop can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| ChatGPT | Partial | Legacy SSE is deprecated: ChatGPT can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. Stateful routing needs operational care: ChatGPT can preserve MCP sessions, but the deployment must route a session consistently and retain its state. |
| Windsurf | Partial | Windsurf's documentation does not state support for servers without authentication. Legacy SSE is deprecated: Windsurf (Devin Desktop, Cascade) can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| Gemini CLI | Partial | Legacy SSE is deprecated: Gemini CLI can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
| MCP SDK | Partial | Legacy SSE is deprecated: Generic MCP SDK can use legacy HTTP+SSE today, but Streamable HTTP is the durable remote transport. |
Computed from this server's validated transport, protocol and authentication against documented client support. Checks the catalog has not observed are not counted.
Latest validation evidence
- Validation status
- Online when last tested
- Validation checked at
- Oct 26, 2026 at 2:08 PM
- Validation detail
- Negotiated stateful MCP 2025-11-25 at https://mcp.api.coingecko.com/mcp; detected transport both; authentication none
Tool inventory
What the catalog validator observed on at https://mcp.api.coingecko.com/mcp without credentials. The live server may have changed since; connect in the Playground for the current list.
Tools provided by CoinGecko 2
Some details were sanitized for public display.
executeNo outputSchemaRuns JavaScript code to interact with the Coingecko API. You are a skilled TypeScript programmer writing code to interface with the service. Define an async function named "run" that takes a single parameter of an initialized SDK client and it will be run. For example: ``` async function run(client) { const price = await client.simple.price.get({ vs_currencies: 'usd', ids: 'bitcoin' }); } ``` You will be returned anything that your function returns, plus the results of any console.log statements. Do not add try-catch blocks for single API calls. The tool will handle errors for you. Do not add
Input
code: string, intent?: stringcode: stringrequiredCode to execute.
intent?: stringoptionalTask you are trying to perform. Used for improving the service.
search_docsNo outputSchemaSearch SDK documentation to find methods, parameters, and usage examples for interacting with the API. Use this before writing code when you need to discover the right approach.
Input
detail?: string, language: string, query: stringdetail?: stringoptionalThe amount of detail to return.
language: stringrequiredThe language for the SDK to search for.
query: stringrequiredThe query to search for.