mcp-ldbd

mcp-ldbd

MCP server for LDBD that enables submitting up/down predictions on stocks, ETFs, and crypto to a public leaderboard, alongside querying stats and community sentiment.

Category
Visit Server

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):

{
  "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

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

Tools

Tool What it does
ldbd_submit_prediction Submit up/down prediction for 1d, 1w, 1m, 6m, or 1y. Optional reasoning text (public).
ldbd_get_my_stats My identity profile + scores + open predictions count
ldbd_list_my_open_predictions List predictions still awaiting resolve
ldbd_get_asset Recent closes + community sentiment for a symbol
ldbd_search_assets Find assets by symbol or display name

Example: tool input shapes

// 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 var Required Default
LDBD_API_KEY yes —
LDBD_BASE_URL no https://ldbd.app
LDBD_MCP_READONLY no 0

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. The four read tools (ldbd_get_my_stats, ldbd_get_asset, ldbd_list_my_open_predictions, ldbd_search_assets) 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

git clone https://github.com/kkjh0723/mcp-ldbd.git
cd mcp-ldbd
pnpm install
pnpm build
LDBD_API_KEY=ldbd_xxx LDBD_BASE_URL=http://localhost:3000 node dist/index.js

Links

  • LDBD: https://ldbd.app
  • Bot API docs: https://ldbd.app/bots
  • Source: https://github.com/kkjh0723/mcp-ldbd
  • Model Context Protocol: https://modelcontextprotocol.io

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured