CoinMarketCal
Crypto events calendar: dated, sourced and impact-scored events for 14,000+ coins.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"events": {
"url": "https://coinmarketcal.com/mcp"
}
}
}远程端点
https://coinmarketcal.com/mcpstreamable-http它能做什么
工具清单
工具(7)
🟢list_events(coins, categories, from, to, keyword, ...)
Returns a paginated list of upcoming and historical events within the date window available to the caller's plan. Default sort is `date asc` (soonest first). The `coins`, `categories`, and date filters compose with `AND`.
输入模式
{
"type": "object",
"properties": {
"coins": {
"type": "string",
"description": "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."
},
"categories": {
"type": "string",
"description": "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."
},
"from": {
"type": "string",
"description": "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."
},
"to": {
"type": "string",
"description": "Inclusive upper bound on `date`. Default = today + tier upcoming window (e.g. 7 days on Free, 90 days on Standard, full on Pro+)."
},
"keyword": {
"type": "string",
"description": "Free-text search across event title and description. Case-insensitive substring match."
},
"impactMin": {
"type": "number",
"minimum": 0,
"maximum": 10,
"description": "Lower bound on the precise impact score (0.0–10.0). Elite+ only; lower tiers receive 403."
},
"sortBy": {
"type": "string",
"enum": [
"date_asc",
"date_desc",
"created_desc",
"created_desc_and_updated_desc",
"impact_desc"
],
"description": "Sort order. Default `date_asc` (soonest first). `impact_desc` is Elite+ only; lower tiers receive 403."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Page size (1–100)."
},
"cursor": {
"type": "string",
"description": "Opaque pagination cursor returned in the previous response's `meta.cursor`."
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_event_cancellations(since, limit, cursor)
Returns removal records ordered by `cancelledAt`, then `id`. Available to every API V2 tier. Poll regularly and never leave more than 90 days between successful requests, even when webhooks are enabled.
输入模式
{
"type": "object",
"properties": {
"since": {
"type": "string",
"description": "Inclusive cancellation-time lower bound. Accepts RFC3339 or `YYYY-MM-DD`; defaults to 90 days ago."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Page size (1–100)."
},
"cursor": {
"type": "string",
"description": "Opaque pagination cursor returned in the previous response's `meta.cursor`."
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_event(id)
Returns the full event payload by id. Tier-gated fields follow the caller's plan. A recently removed event returns `410 Gone` with its `id` and `cancelledAt`. An unknown, temporarily unpublished, or out-of-window event returns `404`.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "The event id, as returned by `GET /v2/events`."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_categories
Returns every category in the editorial taxonomy with the count of upcoming events per category (tier-windowed). Standard+ only. Query parameters are ignored; the list is not paginated.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_coins(q, tracked, limit, cursor)
Returns a paginated list of coins ordered by `rank` ascending (top-ranked first). Pass the `tracked` filter only when you need to limit results by editorial coverage.
输入模式
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Free-text search across name + symbol. Case-insensitive substring match."
},
"tracked": {
"type": "boolean",
"description": "Filter by editorial coverage. Omit to return both tracked and untracked coins; set `true` for actively monitored coins only; set `false` for coins outside active coverage only."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 200,
"description": "Page size (1–200)."
},
"cursor": {
"type": "string",
"description": "Opaque pagination cursor."
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_coin(slug)
Returns the full coin payload by slug. 404 when the slug doesn't match any coin (tracked or otherwise).
输入模式
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"description": "Coin slug (e.g. `bitcoin`). Lowercase, URL-safe."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_usage
Returns the authenticated key's monthly usage counters. Does not consume quota beyond the cost of the HTTP call itself. Use this to backoff before hitting 429s or to drive alerts in your integration.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}社区
证据