About CoinMarketCal
CoinMarketCal is a crypto events calendar for developers and AI agents, with dated, sourced events and impact scores. Its data is available through both a REST API and an MCP server.
Key features
- 01Browse crypto events
- 02Event dates and estimated-date indicators
- 03Affected coins and editorial categories
- 04Impact scores and source links
- 05Read event details and coin lists
Use cases
- 01Find upcoming events for a coin
- 02Inspect the details and source of an event
- 03Use event data in an AI agent
- 04Retrieve event listings page by page
MCP support
The MCP server exposes the API's read endpoints as tools, including event listings, event details, and coin lists. It uses the same API key and quota as the REST API.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://coinmarketcal.com/mcpclaude mcp add --transport http com-coinmarketcal-events https://coinmarketcal.com/mcp{"mcpServers":{"com-coinmarketcal-events":{"type":"http","url":"https://coinmarketcal.com/mcp"}}}Open in Cursor{"servers":{"com-coinmarketcal-events":{"type":"http","url":"https://coinmarketcal.com/mcp"}}}Open in VS Code{"mcpServers":{"com-coinmarketcal-events":{"type":"http","url":"https://coinmarketcal.com/mcp"}}}{"mcpServers":{"com-coinmarketcal-events":{"serverUrl":"https://coinmarketcal.com/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
https://coinmarketcal.com/mcpAuth requiredTools
7| Parameter | Type | Required | Description |
|---|---|---|---|
| to | string | No | Inclusive upper bound on `date`. Default = today + tier upcoming window (e.g. 7 days on Free, 90 days on Standard, full on Pro+). |
| from | string | No | Inclusive lower bound on `date`. Default = today. Free and Standard clamp past values to today; Pro clamps them to the previous 30 days; Elite and Enterprise can query the complete public catalog history since 2017. |
| coins | string | No | Comma-separated coin **slugs** (e.g. `bitcoin,ethereum`). Tickers are accepted but **strongly discouraged**; symbols collide across coins (e.g. `UNI` resolves to several different projects). Use `GET /v2/coins` to look up canonical slugs. |
| limit | integer | No | Page size (1–100). |
| cursor | string | No | Opaque pagination cursor returned in the previous response's `meta.cursor`. |
| sortBy | enum | No | Sort order. Default `date_asc` (soonest first). `impact_desc` is Elite+ only; lower tiers receive 403.date_asc | date_desc | created_desc | created_desc_and_updated_desc | impact_desc |
| keyword | string | No | Free-text search across event title and description. Case-insensitive substring match. |
| impactMin | number | No | Lower bound on the precise impact score (0.0–10.0). Elite+ only; lower tiers receive 403. |
| categories | string | No | Comma-separated category ids. Case-insensitive. Standard+ only; Free requests using this filter return 403. Use `GET /v2/categories` to look up the canonical id list. |
Details
From the project READMECoinMarketCal API
Official examples for the CoinMarketCal API and MCP server.
CoinMarketCal is a crypto events calendar. Each event has a date, the coins it affects, an editorial category, an impact score and the source it comes from. The same data is available through a REST API and an MCP server for AI agents.
- Get an API key: coinmarketcal.com/developer (free tier available)
- Documentation: coinmarketcal.com/developer/docs
- OpenAPI spec: openapi.json
- MCP server:
https://coinmarketcal.com/mcp(setup guide, MCP Registry:com.coinmarketcal/events)
Quick start
Every request sends your key in the x-api-key header.
curl -s "https://api.coinmarketcal.com/v2/events?coins=ethereum&limit=5" \
-H "x-api-key: $COINMARKETCAL_API_KEY"
Each event looks like this (fields depend on your plan):
{
"id": "48291",
"slug": "ethereum-pectra-upgrade",
"title": "Ethereum Pectra Upgrade",
"date": "2026-05-06T12:00:00Z",
"dateType": "date",
"isEstimated": false,
"displayedDate": "06 May 2026",
"categories": ["Release"],
"coins": [{ "slug": "ethereum", "symbol": "eth", "name": "Ethereum" }],
"impact": 8.5
}
When isEstimated is true, date is a deadline or the end of a window, not an exact day. Show displayedDate to your users (for example Q2 2026 or By 30 May 2026).
Use it from an AI agent (MCP)
The MCP server exposes the read endpoints of the API as tools (list_events, get_event, list_coins, …). Event results include the url of the event page on coinmarketcal.com. It uses the same key and quota as the REST API.
| Client | Configuration |
|---|---|
| Claude Code | mcp/claude-code.sh |
Cursor, VS Code and clients using mcpServers | mcp/mcp.json |
| Codex CLI | mcp/codex.toml |
| Claude Desktop and clients without remote HTTP support | mcp/mcp-remote.json |
Replace YOUR_API_KEY with your key.
Examples
| Example | What it does |
|---|---|
examples/curl.sh | List upcoming events, read one event, look up a coin |
examples/python/upcoming_events.py | Fetch every upcoming event for a coin, page by page |
examples/javascript/upcoming-events.mjs | Same with Node.js 18+ (fetch) |
examples/webhooks/ | Verify the CMC-Signature header of a webhook delivery (Node.js, Python, PHP) |
Data and license
The code in this repository is released under the MIT license. The CoinMarketCal data you access with it is governed by the API Terms of Service.
Support
Questions about the API: [email protected].
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.