Crypto PriceSAFE
A Model Context Protocol (MCP) server that provides real-time cryptocurrency analysis via CoinCap's API. Enables Claude and other MCP clients to fetch crypto prices, analyze market trends, and track historical data.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
[](https://smithery.ai/server/@truss44/mcp-crypto-price) [](https://www.npmjs.com/package/mcp-crypto-price)
A Model Context Protocol (MCP) server that provides comprehensive cryptocurrency analysis using the CoinCap API. This server offers real-time price data, market analysis, and historical trends through an easy-to-use interface. Supports both STDIO and Streamable HTTP transports.
Requirements
- Node.js 22.14+
- CoinCap API key via
COINCAP_API_KEY
What's New
- BREAKING: CoinCap v2 API removed. Now uses v3 API exclusively. A
COINCAP_API_KEYis required (free tier available at pro.coincap.io/dashboard) - Streamable HTTP transport added (while keeping STDIO compatibility)
- Smithery CLI scripts to build and run the HTTP server
- 6 new tools:
assets-search,market-global,assets-compare,analysis-candlestick,price-convert,assets-info - Hierarchical tool naming: All tools organized into category-prefixed names (
price-*,market-*,assets-*,analysis-*) - Output schemas: All tools now declare
outputSchemawithstructuredContentfor type-safe responses - MCP best practices:
isErrorflag on validation errors, server description, andasset://{symbol}resource template
Usage
Add this configuration to your Claude Desktop config file:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"mcp-crypto-price": {
"command": "npx",
"args": ["-y", "mcp-crypto-price"],
"env": {
"COINCAP_API_KEY": "YOUR_API_KEY4ebb8c2322f0OBSERVED · 2026-10-08Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add mcp-crypto-price --env COINCAP_API_KEY=${COINCAP_API_KEY} -- npx -y [email protected]{
"mcpServers": {
"mcp-crypto-price": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"COINCAP_API_KEY": "${COINCAP_API_KEY}"
}
}
}
}Exposed tools (20)
20 read · 0 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
analysis-candlestick | read | Get OHLCV candlestick data for a cryptocurrency. Useful for charting and technical analysis. |
analysis-historical | read | Get historical price analysis with customizable timeframe |
analysis-technical | read | Get the latest technical indicators for a cryptocurrency including SMA, EMA, RSI, MACD, and VWAP |
analyze-crypto | read | Generate a comprehensive analysis of a cryptocurrency covering price, market, and historical trends |
assets-compare | read | Compare 2-5 cryptocurrencies side-by-side including price, 24h change, volume, market cap, and rank. Pass symbols as a comma-separated list (e.g. |
assets-info | read | Get detailed metadata for a cryptocurrency including ID, rank, supply, max supply, VWAP, market cap, and 24h volume. |
assets-search | read | Search for cryptocurrencies by name, symbol, or partial match. Returns multiple matching assets with their ID, name, symbol, rank, and current price. |
assets-top | read | Get top cryptocurrencies ranked by market cap |
compare-cryptocurrencies | read | Compare 2-5 cryptocurrencies side-by-side covering price, market cap, volume, and 24h performance |
crypto-conversion | read | Convert a cryptocurrency amount to a fiat currency with real-time rates |
crypto-screener | read | Search for cryptocurrencies matching a query and screen the results for the best opportunities |
exchange-analysis | read | Analyze trading activity for a cryptocurrency across exchanges, including volume distribution and top markets |
market-analysis | read | Get detailed market analysis including top exchanges and volume distribution |
market-exchanges | read | Get top cryptocurrency exchanges ranked by 24h volume. Optionally pass an exchangeId (e.g. |
market-global | read | Get a global overview of the cryptocurrency market including total market capitalization, 24-hour trading volume, Bitcoin dominance percentage, and the number of active cryptocurrencies. |
market-overview | read | Get a comprehensive overview of the cryptocurrency market including global metrics, top assets, and top exchanges |
market-rates | read | Get USD-based conversion rates for fiat currencies and cryptocurrencies. Optionally pass a slug (e.g. |
price-convert | read | Convert a cryptocurrency amount to any fiat currency (e.g. USD, EUR, JPY). Uses real-time exchange rates for accurate conversions. |
price-get | read | Get current price and 24h stats for a cryptocurrency |
technical-analysis | read | Get a full technical analysis of a cryptocurrency including indicators, candlestick patterns, and historical trends |
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (1 observation(s))
- Network
- declared (3 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (13)
.prettierignore
.releaserc.json
mkdir -p ~/.ssh
echo "$SSH_SIGNING_KEY" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
ssh-keygen -y -f ~/.ssh/id_ed25519 > ~/.ssh/id_ed25519.pub
git config user.signingkey ~/.ssh/id_ed25519.pub
readFileSync(resolve(dir, '../../package.json'), 'utf-8')
import type { CryptoAsset, Market } from '../../types/index.js';vi.mock('../../services/coincap.js', () => ({const { searchAsset } = await import('../../services/coincap.js');vi.mock('../../services/coincap.js', () => ({@modelcontextprotocol/node, @modelcontextprotocol/server, zod, @commitlint/cli, @commitlint/config-conventional, @eslint/js, @semantic-release/changelog, @semantic-release/exec
Gates applied: no_behavioural_pass.
4ebb8c2322f0full audit observations/trust-audit/mcp-server/truss44__crypto-price.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 4ebb8c2322f0 | SAFE | B | 89 | first audit |
Questions
What is the Crypto Price MCP server?
A Model Context Protocol (MCP) server that provides real-time cryptocurrency analysis via CoinCap's API. Enables Claude and other MCP clients to fetch crypto prices, analyze market trends, and track historical data.
What tools does Crypto Price expose?
20 in total: 20 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is Crypto Price safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.
What credentials does Crypto Price need?
It reads COINCAP_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How current is this page?
The grade is for one exact copy of the source (4ebb8c2322f0), read on 2026-10-08. The repository is watched and re-audited when it changes.