Content
# signallord-mcp-server
[

](https://glama.ai/mcp/servers/KK6BZB/signallord-mcp-server)
MCP server for [Signal Lord](https://signallord.io) — know which Bitcoin regime you're in and the probabilities of what happens next.
Not another price feed. Signal Lord tells AI agents **where Bitcoin is** in its market cycle, **what similar periods looked like historically**, and **what usually happens next** — backed by 20+ real-time indicators and pattern matching against documented cycle history.
## Quick Start
### 1. Install
```bash
npm install -g signallord-mcp-server
```
Requires Python 3.10+ with pip on your PATH. Dependencies install automatically.
### 2. Get an API Key
Sign up at [signallord.io](https://signallord.io), then generate a key:
```bash
# After logging in, via the API:
curl -X POST https://signallord.onrender.com/api/keys/generate \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"label": "my MCP key"}'
```
Save the returned `sk-sl-...` key — it's shown only once.
### 3. Configure
```bash
export SIGNALLORD_API_KEY=sk-sl-your-key-here
export SIGNALLORD_API_BASE_URL=https://signallord.onrender.com
```
### 4. Run
```bash
signallord-mcp
```
Server starts on `http://localhost:8100` (streamable HTTP transport).
### 5. Connect to Claude Desktop
Add to your Claude Desktop config (`claude_desktop_config.json`):
```json
{
"mcpServers": {
"signallord": {
"command": "signallord-mcp",
"env": {
"SIGNALLORD_API_KEY": "sk-sl-your-key-here",
"SIGNALLORD_API_BASE_URL": "https://signallord.onrender.com"
}
}
}
}
```
Or connect via URL:
```json
{
"mcpServers": {
"signallord": {
"url": "http://localhost:8100/mcp"
}
}
}
```
## What You Get
**The question every trader asks:** "What's Bitcoin doing right now and what happens next?"
Signal Lord answers with regime detection, not price predictions:
| Instead of... | Signal Lord gives you... |
|---|---|
| "BTC is $84,000" | "Bitcoin is in a **High Vol Chop** regime, similar to March 2025 tariff volatility" |
| "Fear & Greed is 45" | "**35% chance** of consolidation, **30% chance** of V-recovery based on 4 similar historical periods" |
| "ETF flows were +$200M" | "Institutional score 6.2/10 — steady accumulation but not FOMO. Pattern matches post-halving 2024 buildup" |
## Tiers & Rate Limits
| Tier | Regime Detail | Rate Limit | Data |
|------|--------------|-----------|------|
| **Free** | Regime + probabilities + top match name | 10/min, 500/day | 4 gauges + basic market data |
| **Premium** | Full historical matches + catalysts + feature vectors | 30/min, 2000/day | All 8 gauges + ETF/on-chain + Odin AI |
| **Pro** | Everything + signals | 60/min, 5000/day | Full platform access |
## Tools (26)
### Regime Detection (flagship)
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_regime` | Free* | Current regime, historical matches, outcome probabilities |
| `signallord_get_regime_history` | Free | Regime evolution over time from daily snapshots |
### Gauges
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_composite_score` | Free | Composite 0-100 score with regime label |
| `signallord_get_gauge_breakdown` | Free* | Individual gauge scores (4 free, 8 premium) |
| `signallord_get_gauge_history` | Free | Historical scores for trend analysis |
### Odin AI
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_odin_analysis` | Free* | AI market analysis (basic free, enriched premium) |
| `signallord_ask_odin` | Premium | Ask Odin a question about BTC markets |
### Market Data
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_btc_metrics` | Free* | Price, volume, derivatives (+ on-chain on premium) |
| `signallord_get_institutional_data` | Premium | ETF flows, Coinbase premium, CME basis |
| `signallord_get_macro_indicators` | Free | DXY, VIX, Fear & Greed, liquidity stack |
| `signallord_get_what_changed` | Free | Day-over-day market changes |
### Signals & Analytics
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_btc_vix_correlation` | Premium | BTC vs VIX correlation + spike detection |
| `signallord_get_btc_gold_ratio` | Premium | BTC vs Gold normalized comparison |
| `signallord_get_etf_flow_history` | Premium | Daily ETF flow history (since Jan 2024) |
| `signallord_get_exchange_flow_history` | Premium | Exchange flow accumulation/distribution |
| `signallord_get_liquidation_data` | Free | Liquidation momentum scoring |
| `signallord_get_odin_track_record` | Free | AI prediction accuracy and learned patterns |
### Cycle Indicators (v1.2.0)
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_pi_cycle` | Premium | 111DMA vs 350DMA·2 cross — cycle-top warning |
| `signallord_get_realized_price` | Premium | Spot vs on-chain cost basis + reclaim/loss events |
| `signallord_get_reserve_risk` | Premium | Price/HODL Bank ratio banded into cycle phases |
| `signallord_get_mtf_trend` | Premium | D/W/M trend alignment composite (-3 to +3) |
| `signallord_get_hash_ribbons` | Premium | 30/60-day hashrate MA cross + 30d divergence z-score |
| `signallord_get_capitulation_score` | Premium | Composite of volume, liquidations, funding, OI, velocity |
### Probability Playbooks (v1.2.0)
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_cycle_bottom_probability` | Premium | Weighted accumulation playbook score (0-100) |
| `signallord_get_cycle_top_probability` | Premium | Weighted distribution playbook score (0-100) |
### Meta (v1.2.0)
| Tool | Tier | Description |
|------|------|-------------|
| `signallord_get_data_health` | Free | Which signals are currently stale due to upstream data issues |
\* Returns limited data on free tier, full data on premium.
## Example: Regime Detection Response
```json
{
"regime": "high_vol_chop",
"regime_label": "High Vol Chop",
"regime_confidence": 0.72,
"regime_duration_hours": 168.5,
"most_likely_outcome": "consolidation",
"most_likely_outcome_label": "Consolidation — went sideways for weeks",
"most_likely_probability": 40.0,
"outcome_probabilities": {
"consolidation": 40.0,
"v_recovery": 30.0,
"reversal": 20.0,
"correction": 10.0
},
"expected_move_pct": -2.5,
"expected_timeframe_days": 35,
"most_similar": {
"name": "March 2025 Tariff Volatility",
"date_range": "2025-03 to 2025-04",
"similarity": 0.89,
"outcome_description": "Oscillating as market digests policy uncertainty."
},
"historical_matches": ["...3 most similar periods with full details..."]
}
```
## Environment Variables
| Variable | Default | Description |
|----------|---------|-------------|
| `SIGNALLORD_API_KEY` | (empty) | Your `sk-sl-...` API key |
| `SIGNALLORD_API_BASE_URL` | `http://localhost:8000` | Signal Lord backend URL |
| `MCP_SERVER_PORT` | `8100` | Server listen port |
## Testing
```bash
# Syntax check
python -m py_compile server.py
# Tier verification (against production)
SIGNALLORD_PREMIUM_KEY=sk-sl-xxx python test_tiers.py
# MCP Inspector
npx @modelcontextprotocol/inspector
```
## Architecture
```
AI Agent (Claude, Cursor, etc.)
| MCP Protocol (Streamable HTTP)
v
signallord-mcp-server (port 8100)
| HTTP + X-SIGNALLORD-API-KEY header
v
Signal Lord backend API
| Regime Detection + Historical Pattern Matching
| 20+ real-time indicators + 8 data sources
v
PostgreSQL + Odin AI + Pattern Database
```
The MCP server is a stateless protocol adapter. All data, auth, rate limiting, and regime detection is handled by the backend.
## License
MIT