BTCvision MCP Server
Model Context Protocol (MCP) server that exposes Bitcoin analytics, AI price predictions, halving countdowns, market signals, and crypto news from btcvision.org as tools for AI assistants.
Features
The server exposes 10 tools that any MCP-compatible client (Claude Desktop, Claude Code, Cursor, Cline, Continue, etc.) can call:
| # | Tool | Description |
|---|---|---|
| 1 | get_bitcoin_price |
Current BTC/USD ticker |
| 2 | get_bitcoin_predictions |
AI price targets 2027–2030 |
| 3 | get_halving_countdown |
Live countdown + next block reward |
| 4 | get_market_signals |
6 bullish signals + market phase |
| 5 | get_latest_news |
Latest crypto headlines |
| 6 | get_fear_greed_index |
Fear & Greed Index value & label |
| 7 | get_ai_stats |
Model version, confidence, accuracy |
| 8 | get_donation_info |
BTC/ETH/SOL/BNB addresses |
| 9 | get_faq_answer |
Look up an FAQ answer by question |
| 10 | get_site_summary |
High-level site overview |
Installation
1. Clone & install
git clone https://github.com/your-user/btcvision-mcp.git
cd btcvision-mcp
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
2. Run standalone (for debugging)
btcvision-mcp
# or
python -m btcvision_mcp.server
The server communicates over stdio (the standard MCP transport), so it will appear to "hang" — that's expected. It waits for JSON-RPC messages from an MCP client.
Configuration
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json
(macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"btcvision": {
"command": "python",
"args": ["-m", "btcvision_mcp.server"],
"cwd": "/absolute/path/to/btcvision-mcp"
}
}
}
If you installed the package in a virtual environment, point command at
the venv's Python:
{
"mcpServers": {
"btcvision": {
"command": "/absolute/path/to/btcvision-mcp/.venv/bin/python",
"args": ["-m", "btcvision_mcp.server"]
}
}
}
Claude Code
In .mcp.json at your project root:
{
"mcpServers": {
"btcvision": {
"command": "python",
"args": ["-m", "btcvision_mcp.server"]
}
}
}
Cursor / Cline / Continue
The same JSON shape works in their respective MCP config files.
Usage Examples
Once configured, you can ask your AI assistant things like:
- "What's Bitcoin's price right now according to btcvision?"
- "Show me the BTC price predictions for 2027 through 2030."
- "How many days until the next Bitcoin halving?"
- "What bullish signals is the BTCvision AI tracking?"
- "What's the current Fear & Greed Index?"
- "What's the BTCvision AI model version and accuracy?"
- "Look up: What is the Bitcoin halving?"
- "Give me the latest crypto news."
The assistant will call the relevant tool and return structured data.
Architecture
btcvision-mcp/
├── btcvision_mcp/
│ ├── __init__.py
│ ├── models.py # Pydantic data models
│ ├── scraper.py # Async HTTP scraping + parsing
│ └── server.py # MCP server (stdio transport)
├── tests/
│ ├── __init__.py
│ └── test_server.py # Unit + integration tests
├── pyproject.toml
├── README.md
└── .gitignore
scraper.py— async web scraper with a 5-minute in-memory cache. Falls back to hard-coded signals and FAQ content if the site structure changes.models.py— strongly-typed Pydantic models for every response.server.py— the MCP server, usingmcp.server.Serverwith stdio transport. 10 tools, each with an explicit JSON schema.tests/— 25+ tests covering scraping, parsing, tool dispatch, and an end-to-end in-process MCP session.
Development
Run the tests:
pytest
Run the linter:
ruff check .
Type-check:
mypy btcvision_mcp
Tool Return Format
All tools return JSON-formatted text so any MCP client can render the output directly. Example:
{
"ai_confidence_percent": 82.0,
"projected_roi_multiplier": 3.4,
"long_term_target": { "year": 2030, "price_usd": 350000.0 },
"predictions": [
{ "year": 2027, "price_usd": 130000.0, "percent_change": 26.0,
"drivers": "Post-2024-halving supply reduction, ETF inflows" },
{ "year": 2028, "price_usd": 200000.0, "percent_change": 94.0,
"drivers": "4th Halving supply shock (block reward cut to 1.5625 BTC)" },
{ "year": 2029, "price_usd": 280000.0, "percent_change": 172.0,
"drivers": "Bull run peak, new ATH" },
{ "year": 2030, "price_usd": 350000.0, "percent_change": 240.0,
"drivers": "Post-cycle consolidation, nation-state adoption" }
],
"source": "btcvision.org"
}
Caching
The scraper caches the homepage HTML for 5 minutes per process to
avoid hammering the site. Use force=True (or restart the server) to
bust the cache.
License
MIT — see LICENSE.
Disclaimer
All data is fetched from btcvision.org and is provided for educational and informational purposes only. It is not financial advice. Cryptocurrency investments carry significant risk. Always do your own research.
Metadata
Release files for btcvision-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| btcvision_mcp-0.1.0.tar.gz | 18.0 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| btcvision_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 36.5 kB
Release files / btcvision_mcp-0.1.0.tar.gz
| Download URL | btcvision_mcp-0.1.0.tar.gz |
|---|---|
| Size | 18.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
51eac5cebd7f4c16dcdf7f1ea89e0f86d86e102ea3775a4f1aef50f07c651ac0
|
|
BLAKE2b-256 checksum How to use checksums |
e065b80e0123d9da553c7d0efbcff48d3ab541386cd8502563b141a775e864d1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 18, 2026.
Transparency logRelease files / btcvision_mcp-0.1.0-py3-none-any.whl
| Download URL | btcvision_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 18.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
72df94bf447724e6facd5bd69853b97eb1b9ecc784e856049e67ebc8d8cbc72c
|
|
BLAKE2b-256 checksum How to use checksums |
49fb8eac98b59d69602bb6535a2634ecf86c8b80fedbe6a442c5f6e59bea77d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 18, 2026.
Transparency logSecurity for btcvision-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for btcvision_mcp-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 18, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.