Index One MCP
Query financial index data, run backtests, and deploy systematic investment strategies on Index One.
Что умеет
- List Operations: List available pipeline operations (id, name, description, category). Call with no args to see all + the category list; pass a category to narrow. Use this to discover real operations
- Get Operations: Get the full parameter schema and output shape for specific operations. Always fetch an operation's spec before using it so parameters are correct.
- List Examples: List production-tested example pipelines (id/name/description). Optional substring search.
Какие данные видит
Нужен ли аккаунт
Не нужен: сервер работает без входа
Query financial index data, run backtests, and deploy systematic investment strategies on Index One.
Как подключить
Как подключить Index One MCP к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://mcp--indexone.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить Index One MCP к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://mcp--indexone.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить Index One MCP к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://mcp--indexone.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (22)
Технические названия из tools/list. Нужны только разработчикам.
| list_operations | List available pipeline operations (id, name, description, category). Call with no args to see all + the category list; pass a category to narrow. Use this to discover real operations instead of guessing. |
| get_operations | Get the full parameter schema and output shape for specific operations. Always fetch an operation's spec before using it so parameters are correct. |
| list_examples | List production-tested example pipelines (id/name/description). Optional substring search. |
| get_example | Fetch one or MORE example pipelines to learn correct wiring. Pass several ids in 'example_ids' to fetch them in a SINGLE call (cheaper than separate calls) — useful when the index combines patterns from different examples. Each returned example carries 'index_parameters_json' (a JSON string of the full pipeline). |
| list_workflows | List live workflows. scope='team' (the user's), 'public' (public/featured), or 'all'. Use to build off or repair an existing workflow/index. |
| get_workflow | Fetch one workflow by id. Returns id/name/operation_ids plus 'workflow_json' (a JSON string of the full workflow's index_parameters, including its operations). |
| list_datasets | List the user's team datasets (id/name/description). Never invent dataset ids — use these. |
| inspect_dataset | Inspect a team dataset's real data. view='schema' (columns+dtypes), 'sample' (rows), 'shape', 'unique' (distinct values of 'column'), or 'stats' (per-column distribution summary). Use before filtering on it. |
| run_pipeline | Run a single operation, sub-pipeline, or full workflow in PREVIEW mode (nothing is persisted; source data is real). Returns per-operation state and an output SUMMARY (columns, shape, small sample). Use it to test that a step works and to discover the real columns an operation produces, then inspect_run / get_column_values on the result. |
| inspect_run | Introspect a cached run_pipeline output. view='schema'|'sample'|'shape'|'unique'|'stats'. For 'unique' pass the 'column' (e.g. which sector values exist before filtering). 'stats' returns per-column count/nulls/mean/std/min/quartiles/max — use it to find which factor/score/weight column is skewed or dominates (pass 'column' for one, omit for all). Defaults to the most recent run and, if it has one operation, that operation. |
| get_column_values | Distinct values of a column — from a dataset (dataset_id) or a cached run (op_id/run_id). The canonical way to discover real filter values (sectors, countries, ratings, ...). |
| validate_workflow | Validate a candidate workflow against the manifest. Returns structured issues. Call before submitting. |
| get_index | Get an index's metadata: name, description, stage/status, calendar settings, value series, and an operation summary. Works for your team's indices and public ones. |
| get_index_values | Historical index value series (EOD rows with every value series, e.g. PR/TR). Optional ISO start_time/end_time bounds; long series are evenly downsampled to the point cap, always keeping the latest point. |
| get_index_holdings | Index holdings snapshot (constituents with shares, weights, divisor) at-or-before 'time' (default: latest). Pass 'limit' for the top-N by weight. |
| get_index_weightings | Index weighting snapshot at-or-before 'time' (default: latest). |
| get_index_universe | Index universe snapshot (eligible securities) at-or-before 'time' (default: latest). |
| get_index_stats | Risk/return summary from the index's EOD value series: cumulative + annualized return, annualized volatility, max drawdown. 'series' picks a value column (default 'value'). |
| run_backtest | Run a historical simulation of a workflow (index_parameters JSON). Validates, then launches the run and immediately returns a backtest_id — poll get_backtest until status is 'completed' or 'failed'. Never creates a live index — use deploy_index. |
| get_backtest | Fetch a stored backtest result by backtest_id: performance summary and, with include_series=true, the (downsampled) value series. After deploy_index, also reports the deployed live index id. |
| save_workflow | Persist a workflow for the caller's team. Without workflow_id: creates a new DRAFT workflow. With workflow_id: updates an owned workflow in place (a live workflow's changed operations trigger a live reload). Always validated first; never changes stage. |
| deploy_index | Create a LIVE index from a saved workflow_id or inline index_parameters: runs a full backtest, persists its history, and registers the index for continuous scheduled calculation. Requires confirm=true. Returns the pending index_id + backtest_id immediately — poll get_index(index_id) or get_backtest(backtest_id) until the index lands on 'live' or 'failed' (deployed_index_id appears in get_backtest when done). |