Skip to main content
Glama
index1one

Index One MCP Server

Official
by index1one

Index One MCP Server

Remote MCP server for Index One — query financial index data, run backtests, and build and deploy systematic investment strategies from any MCP-capable client.

Endpoint

https://api.indexone.io/mcp

Transport

Streamable HTTP (stateless, POST only)

Auth

OAuth 2.1, or a team API key in x-api-key

Tools

22

Registry

io.indexone/mcp

Docs

https://indexone.io/docs/mcp

This repository is the public home for the server's manifest, tool reference and client examples. The server itself is hosted by Index One — there is nothing to install, build or run locally, and the server implementation is not open source.

What it does

Index One builds and calculates custom financial indices. The MCP server exposes that platform as tools, so an agent can:

  • Read index data — metadata, historical value series, holdings, weightings, universes, and risk/return statistics for your team's indices and public ones.

  • Backtest — simulate any index definition over history, with performance summaries and value series.

  • Build and deploy — discover the pipeline operations and datasets available, preview a pipeline against real data, validate it, save it as a draft, and deploy it as a live, continuously calculated index.

The server is a tool surface, not a chatbot: your client's own model does the reasoning and calls tools one at a time. Every call is scoped to your team.

Related MCP server: FinClaw

Authentication

OAuth — clients that implement the MCP authorization spec (the Claude web and Desktop connectors, among others) need only the endpoint URL. You'll be sent to a sign-in page and log in with your normal Index One account; no key ends up in a config file.

API key — everything else sends a team API key as the x-api-key header. This covers Claude Code, Cursor, VS Code and custom agents, which register on a random local port that OAuth providers can't pre-approve. Create and revoke keys in the Index One console under Team → API Keys.

Both resolve to the same team scope. Rate limit is roughly 60 calls per minute per team; over that you get 429 with Retry-After.

Quick start

Claude (web or Desktop) — connector

Settings → Connectors → Add custom connector, paste https://api.indexone.io/mcp, leave the advanced OAuth fields empty, and sign in with your Index One account.

Claude Code

claude mcp add --transport http indexone https://api.indexone.io/mcp \
  --header "x-api-key: YOUR_API_KEY"

Cursor — ~/.cursor/mcp.json

{
  "mcpServers": {
    "indexone": {
      "url": "https://api.indexone.io/mcp",
      "headers": { "x-api-key": "YOUR_API_KEY" }
    }
  }
}

VS Code — .vscode/mcp.json

{
  "servers": {
    "indexone": {
      "type": "http",
      "url": "https://api.indexone.io/mcp",
      "headers": { "x-api-key": "YOUR_API_KEY" }
    }
  }
}

Claude Desktop — claude_desktop_config.json

Desktop reaches remote servers through the mcp-remote bridge:

{
  "mcpServers": {
    "indexone": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote", "https://api.indexone.io/mcp",
        "--header", "x-api-key:${INDEXONE_API_KEY}"
      ],
      "env": { "INDEXONE_API_KEY": "YOUR_API_KEY" }
    }
  }
}

On Windows, use "command": "cmd" with "args": ["/c", "npx", ...] — Desktop resolves npx to a path containing a space, which breaks the launch. Write the header with no space after the colon; Desktop does not escape spaces inside arguments.

Anything else

See examples/ for a raw JSON-RPC call over curl and a Python client using the official MCP SDK.

Tools

Full reference with descriptions: TOOLS.md.

Group

Tools

Index data

get_index, get_index_values, get_index_holdings, get_index_weightings, get_index_universe, get_index_stats

Backtesting

run_backtest, get_backtest

Discovery

list_operations, get_operations, list_examples, get_example, list_workflows, get_workflow, list_datasets, inspect_dataset

Preview

run_pipeline, inspect_run, get_column_values

Persistence

validate_workflow, save_workflow, deploy_index

Writes are deliberately narrow: an agent can save drafts and deploy an index — the latter only with confirm=true, after a full backtest, and never as an empty index — and there is no delete tool.

Building an index

An index workflow is a DAG of operations: a trigger that sets the schedule, operations that select, filter and weight securities, and a create_index_holdings step that turns the result into holdings. Agents discover that shape rather than assuming it. The server ships instructions telling the client's model to follow this path:

list_operations     what operations exist?
get_example         copy wiring from a real pipeline
get_operations      exact parameter schemas
inspect_dataset     real columns, real values
run_pipeline        preview against real data (nothing saved)
validate_workflow   optional draft check (the run tools validate on their own)
save_workflow       persist as a draft
run_backtest        validates + simulates, returns a backtest_id immediately
deploy_index        register a live index (confirm=true)

Operation names, dataset ids, column names and filter values are always looked up, never guessed.

Notes

  • Stateless streamable HTTP: every request is self-contained, POST only (GET/DELETE return 405), JSON responses returned directly — no SSE stream required.

  • Preview runs cache their outputs for two hours so inspect_run and get_column_values work across calls.

  • run_backtest and deploy_index never hold the connection open: they validate synchronously, then return a backtest_id (and, for deploys, the pending index_id) immediately; poll get_backtest for the result — it absorbs part of the wait server-side, so polling back-to-back is fine.

Support

Questions, higher rate limits, or anything odd: support@indexone.io

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    A Python-based FastMCP server that provides financial tools for securities analysis, including market data, news, fundamental/technical analysis, and visualization capabilities that can be consumed by any MCP-aware client.
    Last updated
    8
  • A
    license
    -
    quality
    D
    maintenance
    MCP server that provides AI agents with financial tools including real-time quotes, backtesting, technical analysis, and multi-exchange data via a simple CLI interface.
    Last updated
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    An MCP server exposing a registry of paper-backed quantitative trading methods plus a deterministic, no-LLM decision helper for reproducible trading research.
    Last updated
    13
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    MCP server that exposes the Backtest360 backtesting engine API as tools, enabling AI agents to conversationally discover indicators, build and validate strategies, run backtests, and read results.
    Last updated
    14
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server exposing the Backtest360 engine API as tools for AI agents.

  • 7-factor stock scoring MCP server. US/HK/CN, 74 stocks. Free + Premium (USDC/Base). x402 ready.

  • Hosted MCP for stocks, options, Greeks, brokers, order previews, alerts, and workflows.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/index1one/indexone-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server