The MCP server is the most direct way to put Scienter in front of an AI coding assistant. It’s a companion to your own running Scienter instance, not a hosted service — Scienter has no multi-tenant backend, so this server talks to the copy of Scienter running on your machine (or one you point it at) and adds API keys, tiers, and rate limiting in front of it.

Setup

1. Start your instance

This server needs a running instance to talk to (default http://127.0.0.1:8777).

2. Install and build

3. Generate an API key

Scienter has no dashboard-issued keys yet, so this server manages its own local key file (apps/mcp-server/apikeys.local.json, gitignored):

4. Point your client at it

Claude Code (.mcp.json or claude mcp add), Cursor (.cursor/mcp.json), and Windsurf (mcp_config.json) all use the same shape:

5. Verify it

Ask your assistant: “Call whoami on the MCP server” — it should report your tier, quota, and whether the dashboard is reachable.

The 19 tools

Every tool is backed by a real code path: an existing HTTP route on ghostcopy/server.py, a small read-only Python bridge (ghostcopy/mcp_bridge.py) for signal-store tables that never got a route, or — for Helius/Hyperliquid — the same public third-party APIs Scienter itself calls.
Two capabilities that were originally speced were deliberately dropped rather than faked: get_wallet_positions (Scienter scores trade calls and buy events, not live portfolio holdings — nothing tracks that) and named strategies like Wyckoff/SMC (list_available_strategies reports real backtests filtered by signal-kind combination, not a named technical-analysis library). If you need either, they don’t exist yet.

Example prompts

  • “What Scienter signals are live right now above 70 conviction?”
  • “Show me the top 10 wallets by deflated Sharpe that are actually copyable.”
  • “Backtest the funding+liquidation combo on BTC over the last 90 days — is it worth following?”
  • “Verify this Alpha Ledger call hash end-to-end: 0x…”
  • “Which data sources are currently stale or failing?”

Transport

Defaults to stdio — the right mode for a subprocess your MCP client launches directly. Set TRANSPORT=http to serve streamable HTTP on MCP_SERVER_PORT (default 3020) for a shared deployment instead; in that mode the single GHOSTCOPY_API_KEY in its environment is the only identity every connection uses — there’s no per-request credential support over HTTP yet.

Publishing

Not published to npm. npm run build produces what npm publish would ship, but do not publish without explicit sign-off from whoever owns the package.
Scienter publishes impersonal market signals of general and regular circulation. Nothing here is investment, legal, or tax advice, or a recommendation to buy, sell, or hold any asset. Scienter is not a registered investment adviser or broker-dealer. Trading digital assets can result in the total loss of your funds — see Disclaimers for the full text.