CoinPaprika

com.coinpaprikaPublished by coinpaprika.comOfficial publisherv1.4.0Updated Oct 24, 2026

Real-time crypto market data: prices, tickers, exchanges, OHLCV candles, and metadata.

VerifiedStreamable HTTPWeb executableFinanceData & Analytics

Overview

AI-generated overview

CoinPaprika MCP gives an assistant live cryptocurrency market data: prices, tickers, exchanges, OHLCV candles, contracts and project metadata.

What you can do
  • Look up coins, project details, events, tags and people profiles
  • Get current prices, market caps, 24h changes, top-coin rankings and global market stats
  • Fetch today's and latest daily OHLC candles, plus historical snapshots on paid plans
  • Browse exchanges, their stats and trading pairs, and see where a coin is listed or traded
  • Resolve names or symbols to canonical ids, search across entities, and convert amounts between currencies
  • Map token contract addresses to coins and get token prices by contract
When to use it
Useful when you want an assistant to answer crypto market questions, compare exchanges, track prices or value holdings without building your own API integration. The free tier covers most read-only lookups with no key.
Requirements
Remote endpoint at mcp.coinpaprika.com (streamable HTTP, SSE or JSON-RPC), or the npm package @coinpaprika/mcp run locally with Node.js. Internet access is required. No API key for the free tier; paid-tier tools need the COINPAPRIKA_API_KEY environment variable.
Before you install
All listed tools are read-only, but the server sends your queries to CoinPaprika's service. Paid-tier tools such as historical data and mappings fail without a paid plan, and plans start at $99/month. Free tier is limited to 20,000 calls per month. submitFeedback sends your report to the maintainers. Do not treat returned prices as investment advice.

Installation

In SourceWeft

  1. Open CoinPaprika in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.coinpaprika%2Fcoinpaprika/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "coinpaprika": {
      "type": "http",
      "url": "https://mcp.coinpaprika.com/streamable-http"
    }
  }
}

README

CoinPaprika MCP Server

[smithery badge]

A Model Context Protocol (MCP) server that provides on-demand access to CoinPaprika's cryptocurrency market data API. Built specifically for AI assistants like Claude to programmatically fetch real-time prices, tickers, exchange data, OHLCV candles, and more with zero configuration.

TL;DR

bash
# Install globallynpm install -g @coinpaprika/mcp
# Start the servercoinpaprika-mcp
# Or run directly without installationnpx @coinpaprika/mcp@latest

CoinPaprika MCP connects Claude to live crypto market data for 12,000+ cryptocurrencies. The free tier needs no API key. Installation | Configuration | API Reference

Prefer zero setup? Use the hosted MCP server at mcp.coinpaprika.com: no installation, no API key to start, 31 tools (the 30 here plus submitFeedback). See Hosted server for transport endpoints.

What Can You Build?

  • Market Dashboards: Real-time market overview with global stats, top coins, and volume trends
  • Coin Analysis Tools: Deep-dive into any cryptocurrency: price, team, events, exchanges, and markets
  • Price Trackers: Track prices across multiple quote currencies with historical OHLCV data
  • Exchange Comparisons: Compare trading pairs and volumes across 350+ exchanges
  • Portfolio Valuations: Convert an amount between currencies ('0.5 BTC in USD') and track price changes over time
  • Contract Lookup: Find tokens by their smart contract address across multiple platforms

Installation

Installing via Smithery

To install CoinPaprika MCP for Claude Desktop automatically via Smithery:

bash
npx -y smithery mcp add coinpaprika/coinpaprika

Manual Installation

bash
# Install globally (recommended for regular use)npm install -g @coinpaprika/mcp
# Start the servercoinpaprika-mcp

Claude Desktop Integration

Add the following to your Claude Desktop configuration file:

macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

json
{  "mcpServers": {    "coinpaprika": {      "command": "npx",      "args": ["@coinpaprika/mcp@latest"]    }  }}

With API Key (for paid-tier features)

json
{  "mcpServers": {    "coinpaprika": {      "command": "npx",      "args": ["@coinpaprika/mcp@latest"],      "env": {        "COINPAPRIKA_API_KEY": "your-api-key-here"      }    }  }}

Claude Code Integration

bash
# Add as MCP server in Claude Codeclaude mcp add coinpaprika -- npx @coinpaprika/mcp@latest
# With API keyCOINPAPRIKA_API_KEY=your-key claude mcp add coinpaprika -- npx @coinpaprika/mcp@latest

Hosted server (no installation)

If you prefer zero setup, point any MCP-compatible client directly at the hosted server at mcp.coinpaprika.com. The landing page provides setup instructions and documentation. The following transport endpoints are available:

TransportEndpointUse Case
Streamable HTTPhttps://mcp.coinpaprika.com/streamable-httpRecommended for most clients
SSEhttps://mcp.coinpaprika.com/sseLegacy SSE transport
JSON-RPChttps://mcp.coinpaprika.com/json-rpcDirect JSON-RPC

Note: These are MCP protocol endpoints. They won't display anything in a browser. Visit mcp.coinpaprika.com for the landing page.

json
{  "mcpServers": {    "coinpaprika": {      "type": "streamable-http",      "url": "https://mcp.coinpaprika.com/streamable-http"    }  }}

Available Tools (30)

Discovery & System

ToolDescription
getCapabilitiesServer capabilities, workflow patterns, validation rules, and best practices. Start here.
statusServer status and configuration
getGlobalGlobal market overview: total market cap, 24h volume, BTC dominance ('how is the market doing')

Coins

ToolDescriptionRequired Parameters
getCoinsList all coins (id, name, symbol, rank); no prices, use getTickers for pricesnone
getCoinByIdCoin project details (description, team, links); no price, use getTickersByIdcoinId
getCoinEventsUpcoming events for a coincoinId
getCoinExchangesExchanges listing a coincoinId
getCoinMarketsMarkets/exchanges trading a coin ('where to buy X', 'X price on Binance')coinId

Tickers & Prices

ToolDescriptionRequired Parameters
getTickersCurrent prices + market caps for top coins by market cap ('top 5 coins', market snapshot)none
getTickersByIdCurrent price, market cap & 24h change of one coin ('BTC price', 'how much is ETH')coinId
getCoinOHLCVLatestLatest full-day OHLC candle (not the live price)coinId
getCoinOHLCVTodayToday's in-progress OHLC candlecoinId
priceConverterConvert an amount between currencies ('0.5 BTC in USD')baseCurrencyId, quoteCurrencyId

Exchanges

ToolDescriptionRequired Parameters
getExchangesList all exchangesnone
getExchangeByIDExchange detailsexchangeId
getExchangeMarketsMarkets on a specific exchangeexchangeId

Tags & People

ToolDescriptionRequired Parameters
getTagsList all tags/categoriesnone
getTagByIdTag detailstagId
getPeopleByIdPerson/team member detailspersonId

Contracts

ToolDescriptionRequired Parameters
getPlatformsList contract platformsnone
getContractsContracts on a platformplatformId
getTickerByContractToken price by contract address (on-chain/DeFi tokens)platformId, contractAddress

Search & Resolution

ToolDescriptionRequired Parameters
searchSearch coins/exchanges/people/tags by name; use FIRST to get an idq
resolveIdResolve a name/symbol to canonical id; call FIRST before price toolstype, query

Paid-Tier Tools

These tools require a paid CoinPaprika API plan. Without an API key, they return guidance directing you to upgrade.

ToolPlan RequiredDescription
getCoinOHLCVHistoricalStarter+Historical OHLCV candle data
getTickersHistoricalByIdStarter+Historical ticker snapshots
getHistoricalTickerByContractStarter+Historical ticker by contract
getChangelogIDsStarter+Changelog of coin ID changes
keyInfoStarter+Verify API key details
getMappingsBusinessCross-platform ID mappings

API Key Configuration

The free tier provides access to most tools without any API key. For paid-tier features (historical data, mappings, etc.), set the COINPAPRIKA_API_KEY environment variable:

bash
# Set via environment variableexport COINPAPRIKA_API_KEY=your-api-key-herecoinpaprika-mcp
# Or pass inlineCOINPAPRIKA_API_KEY=your-api-key-here npx @coinpaprika/mcp@latest

Get an API key at coinpaprika.com/api/pricing.

Example Usage

javascript
// Start by getting capabilities for workflow guidance:const caps = await getCapabilities();
// Get global market overview:const global = await getGlobal();
// Find a coin by name:const results = await search({ q: "ethereum" });
// Get detailed coin info:const bitcoin = await getCoinById({ coinId: "btc-bitcoin" });
// Get current ticker with USD and BTC quotes:const ticker = await getTickersById({ coinId: "eth-ethereum", quotes: "USD,BTC" });
// Get OHLCV data for today:const ohlcv = await getCoinOHLCVToday({ coinId: "btc-bitcoin" });
// Convert 1 BTC to USD:const conversion = await priceConverter({  baseCurrencyId: "btc-bitcoin",  quoteCurrencyId: "usd-us-dollars",  amount: 1});
// List top 10 exchanges:const exchanges = await getExchanges({ limit: 10 });
// Resolve fuzzy query to exact coin ID:const resolved = await resolveId({ type: "coin", query: "cardano" });

Sample Prompts for Claude

  • "What's the current price of Bitcoin and Ethereum? Show me 24h change."
  • "Give me a comprehensive analysis of Cardano: price, team, events, and top exchanges."
  • "Compare the top 5 crypto exchanges by trading volume."
  • "Convert 10 ETH to USD and show the current exchange rate."
  • "Find all coins tagged as 'defi' and show their market caps."
  • "What exchanges list Solana and what trading pairs are available?"
  • "Show me the OHLCV data for Bitcoin today."
  • "Search for all coins related to 'layer-2' and rank them by market cap."
  • "Look up the team behind Ethereum. Who are the key people?"
  • "Get the ticker for USDT by its Ethereum contract address."

Rate Limits & Performance

  • Free Tier Limits: 20,000 calls per month, no API key needed. Paid plans start at $99/month for 400,000 calls: https://coinpaprika.com/api/pricing/
  • Response Time: 100-500ms for most endpoints
  • Data Coverage: 12,000+ cryptocurrencies, 350+ exchanges
  • Error Handling: Structured errors with codes, suggestions, and retry guidance
  • Quota Info: Running this package yourself, every response carries a meta.quota block with the monthly free-tier allowance and the number of calls this server process has made since it started. That count is process-local, not your account balance. The hosted server at mcp.coinpaprika.com returns no meta block at all, so do not write client code that depends on one

Troubleshooting

Common Issues:

  • Rate limiting: If receiving CP429_RATE_LIMIT errors, back off and retry. The free-tier quota is monthly, not daily, so a sustained 429 means the monthly allowance is spent
  • Invalid coin ID: Coin IDs use symbol-name format (e.g., btc-bitcoin, not bitcoin or BTC). Use search or resolveId to find correct IDs
  • Paid-tier errors: CP402_INSUFFICIENT_PLAN or CP403_FORBIDDEN mean the endpoint requires a paid plan. Set COINPAPRIKA_API_KEY environment variable
  • Timeout errors: Large data requests may take longer, so reduce the limit parameter
  • Network errors: Check network connectivity, the service requires internet access

Development

bash
# Clone the repositorygit clone https://github.com/coinpaprika/coinpaprika-mcp.gitcd coinpaprika-mcp
# Install dependenciesnpm install
# Run in developmentnpm start
# Build for productionnpm run build

Changelog

See CHANGELOG.md for detailed release notes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Additional Resources

Source: README.md at commit c4c7783

Tools

27

getCoins

List all available coins with id, name, symbol and rank. Use to discover coins or map a name to an id. Does NOT include prices; for prices use getTickers or getTickersById. Read-only; limit caps the number of coins returned. No API key required.

Parameterslimitrationalerequired

getCoinById

Get descriptive project information about a coin: description, links, team and tags. Use for 'tell me about Uniswap', 'what is this project'. Does NOT include price; for price and market cap use getTickersById. Read-only; coinId is a canonical id (resolve with resolveId). No API key required.

ParameterscoinIdrequiredrationalerequired

getCoinEvents

Get the timeline of events for a coin (launches, partnerships, hard forks, conference talks) with dates and descriptions. Use for 'what is happening with X', 'upcoming events for Ethereum', 'X roadmap events'. For prices use getTickersById. Read-only; coinId is a canonical id, limit caps results. No API key required.

ParameterslimitcoinIdrequiredrationalerequired

getCoinExchanges

List the exchanges that LIST a specific coin (venue names only). Use for 'which exchanges list X', 'is X on Coinbase', 'where is X listed'. For where to BUY with per-market price and volume use getCoinMarkets; for the live price use getTickersById. Read-only; coinId is a canonical id, limit caps results. No API key required.

ParameterslimitcoinIdrequiredrationalerequired

getCoinMarkets

Get the specific markets and trading pairs where a coin trades, with per-market price and 24h volume. Use for 'where can I buy X', 'X price on Binance', 'best market for X'. For just the list of exchange names use getCoinExchanges. Read-only; coinId is a canonical id, quotes sets quote currencies, limit caps results. No API key required.

ParameterslimitcoinIdrequiredquotesrationalerequired

getCoinOHLCVLatest

Get the latest full-day OHLC candle (open, high, low, close and volume) for a coin. Use for 'yesterday's candle for BTC'. For the live spot price use getTickersById. Read-only; coinId must be a canonical id (resolve a bare symbol with resolveId first), quote defaults to usd. No API key required.

ParametersquotecoinIdrequiredrationalerequired

getCoinOHLCVToday

Get today's in-progress OHLC candle for a coin. Use for 'today's high and low for ETH'. For the current spot price use getTickersById; for yesterday's full candle use getCoinOHLCVLatest, and for older prices getTickersHistoricalById. Read-only; coinId is a canonical id (resolve with resolveId). No API key required.

ParametersquotecoinIdrequiredrationalerequired

getTickers

Get current prices, market caps and 24h changes for the top cryptocurrencies ranked by market cap. Use for 'top 5 coins', 'top crypto today', 'biggest cryptocurrencies', or a market snapshot. For one specific coin use getTickersById. Read-only; quotes sets the quote currencies (default USD), limit caps results. No API key required.

Parameterslimitquotesrationalerequired

getTickersById

Get the current price, market cap, 24h change and volume of one cryptocurrency in USD or another quote currency. Use for 'what is the price of X', 'how much is Bitcoin worth', 'BTC to USD', 'ETH price now'. For past prices use getTickersHistoricalById. Read-only; coinId is a canonical id (resolve a bare symbol with resolveId first), quotes sets the quote currency (default USD). No API key required.

ParameterscoinIdrequiredquotesrationalerequired

getTickersHistoricalById

Get a coin's price, market cap and volume at past times as point-in-time snapshots (not OHLC candles). Use for 'price of BTC last Tuesday', 'ETH market cap on 2024-01-01'. For today's and yesterday's OHLC candles use getCoinOHLCVToday and getCoinOHLCVLatest; for the current price use getTickersById. Read-only. Params: coinId (required) canonical id like 'btc-bitcoin' (resolve via resolveId); start (required) and end (optional, default now) accept 'yyyy-mm-dd' or ISO 8601; interval (optional, default '5m'); quote (optional, default 'usd'); limit (optional, default 50, max 250) caps points. Requires a Starter+ plan (COINPAPRIKA_API_KEY). Free tier on this hosted server: daily intervals up to a year back and hourly intervals up to 24 hours back; anything else returns a structured CP402_PAID_ENDPOINT stub.

ParametersendlimitquotestartrequiredcoinIdrequiredintervalrationalerequired

getExchanges

List exchanges tracked by CoinPaprika as a list ranked by rank, each with id, name, trust score, active market count and 24h volume. Use for 'top exchanges by volume', 'biggest crypto exchanges', or to find an exchangeId before calling getExchangeByID. For one exchange's full stats use getExchangeByID; for its trading pairs use getExchangeMarkets. Read-only. Params: quotes (optional, default 'usd') is a comma-separated list of quote currencies for the volume figures, for example 'usd,btc'; limit (optional, default 50, max 250) caps how many exchanges return. No API key required.

Parameterslimitquotesrationalerequired

getExchangeByID

Get details for a specific exchange: 24h volume, market count, trust score, links and fiat support. Use for 'tell me about Binance', 'Coinbase exchange stats', 'is X a trustworthy exchange'. For the pairs traded there use getExchangeMarkets; find the exchange id first with search or getExchanges. Read-only; exchangeId is an exchange id such as binance. No API key required.

ParametersquotesrationalerequiredexchangeIdrequired

getExchangeMarkets

List the trading pairs (markets) on one exchange as a list, each with the pair, base and quote coin ids, latest price, 24h volume and category. Use for 'what pairs trade on Binance', 'markets on Kraken', 'BTC pairs on Coinbase'. For exchange-level stats such as trust score use getExchangeByID; find the exchangeId first with getExchanges. Read-only. Params: exchangeId (required) is an exchange id such as 'binance'; quotes (optional, default 'usd') is a comma-separated list of quote currencies for the figures, e.g. 'usd,btc'; limit (optional, default 50, max 250) caps how many markets return. No API key required.

ParameterslimitquotesrationalerequiredexchangeIdrequired

getPeopleById

Get the profile of one person in crypto by id: name, description or bio, teams_count, positions held, and linked projects plus social and code accounts. Use for 'who is Vitalik Buterin', 'background on Charlie Lee', 'projects tied to this founder'. Find the personId first with search or resolveId using type 'people'; this tool needs the exact id, not a name. Read-only. Params: personId (required) is a canonical person id such as 'vitalik-buterin' or 'satoshi-nakamoto'; an unknown id returns not found. No API key required.

ParameterspersonIdrequiredrationalerequired

getTags

List all CoinPaprika tags (categories such as 'defi', 'stablecoin', 'memecoin', 'ai') used to group coins, returned as a list with each tag's id, name, coin_counter and ico_counter. Use for 'what crypto categories exist', 'list market sectors', or to find a tagId before calling getTagById. For the coins inside one tag use getTagById. Read-only. Params: additionalFields (optional, default none) is a comma-separated list of extra sections per tag, valid values 'coins' and 'icos' (example 'coins,icos'; omit for just summaries); limit (optional, default 50, max 250) caps how many tags return. No API key required.

ParameterslimitrationalerequiredadditionalFields

getTagById

Get details for one CoinPaprika tag (a category such as 'defi' or 'stablecoin'): its id, name, description, coin_counter, ico_counter, and optionally the coins and ICOs grouped under it. Use for 'what coins are in the defi tag', 'show the stablecoin category', 'tokens tagged ai'. To list every tag or find a tagId first use getTags. Read-only. Params: tagId (required) is a tag id from getTags such as 'defi'; additionalFields (optional, default none) is a comma-separated list of extra sections, valid values 'coins' and 'icos' (example 'coins,icos'). An unknown tagId returns an error. No API key required.

ParameterstagIdrequiredrationalerequiredadditionalFields

getPlatforms

List the smart-contract platforms (blockchains such as ethereum, bnb, polygon) for which CoinPaprika indexes token contracts. Use for 'which chains are supported for contract lookups', 'list contract platforms', or to pick a platform id before calling getContracts. Read-only; limit caps results. No API key required.

Parameterslimitrationalerequired

getContracts

List the token contract addresses tracked on one platform as a list, mapping each contract to its CoinPaprika coin id. Use for 'contracts on ethereum', 'what tokens does BSC have', or to map a contract address to a coin id. Find the platformId first with getPlatforms; for one contract's live price use getTickerByContract, and for its history use getHistoricalTickerByContract. Read-only. Params: platformId (required) is a platform id such as 'eth-ethereum' or 'bsc-binance-smart-chain'; limit (optional, default 50, max 250) caps how many contracts return. An unknown platformId returns an error. No API key required.

ParameterslimitrationalerequiredplatformIdrequired

getTickerByContract

Get the current price and market data of a token by its contract address (for on-chain and DeFi tokens). Use when you have a contract address (0x...) rather than a name. For history use getHistoricalTickerByContract. Read-only; platformId is the chain (e.g. eth-ethereum) and contractAddress the token address. No API key required.

ParametersrationalerequiredplatformIdrequiredcontractAddressrequired

getHistoricalTickerByContract

Get a token's price and market history by its contract address, as a time series. Use for 'token price on 2024-01-01 by address', 'hourly history for a contract'. For its current price use getTickerByContract; by coin id use getTickersHistoricalById. Read-only. Params: platformId (required) chain id like 'eth-ethereum'; contractAddress (required) token address; start (required) and end (optional, default now) accept 'yyyy-mm-dd' or ISO 8601; interval (optional, default '5m'); quote (optional, default 'usd'); limit (optional, default 50, max 250) caps points. Requires a Starter+ plan (COINPAPRIKA_API_KEY). Free tier on this hosted server: daily intervals up to a year back and hourly intervals up to 24 hours back; anything else returns a structured CP402_PAID_ENDPOINT stub.

ParametersendlimitquotestartrequiredintervalrationalerequiredplatformIdrequiredcontractAddressrequired

status

Get the CoinPaprika MCP server's status and configuration (uptime, mode, enabled features). Use when asked 'is the server up', 'what mode am I in', 'server status'. This reports the MCP server itself, not the crypto market; for market health use getGlobal. Read-only; takes no parameters and needs no API key.

Parametersrationalerequired

getGlobal

Get a global crypto market overview: total market cap, total 24h volume, Bitcoin dominance, and market-wide 24h change. Use for 'how is the crypto market doing', 'total market cap', 'BTC dominance'. For a single coin's price use getTickersById. Read-only; takes no parameters and needs no API key.

Parametersrationalerequired

resolveId

Resolve a fuzzy coin, exchange, person or tag name or symbol to a ranked list of candidate CoinPaprika ids, best first (take the top one). Call FIRST when you have a bare name or symbol but need an id, since ids are not derivable, then pass the id to getTickersById for price. Returns candidates with id, name, symbol, type and rank; an empty list means no match. Read-only. Params: type (required; one of 'coin', 'exchange', 'people', 'tags') sets entity kind; query (required) is the fuzzy text; limit (optional, default 50, max 250) caps candidates. Answers 'id for AAVE', 'resolve Vitalik'. No API key required.

Parameterstyperequiredlimitqueryrequiredrationalerequired

priceConverter

Convert an amount from one crypto or fiat to another at the current rate, e.g. 'how much is 0.5 BTC in USD', 'convert 100 USDC to EUR'. For a plain coin price without an amount, use getTickersById. Read-only; baseCurrencyId and quoteCurrencyId are canonical ids and amount is the quantity to convert. No API key required.

ParametersamountrationalerequiredbaseCurrencyIdrequiredquoteCurrencyIdrequired

getCapabilities

Get the server's capabilities, supported workflow patterns, validation rules and recommended tool sequences. Use FIRST to onboard as an agent, or when asked 'what can this server do', 'how should I chain these tools', 'what are the parameter rules'. This describes the MCP server itself, not crypto data.

Parametersrationalerequired

submitFeedback

Report a problem or gap back to the CoinPaprika MCP maintainers: call it when you got stuck, a response was unexpected, information you needed was missing, or a tool did not behave as documented. Use when the user says 'this is wrong', 'report this', 'that did not work'. Low friction, partial feedback is welcome, and every submission is read.

Parametersgoalrequiredexpectedobservedseverityblocked_atattempted_tools

Version history

1
  1. v1.4.0LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Coinpaprika integrations