> ## Documentation Index
> Fetch the complete documentation index at: https://docs.0xinsider.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP server

> Give an AI client read-only access to 0xinsider data through a local or hosted MCP server.

Use the 0xinsider MCP server when an AI client needs market data, wallet grades, large trades, reports, or picks. You can run the local server or call the hosted server. Every tool is read-only.

| Your client can... | Use |
| - | - |
| Start a local process | [`@0xinsider/mcp`](https://www.npmjs.com/package/@0xinsider/mcp), which communicates over stdio. |
| Make authenticated HTTP requests | [Remote MCP](/api-reference/endpoint/remote-mcp) at `POST /api/v1/mcp`. |

Both transports use the same account request budgets. Local packages contain the tool catalog from their release.

Live tool calls require a Pro or Max API key. Remote `initialize`, `ping`, and `tools/list` are public; `tools/call` requires authentication.

Max includes all Pro tools. Its account has 2,000,000 included monthly requests instead of Pro's 500,000, and its daily picks include every published rank up to 15 instead of Pro's ranks 1 through 5. The server does not promise 15 picks every day.

For example data without a key, use the REST [sandbox](/sandbox).

Published version `2.14.3` includes 48 tools, including `get_pick_of_the_day_ledger_entry` for reading a published pick by its stable ID. The setup examples below install that version.

<span id="install-with-init" />

## Set up the local server

You need Node.js 22 or newer and a key from [Developers](https://0xinsider.com/developers).

```bash theme={null}
npx -y @0xinsider/mcp@2.14.3 init
```

`init` detects Claude Code, Cursor, Codex, and Gemini CLI. It writes configuration for the first 3. For Gemini CLI, it prints a template to paste instead of passing the key through that client's command-line helper.

The prompt reads your key without echoing it. For unattended setup, supply `OXINSIDER_API_KEY` through the environment or pipe the key on stdin. Never put a key in a command-line argument, where it can appear in shell history or process listings.

### Check a Claude Code setup

The server belongs in `~/.claude.json`. If an older setup put it in `~/.claude/settings.json`, run the current `init` command again to move it. Open a new Claude Code session and run `claude mcp list` to confirm the server is available.

### Start the server directly

The package installs `0xinsider` and the alias `0xinsider-mcp`. Running either without arguments, or with `serve`, starts stdio MCP. `init` configures a client; the other product commands are documented under [CLI](/integrations/cli).

MCP always reads its key from `OXINSIDER_API_KEY`. A CLI sign-in session does not supply that key.

<span id="configure-a-client-by-hand" />

## Configure a client manually

Put the credential in the client's `env` configuration. The following examples show the required files and fields:

<CodeGroup>
  ```json Claude Code (~/.claude.json) theme={null}
  {
    "mcpServers": {
      "0xinsider": {
        "command": "npx",
        "args": ["-y", "@0xinsider/mcp@2.14.3"],
        "env": { "OXINSIDER_API_KEY": "oxi_sk_live_..." }
      }
    }
  }
  ```

  ```json Cursor (~/.cursor/mcp.json) theme={null}
  {
    "mcpServers": {
      "0xinsider": {
        "command": "npx",
        "args": ["-y", "@0xinsider/mcp@2.14.3"],
        "env": { "OXINSIDER_API_KEY": "oxi_sk_live_..." }
      }
    }
  }
  ```

  ```toml Codex (~/.codex/config.toml) theme={null}
  [mcp_servers."0xinsider"]
  command = "npx"
  args = ["-y", "@0xinsider/mcp@2.14.3"]

  [mcp_servers."0xinsider".env]
  OXINSIDER_API_KEY = "oxi_sk_live_..."
  ```

  ```json Gemini CLI (~/.gemini/settings.json) theme={null}
  {
    "mcpServers": {
      "0xinsider": {
        "command": "npx",
        "args": ["-y", "@0xinsider/mcp@2.14.3"],
        "env": { "OXINSIDER_API_KEY": "oxi_sk_live_..." }
      }
    }
  }
  ```

  ```bash Any stdio client theme={null}
  OXINSIDER_API_KEY=oxi_sk_live_... npx -y @0xinsider/mcp@2.14.3
  ```
</CodeGroup>

Replace the placeholder through your client's credential setup. Do not commit a live key.

<span id="the-tools" />

## Choose a tool

The catalog below matches published version `2.14.3`. Versions before `2.13.0` do not include the stable-ID ledger tool.

| Group | Tools |
| - | - |
| Games | `list_games`, `get_game` |
| Traders | `get_trader`, `batch_get_traders`, `get_leaderboard`, `get_trending_wallets`, `get_trader_pnl`, `get_positions`, `get_position_timeline`, `get_position_timeline_by_id`, `get_trader_export_snapshot` |
| Large trades | `get_large_trades`, `get_large_trade`, `get_large_trades_history`, `get_whale_trades`, `get_whale_trade`, `get_whale_trades_history`, `get_event_replay_since` |
| Markets | `search_markets`, `explore_markets`, `get_market_flow`, `batch_get_market_flow`, `get_market_intel` (deprecated), `batch_get_market_intel` (deprecated), `get_market_snapshot`, `get_sharp_money_flows`, `get_smart_money_flows`, `get_large_positions`, `get_pre_game_sides`, `get_pre_game_side_observations`, `get_sports_edge_signals`, `get_sports_edge_observations` |
| Suspicious trades | `get_suspicious_trades`, `get_suspicious_trade`, `get_insider_radar`, `get_insider_radar_flag` |
| Reports | `get_report`, `get_daily_report_snapshot`, `get_weekly_report_snapshot`, `get_monthly_report_snapshot` |
| Webhooks | `list_webhooks`, `get_webhook` |
| Content and coverage | `search_content`, `get_coverage`, `get_platforms` (deprecated) |
| Picks | `get_pick_of_the_day`, `get_pick_of_the_day_archive`, `get_pick_of_the_day_ledger_entry` |

Use the canonical names for new work:

* `get_pick_of_the_day_ledger_entry` reads one published [ledger entry](/api-reference/endpoint/get-pick-of-the-day-ledger-entry) using a decimal-string `pick_id`. The REST route is public, but MCP calls still require a Pro or Max key. A live sealed entry withholds its side, payload, nonce, and kickoff until settlement.

* `get_large_trades`, `get_large_trade`, and `get_large_trades_history` read large trades. The `whale` names are deprecated aliases.

* `get_market_flow` and `batch_get_market_flow` read market flow and positions. The `market_intel` names are deprecated aliases.

* `get_pre_game_sides` reads ranked pre-game sides. `get_pre_game_side_observations` reads the 3 observation groups excluded from the ranked list; those rows carry `observation_only: true`. The `sports_edge` names are deprecated aliases.

* `get_suspicious_trades` and `get_suspicious_trade` read flagged trades. The `insider_radar` names are deprecated aliases.

* `get_sharp_money_flows` reads market net flows. `get_smart_money_flows` is a deprecated alias.

`list_games` and `get_game` return fixtures, teams, kickoff times, status, live scores, and linked Polymarket markets. Read the list's `coverage` before interpreting an empty result. These tools do not return market prices, flow splits, or holder identities.

Pick tools return only entitled pending selections. Read `locked_picks` for ranks that need Max, and do not infer a game from an omitted clock, matchup, or market field. Refresh cached Remote MCP `tools/list` descriptors when the response contract changes.

No tool creates, changes, verifies, or deletes a webhook. The webhook tools only read existing destinations.

<span id="resources-and-prompts" />

## Local resources and prompts

The local server also provides 4 resources and 3 prompts. Remote MCP supports tools only and rejects methods outside `initialize`, `ping`, `tools/list`, and `tools/call`.

| Resource | Content |
| - | - |
| `oxinsider://docs/api` | The full API reference. |
| `oxinsider://docs/agents` | A decision tree for agents, saying which tool to call when. |
| `oxinsider://data/leaderboard` | The current top 20 traders. |
| `oxinsider://data/whale-trades` | The latest 20 whale trades. |

| Prompt | Use it for |
| - | - |
| `analyze_trader` | A full breakdown of one wallet. |
| `market_report` | A sharp money flow report on a market topic: who is buying and who is selling. |
| `trading_signals` | A scan for high-conviction signals across markets. |

<span id="ask-a-question" />

## Ask for the data you need

Give the AI client a specific task:

* "List the highest-ranked wallets on the leaderboard."
* "Show large basketball trades from A-grade or better wallets."
* "Read `swisstony`'s grade, realized P\&L, and data freshness."
* "Show the highest-ranked pre-game sides and their supporting data."

The tool response is analytics data. It does not place an order or decide whether you should trade.

## Environment variables

| Variable | Requirement | Meaning |
| - | - | - |
| `OXINSIDER_API_KEY` | Required locally | A Pro or Max API key. The local server refuses to start without it. |
| `OXINSIDER_API_URL` | Optional | The default is `https://api.0xinsider.com`. A custom origin must use HTTPS, except for a loopback development host. |

A tool call uses the same 100-request-per-minute budget and monthly quota as a REST call. These limits are shared by the account; see [Rate limits](/rate-limits).

<span id="what-it-does-not-do" />

## Limits

* Every tool is read-only. The server does not place orders, manage webhooks, or change your account.
* A local API request has a 15-second deadline covering headers and the complete response body. The server's own deadline returns `request_timeout`.
* Starting with local package version `2.14.3`, cancelling an MCP request cancels its HTTP read, including the response body. Caller cancellation has the local error code `request_cancelled`, even when the caller supplies a timeout reason. Cancellation does not roll back an already committed POST or guarantee that the remote server stopped its work.
* In `2.14.3`, documentation resources have the same 15-second deadline and caller cancellation. The startup instructions read keeps its separate 3-second deadline.
* The local server requires Node.js 22 or newer. The older `@0xinsider/mcp@1.3.1` runtime supports earlier Node.js versions.
* Remote MCP requires an `Authorization` header for tool calls. A `?token=` credential is rejected with `401` and `api_key_in_query`.
* To search these documentation pages, use the separate public server at [docs.0xinsider.com/mcp](https://docs.0xinsider.com/mcp).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.