mcp-crypto-price 4.0.1 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -15
- package/dist/http.js +13 -13
- package/dist/index.js +13 -13
- package/dist/{mcp-crypto-price-4.0.1.tgz → mcp-crypto-price-5.0.0.tgz} +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -17,8 +17,8 @@ A Model Context Protocol (MCP) server that provides comprehensive cryptocurrency
|
|
|
17
17
|
- **BREAKING**: CoinCap v2 API removed. Now uses v3 API exclusively. A `COINCAP_API_KEY` is required (free tier available at [pro.coincap.io/dashboard](https://pro.coincap.io/dashboard))
|
|
18
18
|
- Streamable HTTP transport added (while keeping STDIO compatibility)
|
|
19
19
|
- Smithery CLI scripts to build and run the HTTP server
|
|
20
|
-
- **6 new tools**: `assets
|
|
21
|
-
- **
|
|
20
|
+
- **6 new tools**: `assets-search`, `market-global`, `assets-compare`, `analysis-candlestick`, `price-convert`, `assets-info`
|
|
21
|
+
- **Hierarchical tool naming**: All tools organized into category-prefixed names (`price-*`, `market-*`, `assets-*`, `analysis-*`)
|
|
22
22
|
- **Output schemas**: All tools now declare `outputSchema` with `structuredContent` for type-safe responses
|
|
23
23
|
- **MCP best practices**: `isError` flag on validation errors, server description, and `asset://{symbol}` resource template
|
|
24
24
|
|
|
@@ -136,7 +136,7 @@ Launch Claude Desktop to start using the crypto analysis tools.
|
|
|
136
136
|
|
|
137
137
|
## Tools
|
|
138
138
|
|
|
139
|
-
#### price
|
|
139
|
+
#### price-get
|
|
140
140
|
|
|
141
141
|
Gets current price and 24h stats for any cryptocurrency, including:
|
|
142
142
|
- Current price in USD
|
|
@@ -145,14 +145,14 @@ Gets current price and 24h stats for any cryptocurrency, including:
|
|
|
145
145
|
- Market cap
|
|
146
146
|
- Market rank
|
|
147
147
|
|
|
148
|
-
#### price
|
|
148
|
+
#### price-convert
|
|
149
149
|
|
|
150
150
|
Converts a cryptocurrency amount into any fiat currency:
|
|
151
151
|
- Uses real-time price data and USD-based exchange rates
|
|
152
152
|
- Parameters: `symbol` (e.g. `BTC`), `amount` (default 1), `currency` (default `usd`)
|
|
153
153
|
- Example: 2.5 BTC in EUR
|
|
154
154
|
|
|
155
|
-
#### market
|
|
155
|
+
#### market-analysis
|
|
156
156
|
|
|
157
157
|
Provides detailed market analysis including:
|
|
158
158
|
- Top 5 exchanges by volume
|
|
@@ -160,7 +160,7 @@ Provides detailed market analysis including:
|
|
|
160
160
|
- Volume distribution analysis
|
|
161
161
|
- VWAP (Volume Weighted Average Price)
|
|
162
162
|
|
|
163
|
-
#### market
|
|
163
|
+
#### market-global
|
|
164
164
|
|
|
165
165
|
Provides an overview of the entire cryptocurrency market:
|
|
166
166
|
- Total market capitalization across all assets
|
|
@@ -169,14 +169,14 @@ Provides an overview of the entire cryptocurrency market:
|
|
|
169
169
|
- Bitcoin dominance percentage
|
|
170
170
|
- Top gainers and losers
|
|
171
171
|
|
|
172
|
-
#### market
|
|
172
|
+
#### market-rates
|
|
173
173
|
|
|
174
174
|
Returns USD-based conversion rates for fiat currencies and cryptocurrencies:
|
|
175
175
|
- All fiat currency rates (USD base)
|
|
176
176
|
- Top 10 cryptocurrency rates
|
|
177
177
|
- Optional `slug` parameter (e.g. `euro`, `bitcoin`) for a single rate lookup
|
|
178
178
|
|
|
179
|
-
#### market
|
|
179
|
+
#### market-exchanges
|
|
180
180
|
|
|
181
181
|
Lists top cryptocurrency exchanges ranked by 24h volume:
|
|
182
182
|
- Exchange name, rank, and 24h volume in USD
|
|
@@ -184,7 +184,7 @@ Lists top cryptocurrency exchanges ranked by 24h volume:
|
|
|
184
184
|
- Optional `exchangeId` parameter (e.g. `binance`) for single exchange details
|
|
185
185
|
- Optional `limit` parameter (1–50, default 10)
|
|
186
186
|
|
|
187
|
-
#### assets
|
|
187
|
+
#### assets-top
|
|
188
188
|
|
|
189
189
|
Lists top cryptocurrencies ranked by market cap, including:
|
|
190
190
|
- Current price in USD
|
|
@@ -192,14 +192,14 @@ Lists top cryptocurrencies ranked by market cap, including:
|
|
|
192
192
|
- Market cap and rank
|
|
193
193
|
- Configurable result count (1–50, default 10)
|
|
194
194
|
|
|
195
|
-
#### assets
|
|
195
|
+
#### assets-search
|
|
196
196
|
|
|
197
197
|
Searches for cryptocurrencies by name or symbol with fuzzy matching:
|
|
198
198
|
- Returns matching assets with symbol, name, price, and rank
|
|
199
199
|
- Configurable result count (1–50, default 10)
|
|
200
200
|
- Example: search "bit" returns Bitcoin, Bitcoin Cash, BitTorrent, etc.
|
|
201
201
|
|
|
202
|
-
#### assets
|
|
202
|
+
#### assets-info
|
|
203
203
|
|
|
204
204
|
Returns detailed metadata for a single cryptocurrency:
|
|
205
205
|
- ID, rank, symbol, and name
|
|
@@ -207,14 +207,14 @@ Returns detailed metadata for a single cryptocurrency:
|
|
|
207
207
|
- Circulating supply and max supply
|
|
208
208
|
- VWAP (24h)
|
|
209
209
|
|
|
210
|
-
#### assets
|
|
210
|
+
#### assets-compare
|
|
211
211
|
|
|
212
212
|
Compares 2–5 cryptocurrencies side by side:
|
|
213
213
|
- Price, 24h change, market cap, volume, and rank for each asset
|
|
214
214
|
- Comma-separated symbols (e.g. `BTC,ETH,SOL`)
|
|
215
215
|
- Highlights best performer by 24h change
|
|
216
216
|
|
|
217
|
-
#### analysis
|
|
217
|
+
#### analysis-historical
|
|
218
218
|
|
|
219
219
|
Analyzes historical price data with:
|
|
220
220
|
- Customizable time intervals (5min to 1 day)
|
|
@@ -223,7 +223,7 @@ Analyzes historical price data with:
|
|
|
223
223
|
- Volatility metrics
|
|
224
224
|
- High/low price ranges
|
|
225
225
|
|
|
226
|
-
#### analysis
|
|
226
|
+
#### analysis-technical
|
|
227
227
|
|
|
228
228
|
Returns the latest technical indicators for any cryptocurrency:
|
|
229
229
|
- SMA (Simple Moving Average) with period
|
|
@@ -232,7 +232,7 @@ Returns the latest technical indicators for any cryptocurrency:
|
|
|
232
232
|
- MACD with signal line, histogram, and Bullish/Bearish label
|
|
233
233
|
- VWAP (Volume Weighted Average Price, 24h)
|
|
234
234
|
|
|
235
|
-
#### analysis
|
|
235
|
+
#### analysis-candlestick
|
|
236
236
|
|
|
237
237
|
Retrieves OHLCV candlestick data from a specific exchange:
|
|
238
238
|
- Open, high, low, close, and volume for each candle
|
package/dist/http.js
CHANGED
|
@@ -39,7 +39,7 @@ const serverCard = {
|
|
|
39
39
|
},
|
|
40
40
|
tools: [
|
|
41
41
|
{
|
|
42
|
-
name: 'price
|
|
42
|
+
name: 'price-get',
|
|
43
43
|
description: 'Get current price and 24h stats for a cryptocurrency',
|
|
44
44
|
inputSchema: {
|
|
45
45
|
type: 'object',
|
|
@@ -81,7 +81,7 @@ const serverCard = {
|
|
|
81
81
|
},
|
|
82
82
|
},
|
|
83
83
|
{
|
|
84
|
-
name: 'market
|
|
84
|
+
name: 'market-analysis',
|
|
85
85
|
description: 'Get detailed market analysis including top exchanges and volume distribution',
|
|
86
86
|
inputSchema: {
|
|
87
87
|
type: 'object',
|
|
@@ -138,7 +138,7 @@ const serverCard = {
|
|
|
138
138
|
},
|
|
139
139
|
},
|
|
140
140
|
{
|
|
141
|
-
name: 'analysis
|
|
141
|
+
name: 'analysis-historical',
|
|
142
142
|
description: 'Get historical price analysis with customizable timeframe',
|
|
143
143
|
inputSchema: {
|
|
144
144
|
type: 'object',
|
|
@@ -197,7 +197,7 @@ const serverCard = {
|
|
|
197
197
|
},
|
|
198
198
|
},
|
|
199
199
|
{
|
|
200
|
-
name: 'assets
|
|
200
|
+
name: 'assets-top',
|
|
201
201
|
description: 'Get top cryptocurrencies ranked by market cap',
|
|
202
202
|
inputSchema: {
|
|
203
203
|
type: 'object',
|
|
@@ -250,7 +250,7 @@ const serverCard = {
|
|
|
250
250
|
},
|
|
251
251
|
},
|
|
252
252
|
{
|
|
253
|
-
name: 'analysis
|
|
253
|
+
name: 'analysis-technical',
|
|
254
254
|
description: 'Get the latest technical indicators for a cryptocurrency including SMA, EMA, RSI, MACD, and VWAP',
|
|
255
255
|
inputSchema: {
|
|
256
256
|
type: 'object',
|
|
@@ -326,7 +326,7 @@ const serverCard = {
|
|
|
326
326
|
},
|
|
327
327
|
},
|
|
328
328
|
{
|
|
329
|
-
name: 'market
|
|
329
|
+
name: 'market-rates',
|
|
330
330
|
description: "Get USD-based conversion rates for fiat currencies and cryptocurrencies. Optionally pass a slug (e.g. 'euro', 'us-dollar', 'bitcoin') to look up a single rate.",
|
|
331
331
|
inputSchema: {
|
|
332
332
|
type: 'object',
|
|
@@ -366,7 +366,7 @@ const serverCard = {
|
|
|
366
366
|
},
|
|
367
367
|
},
|
|
368
368
|
{
|
|
369
|
-
name: 'market
|
|
369
|
+
name: 'market-exchanges',
|
|
370
370
|
description: "Get top cryptocurrency exchanges ranked by 24h volume. Optionally pass an exchangeId (e.g. 'binance', 'coinbase') to get details for a specific exchange.",
|
|
371
371
|
inputSchema: {
|
|
372
372
|
type: 'object',
|
|
@@ -423,7 +423,7 @@ const serverCard = {
|
|
|
423
423
|
},
|
|
424
424
|
},
|
|
425
425
|
{
|
|
426
|
-
name: 'assets
|
|
426
|
+
name: 'assets-search',
|
|
427
427
|
description: 'Search for cryptocurrencies by name, symbol, or partial match. Returns multiple matching assets with their ID, name, symbol, rank, and current price.',
|
|
428
428
|
inputSchema: {
|
|
429
429
|
type: 'object',
|
|
@@ -471,7 +471,7 @@ const serverCard = {
|
|
|
471
471
|
},
|
|
472
472
|
},
|
|
473
473
|
{
|
|
474
|
-
name: 'market
|
|
474
|
+
name: 'market-global',
|
|
475
475
|
description: '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.',
|
|
476
476
|
inputSchema: {
|
|
477
477
|
type: 'object',
|
|
@@ -500,7 +500,7 @@ const serverCard = {
|
|
|
500
500
|
},
|
|
501
501
|
},
|
|
502
502
|
{
|
|
503
|
-
name: 'assets
|
|
503
|
+
name: 'assets-compare',
|
|
504
504
|
description: '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. "BTC,ETH,SOL").',
|
|
505
505
|
inputSchema: {
|
|
506
506
|
type: 'object',
|
|
@@ -555,7 +555,7 @@ const serverCard = {
|
|
|
555
555
|
},
|
|
556
556
|
},
|
|
557
557
|
{
|
|
558
|
-
name: 'analysis
|
|
558
|
+
name: 'analysis-candlestick',
|
|
559
559
|
description: 'Get OHLCV candlestick data for a cryptocurrency from a specific exchange. Useful for charting and technical analysis.',
|
|
560
560
|
inputSchema: {
|
|
561
561
|
type: 'object',
|
|
@@ -623,7 +623,7 @@ const serverCard = {
|
|
|
623
623
|
},
|
|
624
624
|
},
|
|
625
625
|
{
|
|
626
|
-
name: 'price
|
|
626
|
+
name: 'price-convert',
|
|
627
627
|
description: 'Convert a cryptocurrency amount to any fiat currency (e.g. USD, EUR, JPY). Uses real-time exchange rates for accurate conversions.',
|
|
628
628
|
inputSchema: {
|
|
629
629
|
type: 'object',
|
|
@@ -673,7 +673,7 @@ const serverCard = {
|
|
|
673
673
|
},
|
|
674
674
|
},
|
|
675
675
|
{
|
|
676
|
-
name: 'assets
|
|
676
|
+
name: 'assets-info',
|
|
677
677
|
description: 'Get detailed metadata for a cryptocurrency including ID, rank, supply, max supply, VWAP, market cap, and 24h volume.',
|
|
678
678
|
inputSchema: {
|
|
679
679
|
type: 'object',
|
package/dist/index.js
CHANGED
|
@@ -37,7 +37,7 @@ export function createServer({ config, }) {
|
|
|
37
37
|
},
|
|
38
38
|
],
|
|
39
39
|
});
|
|
40
|
-
server.registerTool('price
|
|
40
|
+
server.registerTool('price-get', {
|
|
41
41
|
title: 'Get Crypto Price',
|
|
42
42
|
description: 'Get real-time price, 24-hour change percentage, trading volume, and market cap for any cryptocurrency by symbol or name.',
|
|
43
43
|
inputSchema: GetPriceArgumentsSchema.shape,
|
|
@@ -53,7 +53,7 @@ export function createServer({ config, }) {
|
|
|
53
53
|
const result = await handleGetPrice(args);
|
|
54
54
|
return result;
|
|
55
55
|
});
|
|
56
|
-
server.registerTool('market
|
|
56
|
+
server.registerTool('market-analysis', {
|
|
57
57
|
title: 'Get Market Analysis',
|
|
58
58
|
description: 'Get detailed market analysis for a cryptocurrency including the top 5 exchanges by volume, price per exchange, and volume distribution percentages.',
|
|
59
59
|
inputSchema: GetMarketAnalysisSchema.shape,
|
|
@@ -69,7 +69,7 @@ export function createServer({ config, }) {
|
|
|
69
69
|
const result = await handleGetMarketAnalysis(args);
|
|
70
70
|
return result;
|
|
71
71
|
});
|
|
72
|
-
server.registerTool('analysis
|
|
72
|
+
server.registerTool('analysis-historical', {
|
|
73
73
|
title: 'Get Historical Analysis',
|
|
74
74
|
description: 'Get historical price data for a cryptocurrency with trend analysis including period high/low, price change percentage, and volatility metrics over a customizable timeframe.',
|
|
75
75
|
inputSchema: GetHistoricalAnalysisSchema.shape,
|
|
@@ -85,7 +85,7 @@ export function createServer({ config, }) {
|
|
|
85
85
|
const result = await handleGetHistoricalAnalysis(args);
|
|
86
86
|
return result;
|
|
87
87
|
});
|
|
88
|
-
server.registerTool('assets
|
|
88
|
+
server.registerTool('assets-top', {
|
|
89
89
|
title: 'Get Top Assets',
|
|
90
90
|
description: 'Get the top cryptocurrencies ranked by market cap, with real-time price, 24-hour change percentage, and market cap for each asset.',
|
|
91
91
|
inputSchema: GetTopAssetsSchema.shape,
|
|
@@ -101,7 +101,7 @@ export function createServer({ config, }) {
|
|
|
101
101
|
const result = await handleGetTopAssets(args);
|
|
102
102
|
return result;
|
|
103
103
|
});
|
|
104
|
-
server.registerTool('analysis
|
|
104
|
+
server.registerTool('analysis-technical', {
|
|
105
105
|
title: 'Get Technical Analysis',
|
|
106
106
|
description: 'Get the latest technical indicators for a cryptocurrency including SMA, EMA, RSI, MACD, and VWAP to assess momentum, trend direction, and overbought/oversold conditions.',
|
|
107
107
|
inputSchema: GetTechnicalAnalysisSchema.shape,
|
|
@@ -117,7 +117,7 @@ export function createServer({ config, }) {
|
|
|
117
117
|
const result = await handleGetTechnicalAnalysis(args);
|
|
118
118
|
return result;
|
|
119
119
|
});
|
|
120
|
-
server.registerTool('market
|
|
120
|
+
server.registerTool('market-rates', {
|
|
121
121
|
title: 'Get Currency Rates',
|
|
122
122
|
description: "Get USD-based conversion rates for fiat currencies and cryptocurrencies. Optionally pass a slug (e.g. 'euro', 'us-dollar', 'bitcoin') to look up a single rate.",
|
|
123
123
|
inputSchema: GetRatesSchema.shape,
|
|
@@ -133,7 +133,7 @@ export function createServer({ config, }) {
|
|
|
133
133
|
const result = await handleGetRates(args);
|
|
134
134
|
return result;
|
|
135
135
|
});
|
|
136
|
-
server.registerTool('market
|
|
136
|
+
server.registerTool('market-exchanges', {
|
|
137
137
|
title: 'Get Exchanges',
|
|
138
138
|
description: "Get top cryptocurrency exchanges ranked by 24h volume. Optionally pass an exchangeId (e.g. 'binance', 'coinbase') to get details for a specific exchange including volume, trading pairs, and market share.",
|
|
139
139
|
inputSchema: GetExchangesSchema.shape,
|
|
@@ -149,7 +149,7 @@ export function createServer({ config, }) {
|
|
|
149
149
|
const result = await handleGetExchanges(args);
|
|
150
150
|
return result;
|
|
151
151
|
});
|
|
152
|
-
server.registerTool('assets
|
|
152
|
+
server.registerTool('assets-search', {
|
|
153
153
|
title: 'Search Crypto Assets',
|
|
154
154
|
description: 'Search for cryptocurrencies by name, symbol, or partial match. Returns multiple matching assets with their ID, name, symbol, rank, and current price.',
|
|
155
155
|
inputSchema: SearchAssetsSchema.shape,
|
|
@@ -165,7 +165,7 @@ export function createServer({ config, }) {
|
|
|
165
165
|
const result = await handleSearchAssets(args);
|
|
166
166
|
return result;
|
|
167
167
|
});
|
|
168
|
-
server.registerTool('market
|
|
168
|
+
server.registerTool('market-global', {
|
|
169
169
|
title: 'Get Global Metrics',
|
|
170
170
|
description: '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.',
|
|
171
171
|
inputSchema: GetGlobalMetricsSchema.shape,
|
|
@@ -181,7 +181,7 @@ export function createServer({ config, }) {
|
|
|
181
181
|
const result = await handleGetGlobalMetrics(args);
|
|
182
182
|
return result;
|
|
183
183
|
});
|
|
184
|
-
server.registerTool('assets
|
|
184
|
+
server.registerTool('assets-compare', {
|
|
185
185
|
title: 'Compare Cryptocurrencies',
|
|
186
186
|
description: '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. "BTC,ETH,SOL").',
|
|
187
187
|
inputSchema: CompareCryptoSchema.shape,
|
|
@@ -197,7 +197,7 @@ export function createServer({ config, }) {
|
|
|
197
197
|
const result = await handleCompareCrypto(args);
|
|
198
198
|
return result;
|
|
199
199
|
});
|
|
200
|
-
server.registerTool('analysis
|
|
200
|
+
server.registerTool('analysis-candlestick', {
|
|
201
201
|
title: 'Get Candlestick Data',
|
|
202
202
|
description: 'Get OHLCV candlestick data for a cryptocurrency from a specific exchange. Useful for charting and technical analysis.',
|
|
203
203
|
inputSchema: GetCandlestickDataSchema.shape,
|
|
@@ -213,7 +213,7 @@ export function createServer({ config, }) {
|
|
|
213
213
|
const result = await handleGetCandlestickData(args);
|
|
214
214
|
return result;
|
|
215
215
|
});
|
|
216
|
-
server.registerTool('price
|
|
216
|
+
server.registerTool('price-convert', {
|
|
217
217
|
title: 'Get Price Conversion',
|
|
218
218
|
description: 'Convert a cryptocurrency amount to any fiat currency (e.g. USD, EUR, JPY). Uses real-time exchange rates for accurate conversions.',
|
|
219
219
|
inputSchema: GetPriceConversionSchema.shape,
|
|
@@ -229,7 +229,7 @@ export function createServer({ config, }) {
|
|
|
229
229
|
const result = await handleGetPriceConversion(args);
|
|
230
230
|
return result;
|
|
231
231
|
});
|
|
232
|
-
server.registerTool('assets
|
|
232
|
+
server.registerTool('assets-info', {
|
|
233
233
|
title: 'Get Asset Info',
|
|
234
234
|
description: 'Get detailed metadata for a cryptocurrency including ID, rank, supply, max supply, VWAP, market cap, and 24h volume.',
|
|
235
235
|
inputSchema: GetAssetInfoSchema.shape,
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mcp-crypto-price",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"description": "A Model Context Protocol (MCP) server that provides real-time cryptocurrency data and analysis through CoinCap's API. Features include price tracking, market analysis, and historical trends.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": {
|