Search DevTools

Jump to any tool or page

TraderSpy

AI crypto signals, smart money whale positions, live futures prices and indicators

target1m0 stars0 forksDesign & UX
View source

Install

mcp_config.json

{
  "mcpServers": {
    "app-traderspy-traderspy": {
      "url": "https://mcp.traderspy.app/mcp",
      "type": "streamable-http"
    }
  }
}

Documentation

TraderSpy MCP

Crypto smart money & AI signals, wired straight into your AI assistant.

17 read-only tools · 4 exchanges · 19 technical indicators · 3 interactive views One URL. No install, no daemon, no broker, no API keys of your own.


Connect Claude, Claude Code, ChatGPT, Grok, Cursor, Cline or any MCP client to TraderSpy's live crypto futures data: AI-generated signals with real targets, whale positioning across four exchanges, prices, candles, indicators, derivatives, a condition screener and an event-study backtester.

You ask:                             It calls:                     It reads:

"Which coins are oversold?"      →  screen_symbols()           →  top 100 by 24h volume, one pass
"Is BTC still trending?"         →  get_technical_indicators() →  1h + 4h + 1d in a single call
"What are the whales doing?"     →  get_positions()            →  Binance · Hyperliquid · Bybit · OKX
"Is this signal still valid?"    →  get_signal_details()       →  live price against entry / TP / SL
"What happens after this setup?" →  backtest_condition()       →  up to 1000 stored candles

Every tool is read-only. This connector cannot place, close or modify an order, it has no withdrawal or transfer tool, and it cannot see anyone's account. It answers questions with public market data. See Security.


Contents

Quick start · What it answers · Tool catalogue · Interactive views · Skills · Authentication · Security · Data sources · Architecture · Prompts to try · Changelog


Quick start

Everything below points at the same endpoint: https://mcp.traderspy.app/mcp.

Claude, Claude Code, ChatGPT, Grok and Gemini sign in with your TraderSpy account (OAuth), so there is no key to copy. A free account is enough. Clients that cannot open a sign-in window (Cursor, Cline, Windsurf, Grok Build, n8n, scripts) use a personal key instead: get it from the Other clients tab at traderspy.app/mcp. It starts with mcp_, the page can show it again, and it is revocable at any time.

Claude (web, desktop and mobile)

Settings → Connectors → Add custom connector, paste https://mcp.traderspy.app/mcp, then click Connect and sign in with your TraderSpy account. No key to paste.

Claude Code

As a plugin — also installs the six skills:

/plugin marketplace add target1m/traderspy-mcp
/plugin install traderspy@traderspy-mcp

Then type /mcp, pick traderspy and choose Authenticate. Your browser opens the TraderSpy sign-in once; click Allow access and Claude Code keeps the token. Coming from 1.7.0 or earlier, which asked for a key at install? That key is no longer used: authenticate once the same way.

No browser on that machine (a server, CI)? Export your personal URL before starting Claude Code and the plugin connects with it instead:

export TRADERSPY_MCP_URL="https://mcp.traderspy.app/mcp?token=mcp_YOUR_KEY"

Or as a plain MCP server, then authenticate the same way from /mcp:

claude mcp add --transport http traderspy https://mcp.traderspy.app/mcp

ChatGPT

TraderSpy is in the ChatGPT plugin directory:

  1. Open chatgpt.com/plugins (or Settings → Plugins), search for TraderSpy and click Connect
  2. Sign in with your TraderSpy account and click Allow access
  3. Pick TraderSpy in a chat with @ or from the + menu

Prefer your own connector? Turn on Developer mode in Settings → Security and login, then click + on the Plugins page, paste https://mcp.traderspy.app/mcp and choose OAuth.

Grok (xAI)

grok.com/connectors → New Connector → Custom, then paste https://mcp.traderspy.app/mcp. Grok opens the TraderSpy sign-in: sign in and click Allow access, and leave any client ID and secret fields empty.

No sign-in appeared, or the tools don't answer? Paste your personal URL instead. The key is embedded, so the host's authentication can stay on "None":

https://mcp.traderspy.app/mcp?token=mcp_YOUR_KEY

Grok Build cannot open a sign-in window, so from the terminal it always takes the personal URL:

grok mcp add --transport http traderspy "https://mcp.traderspy.app/mcp?token=mcp_YOUR_KEY"

As a Grok Build plugin (the server plus the six skills), the repo carries .grok-plugin/plugin.json and .grok-plugin/mcp.json; the xAI plugin marketplace listing is in review. Grok Build has no install-time prompt for secrets, so the plugin reads your key from TRADERSPY_API_KEY in the environment that launches grok.

The personal URL also works as a remote MCP tool in the xAI API. Grok speaks Streamable HTTP and SSE — so does this server.

Cursor

As a plugin — also installs the six skills. This repo is a Cursor plugin (.cursor-plugin/plugin.json + mcp.json): install TraderSpy from the Cursor Marketplace (listing in review), or clone the repo into ~/.cursor/plugins/local/traderspy and run Developer: Reload Window. Cursor asks for your key as TRADERSPY_API_KEY at install (change it later under Plugins → Configure) and sends it as a bearer token; it never lands in your repo.

Or as a plain MCP server — .cursor/mcp.json:

{
  "mcpServers": {
    "traderspy": {
      "url": "https://mcp.traderspy.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_YOUR_KEY"
      }
    }
  }
}

Cline

cline_mcp_settings.json:

{
  "mcpServers": {
    "traderspy": {
      "type": "streamableHttp",
      "url": "https://mcp.traderspy.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_YOUR_KEY"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

type must be exactly streamableHttp. streamable-http, or leaving type out, falls back to SSE and the server answers 405. Full walkthrough: llms-install.md.

Gemini CLI

gemini extensions install https://github.com/target1m/traderspy-mcp

The extension (gemini-extension.json) adds the server and the six skills. It signs in with OAuth rather than a key: run /mcp auth traderspy once inside Gemini CLI.

In the Gemini app (gemini.google.com or mobile): Settings → Connected apps, add a custom app, paste https://mcp.traderspy.app/mcp and sign in. Google offers custom apps only in the US, in English, on a personal Google account with Keep Activity on.

Kimi Code

As a plugin — also installs the six skills. In Kimi Code:

/plugins install https://github.com/target1m/traderspy-mcp
/reload

The repo carries .kimi-plugin/plugin.json, and Kimi Code installs the latest release. The first TraderSpy tool call asks you to sign in: run the /mcp-config login … command Kimi Code prints, sign in with your TraderSpy account in the browser and click Allow access, then /reload.

Or as a plain MCP server — ~/.kimi-code/mcp.json, then sign in the same way:

{
  "mcpServers": {
    "traderspy": {
      "url": "https://mcp.traderspy.app/mcp"
    }
  }
}

No browser on that machine? Keep the key out of the file: export it and point Kimi Code at the variable with bearerTokenEnvVar.

{
  "mcpServers": {
    "traderspy": {
      "url": "https://mcp.traderspy.app/mcp",
      "bearerTokenEnvVar": "TRADERSPY_API_KEY"
    }
  }
}

OpenCode

Add the server to opencode.json (project) or ~/.config/opencode/opencode.json (global):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "traderspy": {
      "type": "remote",
      "url": "https://mcp.traderspy.app/mcp"
    }
  }
}

Then run opencode mcp auth traderspy. Your browser opens the TraderSpy sign-in once. Click Allow access and OpenCode stores the token.

No browser on that machine? Turn off OAuth detection and send your personal key from the environment:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "traderspy": {
      "type": "remote",
      "url": "https://mcp.traderspy.app/mcp",
      "oauth": false,
      "headers": {
        "Authorization": "Bearer {env:TRADERSPY_API_KEY}"
      }
    }
  }
}

OpenCode also loads skills from .agents/skills/ and .claude/skills/, so the six skills installed with the skills CLI work in OpenCode too.

GitHub Copilot CLI

As a plugin, which also installs the six skills:

copilot plugin install target1m/traderspy-mcp

The plugin manifest is .github/plugin/plugin.json. It points Copilot CLI at https://mcp.traderspy.app/mcp with no key: Copilot CLI signs in with your TraderSpy account (OAuth) in the browser, and /mcp auth traderspy opens the sign-in again. Copilot CLI passes a plugin's remote server settings through literally, so a key cannot come from an environment variable here.

No browser on that machine? Skip the plugin and add the server with your personal key under its own name:

copilot mcp add --transport http --header "Authorization: Bearer mcp_YOUR_KEY" \
  traderspy-key https://mcp.traderspy.app/mcp

goose

Desktop: Add TraderSpy to goose opens goose and adds the extension. Start a new chat. On the first tool call goose opens the TraderSpy sign-in in your browser; click Allow access. There is no key to paste.

CLI: run goose configure, choose Add Extension → Remote Extension (Streamable HTTP), name it traderspy and enter https://mcp.traderspy.app/mcp. Add no headers. For one session only:

goose session --with-streamable-http-extension "https://mcp.traderspy.app/mcp"

Every tool is read-only: there is no order, transfer or withdrawal tool. Market data and analysis, not financial advice.

Windsurf and other MCP clients

The personal URL works in any client that takes an MCP server URL:

{
  "traderspy": {
    "type": "http",
    "url": "https://mcp.traderspy.app/mcp?token=mcp_YOUR_KEY"
  }
}

A client that implements MCP authorization can take the bare URL instead: the server answers an unauthenticated tool call with 401 and a WWW-Authenticate header, which starts its sign-in. That works when the client's OAuth callback is a loopback address (http://localhost:<port>, http://127.0.0.1:<port>) or one of the hosts above. Custom-scheme callbacks (cursor://, vscode://) and other web callbacks are refused at registration, so those clients use the personal URL.


What it answers

The server publishes this routing to the model itself, so you rarely have to name a tool:

You ask aboutIt calls
Price, 24h change, volumeget_price — several symbols in one call
OHLCV for chartingget_candles
"Analyse X", oversold, trend, support/resistanceget_technical_indicators — up to 3 timeframes and 3 coins per call
Funding, open interest, long/short, taker flowget_derivatives
"Which coins are…", "find setups", "compare A B C"screen_symbols
"What usually happens after…"backtest_condition
AI signals, their detail, their track recordget_signals · get_signal_details · get_signal_stats
Whales, best traders, who is long Xget_top_traders · get_elite_leaderboard · get_trader_profile · get_trader_position_history · get_positions
Coverage and venue contextget_tracked_symbols · get_exchanges · get_market_stats

Batch, don't loop. Calls are metered per day, and the tools are built so one call replaces many: several symbols in a single get_price, three timeframes and three coins in a single get_technical_indicators (one quota unit, and you get the confluence across the timeframes), and screen_symbols instead of running indicators symbol by symbol.


Tool catalogue

17 tools, every one read-only, every one annotated readOnlyHint: true.

Signals — 3 tools

ToolWhat it returns
get_signalsRecent AI signals with filtering — symbol, side, entry, TP1–TP3, stop, strength, validation score
get_signal_detailsOne signal in full: AI review, trigger conditions, every level as an absolute price, realised outcome, and the live price to judge whether it still applies
get_signal_statsTrack record over a period — win rate, profit factor, resolution breakdown

Smart money — 7 tools

ToolWhat it returns
get_top_tradersRanked traders per exchange, by the metric you choose
get_elite_leaderboardTop 10 by SmartScore (weighted PnL, win rate, ROI, consistency, longevity, depth, recency)
get_trader_profileOne trader: metrics plus their open positions
get_trader_position_historyThat trader's closed trades
get_positionsLive and historical smart-money positions, filterable by symbol and exchange
get_market_statsAggregate long/short and notional across tracked traders
get_exchangesWhich venues are tracked and enabled

Market data & research — 7 tools

ToolWhat it returns
get_priceReal-time price, 24h high/low, volume and change% — one or many symbols
get_candlesOHLCV for 1m, 5m, 15m, 1h, 4h, 1d
get_technical_indicators19 indicators — RSI, MACD, EMA, SMA, Bollinger, ATR, ADX, Stochastic, OBV, VWAP, CCI, MFI, Williams %R, ROC, SuperTrend, Ichimoku, Keltner, pivots, swing S/R. Each carries value + previous bar + direction + a history series. Multi-timeframe (intervals, ≤ 3) with a per-timeframe summary and a cross-timeframe confluence; several coins in one call (symbols, ≤ 3, one entry per coin); custom periods; RSI/MACD divergence, Fibonacci retracement, volume profile, ATR percentile, TTM squeeze and candlestick patterns
get_derivativesFunding (current, 24h/3d average, annualised), open interest (24h/4h change, OI×price regime), top-trader and all-account long/short ratios, taker flow — up to 5 Binance perpetuals, with the interpretation traders actually quote
screen_symbolsScan the most-traded pairs (≤ 100, ranked by 24h volume) or an explicit list, for up to 3 AND-ed conditions over 17 metrics — rsi, stochastic, cci, mfi, williamsR, adx, roc, macdHistogram, atrPct, volumeRatio, bbPercentB, bbWidthPct, priceVsEma, emaSpread, supertrend, changePct, price — with lt / gt / crossAbove / crossBelow. One quota unit. Drop the conditions and pass symbols to get a comparison table instead
backtest_conditionEvent study on one symbol and timeframe: every occurrence over the stored tape (≤ 1000 candles), forward return / win rate / best and worst excursion per horizon, the unconditional baseline and the edge over it, the last five episodes, and whether the condition is live right now
get_tracked_symbolsEvery symbol with real-time data available

Interactive views

In hosts that support MCP Apps, three tools render a real interface instead of a wall of text. Every view is a single self-contained HTML bundle with a deny-all CSP — it makes no network call of its own, because the data arrives inside the tool result.

ToolView
get_signalsA card carousel — each card charts 24h of price with the entry, the next unreached take-profit and the stop drawn across it. Pages through the full result set, it never shows a silent slice
get_signal_detailsOne signal: chart with a price scale, the live price, entry / exit / level-hit markers judged on wicks, every level as an absolute price, the realised outcome and the validation meters
get_technical_indicatorsPer timeframe a 96-bar chart with EMA lines, the SuperTrend band and swing / pivot support-resistance drawn across it, the summary's notes, one chip per indicator and a levels table. Several timeframes become tabs, and so do several coins; footer buttons re-run the tool for 1h / 4h / 1d

Verified on claude.ai web with the deployed connector. Hosts without MCP Apps get the same data as text and structured content — nothing degrades.


Skills

The plugin ships six skills: playbooks that tell the assistant which tools answer which question, how to read the fields, and how to present the result without turning market data into advice. They live in skills/<name>/SKILL.md (Agent Skills format) and load automatically in Claude Code, Cursor, Grok Build, Gemini CLI, Kimi Code, GitHub Copilot CLI and Codex. For the ChatGPT plugin portal, run scripts/package-skills.sh and upload the ZIPs from dist/skills/.

Any other Agent Skills client can install them with the skills CLI. The skills need the MCP server connected, as shown in Quick start:

npx skills add target1m/traderspy-mcp                          # all six
npx skills add target1m/traderspy-mcp --skill market-briefing  # just one
SkillTriggers onTools it drives
market-briefing"what's happening in crypto", "morning brief", "market update"price, derivatives, screener, signal stats, signals
technical-analysis"analyse BTC", "is SOL oversold", support/resistance, funding, open interesttechnical indicators (multi-timeframe), derivatives, price, candles
market-screener"which coins are oversold", "find setups", "compare BTC ETH SOL", "what happened after…"screener, backtest
trading-signals"latest AI signals", "is this signal still valid", "how are the signals doing"signals, signal details, signal stats
smart-money"what are whales doing", "best traders on Hyperliquid", "research this trader"leaderboard, top traders, positions, profile, history, market stats
position-check"how far am I from liquidation", "what do you think of my long", a pasted positiontechnicals, derivatives, positions

Every skill carries the same conduct rules: report what the data shows and leave the decision to the user, never present a hit rate or a backtest as a forecast, and say plainly that the connector cannot place, close or move anything.


Authentication and limits

Two ways to connect, both tied to your TraderSpy account:

  • Sign in (OAuth 2.1, recommended) — Claude, Claude Code, ChatGPT, Grok and Gemini take the bare URL and open the TraderSpy sign-in (dynamic client registration, PKCE, scope mcp.read). There is nothing to copy, and the host renews its own token.
  • Personal key — for clients that cannot open a sign-in window. Get it from the Other clients tab at traderspy.app/mcp and send it a

Sourced from the repository README.

More in Design & UX