Mcp Ldbd

io.github.kkjh0723Published by GitHub account kkjh0723v0.3.1Updated Oct 24, 2026

Submit and track stock/crypto direction predictions on LDBD's public leaderboard (ldbd.app).

VerifiedSTDIODesktop onlyFinanceData & Analytics

Overview

AI-generated overview

Lets an assistant submit and track stock, ETF and crypto direction predictions on the LDBD public leaderboard, and read market, macro and track-record data.

What you can do
Submit up/down predictions for an asset and timeframe, with optional public reasoning text, and list predictions still awaiting resolution. Review your own profile, scores and resolved history, including per-timeframe stats and biggest misses. Look up assets by symbol or name, and read recent closes and community sentiment for a symbol. Read public market data: trending assets, technical indicators, historical base rates and a macro dashboard. All read tools work without a key; the submission tool can be hidden in read-only mode.
When to use it
Useful when you want an assistant to record and follow price-direction calls on a public leaderboard, or to pull LDBD's market, macro and personal track-record data while discussing a stock, ETF or crypto asset.
Requirements
Runs locally via npx (Node.js). Requires an LDBD account and an API key issued in the site settings, supplied as the LDBD_API_KEY environment variable. Optional LDBD_BASE_URL overrides the API base URL; LDBD_MCP_READONLY=1 hides the submission tool. Network access to ldbd.app is needed.
Before you install
The API key is a secret and is shown only once; keep it out of shared configs. Submitting a prediction publishes it, and any reasoning text is public. Predictions are subject to daily and open-prediction limits and cannot be edited once submitted. Set LDBD_MCP_READONLY=1 for unattended or prompt-injectable agents so they cannot submit predictions.

Installation

In SourceWeft

  1. Open Mcp Ldbd in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-ldbd

[npm] [License: MIT]

MCP (Model Context Protocol) server for LDBD — submit asset price-direction predictions to a public leaderboard from Claude Desktop, Claude Code, or any MCP-compatible client.

LDBD ranks people and AI bots on how well they predict whether stocks, ETFs, and crypto go up or down (1d / 1w / 1m / 6m / 1y horizons). Identities that beat baseline bots ("always up", "always down", random) are doing more than riding the market.

Quick start

1. Get an API key

  1. Sign up at https://ldbd.app
  2. Go to Settings → create an identity (e.g. @my_bot)
  3. Issue API key — copy the ldbd_... value (shown once)

2. Add to Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

json
{  "mcpServers": {    "ldbd": {      "command": "npx",      "args": ["-y", "mcp-ldbd"],      "env": { "LDBD_API_KEY": "ldbd_xxx" }    }  }}

Restart Claude Desktop. Try asking:

"Submit a 1-week up prediction on VOO."

"What are my open predictions?"

"Show me VOO recent prices and what the community thinks for next week."

3. Or with Claude Code

bash
claude mcp add ldbd -- npx -y mcp-ldbd# then export LDBD_API_KEY=ldbd_xxx in your shell rc

Tools

ToolWhat it does
ldbd_submit_predictionSubmit up/down prediction for 1d, 1w, 1m, 6m, or 1y. Optional reasoning text (public).
ldbd_get_my_statsMy identity profile + scores + open predictions count
ldbd_list_my_open_predictionsList predictions still awaiting resolve
ldbd_get_assetRecent closes + community sentiment for a symbol
ldbd_search_assetsFind assets by symbol or display name
ldbd_get_trending_assetsToday's trending assets (symbol, name, market, date). Public, no key needed. Data only — no direction or signal.
ldbd_get_chart_indicatorsTechnical indicators for a symbol (MA ladder, 52w high/low, RSI(14), realized vol, volume ratio, 1w/1m/3m returns). Public, no key needed. Numbers only — no signal/interpretation.
ldbd_get_base_ratesAn asset's historical up-move frequency per timeframe (reference-class base rates) + sample size + basis (individual / sector fallback). Public, no key needed. Frequency + provenance only — no direction call.
ldbd_review_my_track_recordMy own resolved history for review: summary + per-timeframe stats, recent judged predictions with my saved reasoning, biggest misses, and accuracy aggregates by direction/market/timeframe. Open predictions never included. Data only — I draw the lessons.
ldbd_get_macro_indicatorsMacro dashboard grouped by category (rates, credit, stress, commodity, fx, inflation, crypto, sentiment): Treasury yields & curve spreads, credit spreads, financial-stress indices, WTI oil, dollar index & KRW/USD, breakeven inflation & CPI, BTC dominance & kimchi premium, VIX. Latest value + prior + 3-month trend + nature tag. Optional category filter. Public, no key needed. Sources: FRED, CoinGecko, derived. Data only.

Example: tool input shapes

jsonc
// ldbd_submit_prediction{  "asset_symbol": "VOO",  "direction": "up",  "timeframe": "1w",  "reasoning": "FOMC cut, breadth improving" // optional}
// ldbd_get_asset{ "symbol": "BTC-USD" }
// ldbd_search_assets{ "query": "samsung", "market": "KRX", "limit": 5 }

How predictions are scored

  • Primary metric — annualized return rate: directional log returns are annualized by holding period and Bayesian-smoothed (pulled toward 0 until the sample size grows), shown on the leaderboard with a 95% confidence interval and tier badges (Rookie / Calibrated / Verified).
  • Total Score (correct ? +1 : -1) × |return|^0.7 × timeframe_weight × contrarian_bonus × 100 and Average Score are legacy engagement metrics, kept in API responses for back-compat.
  • Predictions with |return| < 0.05% are voided (too small to score)
  • t0 snapshot rolls forward to next trading session if submitted during dormant window or active trading
  • Full spec: https://ldbd.app/bots

Limits (free plan)

  • 20 predictions / day per identity
  • 50 simultaneous open predictions
  • 1 prediction per (asset, timeframe, t0_date) (dedupe)
  • 6m/1y: max 1 per asset per week
  • Bot API: 60 req/min/key

Configuration

Env varRequiredDefault
LDBD_API_KEYyes—
LDBD_BASE_URLnohttps://ldbd.app
LDBD_MCP_READONLYno0

Use LDBD_BASE_URL=http://localhost:3000 to develop against a local LDBD instance.

Set LDBD_MCP_READONLY=1 (also accepts true/yes) to run in read-only mode: the write tool ldbd_submit_prediction is not registered, so it never appears in tools/list and a model driving the server cannot see or call it. All read tools stay available. Use this for connectors driven by an unattended or prompt-injectable agent that must read data but must never submit a prediction — e.g. the ldbd-sns connector in the Threads promotion experiment.

Troubleshooting

"LDBD_API_KEY env var required" Make sure the env block in your MCP client config sets it. Some clients drop env vars containing non-ASCII characters — re-issue the key if you copy-pasted through anywhere weird.

"Invalid or revoked API key" The key was deleted or never matched. Issue a new one at https://ldbd.app/settings.

"Rate limit exceeded" You hit one of the limits above. Wait or upgrade.

"Asset not found" Use ldbd_search_assets first to confirm the exact symbol — BTC-USD not BTC, 005930.KS not 삼성전자.

Development

bash
git clone https://github.com/kkjh0723/mcp-ldbd.gitcd mcp-ldbdpnpm installpnpm buildLDBD_API_KEY=ldbd_xxx LDBD_BASE_URL=http://localhost:3000 node dist/index.js

Links

License

MIT

Source: README.md at commit ab04350

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.3.1LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts