🔗 MCP API

Introduction

Use the CoinAPI Indexes MCP server to discover indexes, read current and historical values, query OHLC timeseries, and manage multi-asset weights.

Indexes API MCP

The CoinAPI Indexes API is available through a hosted Model Context Protocol (MCP) server. It exposes the Indexes API as self-describing tools that can be used from Cursor, Claude Desktop, or custom agent runtimes.

Why use MCP?

MCP layers self-describing JSON-Schema tools over the underlying HTTP API, so agent runtimes can discover available operations, validate arguments, and call the service without a custom integration layer.

With the Indexes MCP server you can:

  • Reuse the same X-CoinAPI-Key authentication you already use with CoinAPI.
  • Discover index identifiers, time periods, and exchange metadata from the tool schemas and live responses.
  • Query current values, historical snapshots, and OHLC timeseries without wiring raw REST endpoints by hand.
  • Access multi-asset weight tools from the same MCP endpoint.

Server endpoint

https://mcp.indexes.coinapi.io/mcp

Use your regular CoinAPI API key in the X-CoinAPI-Key header.

Only the /mcp endpoint is supported for this service.

What is available through MCP?

The Indexes server currently exposes 12 tools grouped into four areas:

AreaWhat you can do
Metadata discoveryList index identifiers, supported time periods, and exchange metadata.
Current and snapshot valuesGet one current index value or a full snapshot for all members of an index definition.
Historical analyticsQuery point-in-time snapshots, historical series with composition data, and OHLC timeseries.
Multi-asset index managementInspect stored weights and use administrative tools to update or delete them.

Typical workflows

Discover active indexes

  1. Call indexes_list to see the identifiers available in the system.
  2. Use an index definition such as IDX_REFRATE_FX with indexes_get_current_snapshot to discover members that currently return values.
  3. Call indexes_get_current for a single tracked index once you know the exact active index_id.

Build historical analytics

  1. Call periods_list to inspect supported candle granularities.
  2. Use indexes_get_history for point-by-point historical values with composition.
  3. Use indexes_get_timeseries for OHLC charting with value_open, value_high, value_low, and value_close.

Work with multi-asset indexes

  1. Call multiasset_list_weights to inspect currently stored weights across indexes.
  2. Use multiasset_get_weights for one specific multi-asset index.
  3. Use multiasset_update_weights or multiasset_delete_weights only in controlled administrative workflows.

Live-tested notes

  • indexes_list returns a very large flat list of objects containing id.
  • indexes_get_current returns a compact object with timestamp and value.
  • indexes_get_current_snapshot returns an array of { index_id, timestamp, value } rows for a definition such as IDX_REFRATE_FX.
  • indexes_get_history returns composition arrays in addition to timestamp and value.
  • indexes_get_timeseries returns OHLC-style fields prefixed with value_.
  • multiasset_list_weights and multiasset_get_weights return rows shaped like { indexId, assetId, weight }.
  • In practice, indexes_get_current_snapshot is a good way to discover members that currently have data before issuing single-index calls.

Start here

Service StatusGitHub SDK