CryptoPriceTracker-MCP
Allows retrieval of current Bitcoin price in any supported currency via the CoinGecko API.
Allows retrieval of current Cardano price in any supported currency via the CoinGecko API.
Allows retrieval of current Chainlink price in any supported currency via the CoinGecko API.
Allows retrieval of current Ethereum price in any supported currency via the CoinGecko API.
Allows retrieval of current Polygon (MATIC) price in any supported currency via the CoinGecko API.
Allows retrieval of current Solana price in any supported currency via the CoinGecko API.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CryptoPriceTracker-MCPget the current price of Bitcoin in USD"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Crypto Price Tracker Server
A Model Context Protocol (MCP) server that enables LLM-based AI agents to access real-time cryptocurrency price information. Designed for seamless integration with LLMs and AI agents using the MCP protocol and the CoinGecko API.
Features
Exposes cryptocurrency price tracking tools for LLM agents via MCP:
get_crypto_price: Get current price of any cryptocurrency in any supported currency
Uses the CoinGecko API for accurate, real-time cryptocurrency data
Supports all major cryptocurrencies (Bitcoin, Ethereum, etc.)
Supports multiple fiat currencies (USD, EUR, INR, etc.) and crypto conversions
Asynchronous HTTP requests for non-blocking performance
Simple integration with Claude, MCP clients, or other LLM-based agents
Related MCP server: Crypto Tracker MCP Server
Quickstart
1. Install & Run
Run the MCP Crypto Price Tracker Server using uvx:
uvx --from git+https://github.com/deerajd/CryptoPriceTracker-MCP.git mcp-server2. Integrate with Your LLM Agent
Add the following to your tool configuration (for Claude, MCP clients, etc.):
{
"mcpServers": {
"CryptoPriceTracker": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/deerajd/CryptoPriceTracker-MCP.git",
"mcp-server"
]
}
}
}This configuration launches the MCP Crypto Price Tracker Server as a subprocess, exposing cryptocurrency price tools to your LLM agent.
3. Usage
From your LLM agent, you can call:
Get Cryptocurrency Price
get_crypto_price(cryptocurrency="bitcoin", currency="usd") # Bitcoin in USD
get_crypto_price(cryptocurrency="ethereum", currency="inr") # Ethereum in INR
get_crypto_price(cryptocurrency="cardano", currency="eur") # Cardano in EUR
get_crypto_price(cryptocurrency="solana") # Solana in INR (default)The server will respond with the current price as a float value. For example:
67234.56for Bitcoin in USD178543.78for Ethereum in INR
API Reference
get_crypto_price(cryptocurrency, currency="inr")
Parameters:
cryptocurrency(str): The CoinGecko ID of the cryptocurrency (e.g., "bitcoin", "ethereum", "cardano")currency(str, optional): The target currency code (default: "inr"). Supports fiat currencies like "usd", "eur", "inr" and crypto currencies
Returns: Current price as a float. Returns
0.0if price cannot be fetchedCoverage: Global cryptocurrency markets via CoinGecko API
Popular Cryptocurrency IDs:
bitcoin- Bitcoin (BTC)ethereum- Ethereum (ETH)cardano- Cardano (ADA)solana- Solana (SOL)polygon- Polygon (MATIC)chainlink- Chainlink (LINK)
Supported Currencies:
Fiat: usd, eur, inr, jpy, gbp, cad, aud, and many more
Crypto: btc, eth, and other major cryptocurrencies
Development
Requirements
Python 3.13+
httpxfor async HTTP requestsFastMCPfor MCP server implementationrequestsfor HTTP client supportCoinGecko API (free tier available)
Project Structure
CryptoPriceTracker/
├── src/
│ └── mcpserver/
│ ├── __init__.py
│ ├── __main__.py # Entry point
│ └── deployment.py # Main server implementation
├── pyproject.toml # Project configuration
└── README.md # This fileLicense
MIT License
Available Tools
1 toolget_crypto_priceA
Get the current price of a cryptocurrency in a specified currency using the CoinGecko API.
Args: cryptocurrency: The id of the cryptocurrency (e.g., 'bitcoin', 'ethereum'). currency: The fiat or crypto currency to convert to (e.g., 'usd', 'inr'). Returns: The current price as a float. Returns 0.0 if the price cannot be fetched.
Example: get_crypto_price(cryptocurrency="bitcoin", currency="usd") get_crypto_price(cryptocurrency="ethereum", currency="inr")
| Name | Required | Description | Default |
|---|---|---|---|
| currency | No | inr | |
| cryptocurrency | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose a meaningful behavioral trait: the failure mode ('Returns 0.0 if the price cannot be fetched'), which alerts the agent to silent failure. It omits other relevant behavior such as CoinGecko rate limits, auth/key requirements, and whether the value is cached or live.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core purpose is front-loaded in one sentence, and the Args/Returns/Example structure is standard and easy to scan. The two example calls are mildly redundant with the Args block but still earn their place by showing argument formation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read tool with an output schema present, the description covers purpose, both parameters, and the failure return value, which is sufficient to call it correctly. It could be more complete by noting rate limits or how to discover valid cryptocurrency ids.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, and it does: 'cryptocurrency' is defined as the CoinGecko id with concrete examples ('bitcoin', 'ethereum'), and 'currency' as the fiat or crypto target ('usd', 'inr'). The schema-declared default of 'inr' is not restated, but both parameters are otherwise well explained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Get the current price of a cryptocurrency in a specified currency') and names the data source (CoinGecko API). No siblings exist to disambiguate against, and the scope of the operation is unambiguous from the first sentence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the examples (bitcoin/usd, ethereum/inr) and the required/optional split, but there is no explicit statement of when to use this tool, when not to, or what alternatives exist (e.g., historical prices). Adequate but with an obvious gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.1.0- First observed
get_crypto_price
TDQS
Scored across 1 tool
There is only one tool, so there is no possibility of confusion or misselection between tools. Its purpose is singular and clearly stated.
The sole tool name get_crypto_price follows a clear and predictable verb_noun snake_case convention. With only one tool, there is no inconsistency to penalize.
A single tool is borderline thin for a server named CryptoPriceTracker-MCP. It can fetch a current price, but the scope suggests more functionality could reasonably be expected.
The surface only supports fetching a single current price. Obvious adjacent operations such as historical prices, price ranges, supported currency lists, or market data are missing, creating significant gaps for a crypto price tracking domain.
Maintenance
Related MCP Connectors
Live and historical cryptocurrency prices via CoinGecko free API.
Live crypto prices, conversion, gas tracker, portfolio tools, and calculators for AI agents.
CoinGecko MCP — wraps CoinGecko free API (no auth required)
Live USD crypto spot prices by ticker (BTC, ETH, SOL, …) for AI agents. x402 pay-per-call.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables interaction with the CoinGecko Pro API to access cryptocurrency data including price history and market metrics through both MCP and OpenAI function calling.9MIT
- AlicenseNot gradedqualityDmaintenanceConnects AI agents to real-time cryptocurrency market data from CoinGecko API, enabling price lookups, coin details, market rankings, search, and trending crypto queries through natural language.7 npmApache 2.0
- FlicenseBqualityDmaintenanceA Model Context Protocol server that provides real-time cryptocurrency price fetching capabilities using the CoinGecko API. It enables LLMs to retrieve and process the latest price for any coin by its name or symbol.2-
- FlicenseNot gradedqualityDmaintenanceProvides live and historical cryptocurrency prices, trending coins, and global market data via CoinGecko API, enabling AI agents to fetch real-time and historical crypto information.-