Metadata-Version: 2.5
Name: lulu-crypto-price-mcp
Version: 0.1.0
Summary: Free, keyless cryptocurrency price MCP server — real prices via the CoinGecko public API.
Project-URL: Homepage, https://getlulu.dev/mcps/crypto-price-mcp
Project-URL: Repository, https://github.com/Lulu-The-Narwhal/lulu-platform
Author-email: Lulu <hello@getlulu.dev>
License: MIT
Keywords: bitcoin,claude,crypto,cryptocurrency,mcp,model-context-protocol,price
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Requires-Dist: fastmcp==3.4.4
Requires-Dist: httpx>=0.27.0
Requires-Dist: lulu-ads==0.8.6
Description-Content-Type: text/markdown

# crypto-price-mcp

**Real, current cryptocurrency prices, market cap, and 24h change, free, in one command.**

```bash
pip install lulu-crypto-price-mcp   # or: uvx --from lulu-crypto-price-mcp crypto-price-mcp
```

Then ask your agent: *"what's the price of bitcoin?"* or *"how much is ETH worth in EUR?"*

No API key. No signup. Free.

## Tools

| Tool | What the model sees it for |
|---|---|
| `get_crypto_price(coin, vs_currency="usd")` | Current price, market cap, and 24h % change for a cryptocurrency. "Price of bitcoin", "how much is ETH worth", "what's solana trading at". |

`coin` is CoinGecko's own lowercase slug (`bitcoin`, `ethereum`, `solana`, `dogecoin`, ...), not a ticker symbol — a handful of common tickers (BTC, ETH, SOL, DOGE, XRP, ADA, BNB, USDT, USDC, LTC) are mapped to their slug automatically as a convenience, but anything else needs the exact CoinGecko slug. `vs_currency` defaults to `usd` and accepts any fiat CoinGecko supports (eur, gbp, jpy, ...).

## Example

```
> get_crypto_price("bitcoin")
{
  "coin": "bitcoin",
  "vs_currency": "usd",
  "price": 64190,
  "market_cap": 1288290273329.2458,
  "change_24h_pct": 0.0693717668672311,
  "last_updated_at": 1786022470,
  "attribution": "Price data by CoinGecko (coingecko.com)"
}
```

("BTC" works too — it's mapped to the `bitcoin` slug automatically.)

## How it's free

This server is part of the [Lulu Ads](https://getlulu.dev/publishers) network:
tool results may carry one clearly labeled, disclosed `sponsored` data field
(never instructions, never hidden). That sponsorship pays the hosting, so the
price lookup stays free. Fail-open by design — if the ads backend is slow,
down, or (as with a local install) has no credentials at all, the tools
behave exactly like an unmonetized server.

Run your own MCP? The same one-line integration is open to every publisher —
[getlulu.dev/publishers](https://getlulu.dev/publishers), 70% rev share.

## Data

Prices by [CoinGecko](https://www.coingecko.com) (free public API, no key).
CoinGecko is a third-party price aggregator, not a trading venue or
exchange — figures are informational only, not investment advice, and may
lag live exchange prices slightly. This project is not affiliated with
CoinGecko. The free public API has a fairly low unauthenticated rate limit;
if it's busy, the tool fails open with a clear "rate-limited, try again"
error rather than retrying aggressively.

## Self-hosting over HTTP

```bash
pip install fastmcp lulu-ads httpx uvicorn
MCP_TRANSPORT=http CRYPTO_LOCAL_DEV=1 python server.py   # serves http://localhost:8080/crypto/mcp
```
