sentinel
Sentinel Execution MCP
Готовый к продакшену контур управления алгоритмической торговлей, представленный в виде MCP-сервера, — чтобы Claude мог управлять списками наблюдения, классифицировать рыночные режимы, проверять риски и отправлять бумажные заявки через естественный язык.
Что это
Sentinel — монорепозиторий из двух пакетов:
Пакет | Язык | Роль |
| Python 3.12 / FastAPI | Вся торговая логика: проверка рисков, классификация режимов, жизненный цикл заявок, журнал аудита, управление стратегиями |
| TypeScript / Node 20 | Тонкий MCP-сервер, который отправляет 40+ инструментов в движок через HTTP. Здесь нет никакой торговой логики. |
Claude (или любой MCP-совместимый агент) общается с MCP-сервером. MCP-сервер общается с движком. Движок владеет базой данных и кэшем.
Related MCP server: Alpaca MCP Server
Архитектура
Claude Desktop (or any MCP agent)
│
│ MCP protocol (stdio or SSE)
▼
┌─────────────────────────┐
│ MCP Server │ TypeScript · Zod validation · tool routing
│ (packages/mcp) │
└────────────┬────────────┘
│ HTTP REST (localhost:8100)
▼
┌─────────────────────────┐
│ Engine API │ Python · FastAPI · all trading logic
│ (packages/engine) │
└──────────┬──────────────┘
│
┌───────┴────────┐
▼ ▼
PostgreSQL Redis
(orders, (kill switch,
positions, rate limits,
strategies, cache)
audit log)Если движок недоступен, каждый вызов инструмента MCP сразу возвращает ошибку. Никаких запасных механизмов или частичного выполнения не предусмотрено.
Быстрый старт (Docker — рекомендуется)
Самый быстрый способ начать работу. Требуются Docker и Node.js 20+.
# 1. Clone and configure
git clone https://github.com/rohith1125/sentinel-execution-mcp.git
cd sentinel-execution-mcp
cp .env.example .env # defaults work out of the box — no edits needed
# 2. Start Postgres + Redis + engine (runs migrations automatically)
docker compose -f docker/docker-compose.yml up -d db redis engine
# Wait ~10 seconds, then verify the engine is healthy:
curl http://localhost:8100/health
# {"status": "ok", "provider": "mock", ...}
# 3. Build the MCP server (one-time)
cd packages/mcp
npm install
npm run buildЗатем добавьте Sentinel в Claude Desktop (см. Подключение Claude Desktop ниже) и перезапустите Claude. Готово — все 40 инструментов активны.
Ручная настройка (без Docker)
Используйте этот вариант, если у вас локально уже запущены Postgres и Redis.
Предварительные требования:
Зависимость | Минимальная версия | Примечания |
Python | 3.12 | Среда выполнения движка — проверьте командой |
Node.js | 20 | Среда выполнения MCP-сервера |
PostgreSQL | 15+ | Основное хранилище данных |
Redis | 7+ | Аварийный рубильник и кэш |
1. Клонирование и настройка
git clone https://github.com/rohith1125/sentinel-execution-mcp.git
cd sentinel-execution-mcp
cp .env.example .env
# Default values work for local paper-trading development — no edits required2. Настройка движка
cd packages/engine
python3.12 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"3. Запуск миграций базы данных
# From packages/engine with the venv active
alembic upgrade head4. Запуск движка
uvicorn sentinel.api:app --reload --port 8100Проверьте, что движок работает:
curl http://localhost:8100/health
# {"status": "ok", "env": "paper"}5. Сборка и запуск MCP-сервера
Откройте второй терминал:
cd packages/mcp
npm install
npm run build
npm run dev # stdio transport — for direct Claude Desktop integrationПодключение Claude Desktop
Добавьте следующее в файл конфигурации Claude Desktop.
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Получите правильный путь, выполнив в терминале:
echo "$(pwd)/packages/mcp/dist/index.js"Затем вставьте его в конфигурацию:
{
"mcpServers": {
"sentinel": {
"command": "node",
"args": ["/absolute/path/to/sentinel-execution-mcp/packages/mcp/dist/index.js"],
"env": {
"ENGINE_BASE_URL": "http://localhost:8100",
"APP_ENV": "paper"
}
}
}
}После сохранения перезапустите Claude Desktop. В поле ввода сообщения должен появиться значок молотка (🔨) — нажмите его, чтобы убедиться, что все 40 инструментов Sentinel загружены.
Справочник MCP-инструментов
Sentinel предоставляет 40+ инструментов, разделённых на девять категорий. Имя MCP-сервера — sentinel.
Категория | Инструмент | Описание |
Watchlist |
| Добавляет тикеры в торговый список наблюдения, при необходимости в указанную группу. |
| Удаляет тикеры; они больше не будут появляться при сканировании стратегий. | |
| Показывает активные тикеры, при необходимости отфильтрованные по группе. | |
| Возвращает данные по одному тикеру. | |
| Выводит все именованные группы списка наблюдения. | |
| Обновляет заметки или группу для тикера. | |
Market Data |
| Последние данные о котировках и сделках по одному или нескольким тикерам. |
| История OHLCV-баров с настраиваемым таймфреймом. | |
| Спред bid/ask в реальном времени по тикеру. | |
| Проверка доступности поставщика рыночных данных. | |
Regime |
| Классифицирует текущий рыночный режим с помощью ATR, ADX, RSI, ширины полос Боллинджера, показателя Хёрста, VWAP и ценовой эффективности. |
| Показывает исторические снимки режимов для тикера. | |
Strategy |
| Сканирует список наблюдения на сигналы по одной или нескольким стратегиям. |
| Оценивает конкретный тикер по выбранной стратегии. | |
| Выводит все зарегистрированные стратегии и их текущее состояние. | |
Risk / Kill Switch |
| Выполняет все 13+ проверок риска по предлагаемой сделке перед её отправкой. |
| Показывает текущее состояние всех аварийных рубильников (kill switch). | |
| Включает аварийный рубильник глобально, для стратегии или для тикера. | |
| Отключает аварийный рубильник (требуется указать причину). | |
| Сводка текущей валовой и чистой экспозиции. | |
| Текущая дневная, просадка относительно заданных лимитов. | |
Portfolio |
| Полный обзор счёта: стоимость, денежные средства, собственный капитал, P&L, покупательная способность. |
| Все открытые позиции с нереализованной прибылью/убытком (P&L). | |
| История закрытых позиций с реализации P&L. | |
Execution |
| Отправляет бумажную заявку: рыночную, лимитную, стоп или стоп-лимит. |
| Отменяет ожидающую или частично исполненную заявку по идентификатору. | |
| Показывает текущее состояние конкретной заявки. | |
| Выводит список заявок с фильтром по статусу, тикеру или диапазону дат. | |
| Запускает ручную сверку данных движка и брокера. | |
Governance |
| Регистрирует новую стратегию в статусе |
| Продвигает стратегию по этапам: Draft → Research → Backtest → Paper → Live. | |
| Немедленно приостанавливает стратегию в статусе Live или Paper. | |
| Выводит все стратегии с их текущим жизненным циклом. | |
| Проверяет, соответствует ли стратегия критериям для продвижения. | |
Audit |
| Понятное человеку объяснение торгового решения по ID события аудита. |
| Последние события аудита с фильтром по тикеру или стратегии. | |
| История завершённых сделок с результатами. | |
| Сырые записи журнала решений за временной период. | |
| Сводная статистика: процент выигрышных сделок, средний P&L, прокси коэффициента Шарпа. | |
| Экспорт записей аудита в CSV за диапазон дат. |
Полная документация по инструментам со схемами параметров: docs/mcp-tools.md
Переменные окружения
Движок (packages/engine/.env)# Sentinel Execution MCP
Готовый к продакшену контур управления алгоритмической торговлей, предоставленный в виде MCP-сервера, — чтобы Claude мог управлять списками наблюдения, классифицировать рыночные режимы, проверять риски и отправлять бумажные заявки через естественный язык.
Что это
Sentinel — это монорепозиторий из двух пакетов:
Пакет | Язык | Роль |
| Python 3.12 / FastAPI | Вся торговая логика: проверка рисков, классификация режимов, жизненный цикл заявок, журнал аудита, управление стратегиями |
| TypeScript / Node 20 | Тонкий MCP-сервер, который направляет 40+ инструментов в движок через HTTP. Здесь нет никакой торговой логики. |
Claude (или любой MCP-совместимый агент) взаимодействует с MCP-сервером. В свою очередь, MCP-сервер взаимодействует с движком. Движок владеет базой данных и кэшем.
Архитектура
Claude Desktop (or any MCP agent)
│
│ MCP protocol (stdio or SSE)
▼
┌─────────────────────────┐
│ MCP Server │ TypeScript · Zod validation · tool routing
│ (packages/mcp) │
└────────────┬────────────┘
│ HTTP REST (localhost:8100)
▼
┌─────────────────────────┐
│ Engine API │ Python · FastAPI · all trading logic
│ (packages/engine) │
└──────────┬──────────────┘
│
┌───────┴────────┐
▼ ▼
PostgreSQL Redis
(orders, (kill switch,
positions, rate limits,
strategies, cache)
audit log)Если движок недоступен, каждый вызов инструмента MCP немедленно возвращает ошибку. Никакого резервного механизма или частичного выполнения не предусмотрено.
Быстрый старт (Docker — рекомендуется)
Самый быстрый способ начать работу. Требуются Docker и Node.js 20+.
# 1. Clone and configure
git clone https://github.com/rohith1125/sentinel-execution-mcp.git
cd sentinel-execution-mcp
cp .env.example .env # defaults work out of the box — no edits needed
# 2. Start Postgres + Redis + engine (runs migrations automatically)
docker compose -f docker/docker-compose.yml up -d db redis engine
# Wait ~10 seconds, then verify the engine is healthy:
curl http://localhost:8100/health
# {"status": "ok", "provider": "mock", ...}
# 3. Build the MCP server (one-time)
cd packages/mcp
npm install
npm run buildЗатем добавьте Sentinel в Claude Desktop (см. Подключение Claude Desktop ниже) и перезапустите Claude. Всё — все 40 инструментов активны.
Ручная настройка (без Docker)
Используйте этот вариант, если у вас уже запущены Postgres и Redis локально.
Предварительные требования:
Зависимость | Минимальная версия | Примечания |
Python | 3.12 | Среда выполнения движка — проверьте с помощью |
Node.js | 20 | Среда выполнения MCP-сервера |
PostgreSQL | 15+ | Основное хранилище данных |
Redis | 7+ | Аварийный рубильник и кэш |
1. Клонирование и настройка
git clone https://github.com/rohith1125/sentinel-execution-mcp.git
cd sentinel-execution-mcp
cp .env.example .env
# Default values work for local paper-trading development — no edits required2. Настройка движка
cd packages/engine
python3.12 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"3. Запуск миграций базы данных
# From packages/engine with the venv active
alembic upgrade head4. Запуск движка
uvicorn sentinel.api:app --reload --port 8100Проверьте, что он работает:
curl http://localhost:8100/health
# {"status": "ok", "env": "paper"}5. Сборка и запуск MCP-сервера
Откройте второй терминал:
cd packages/mcp
npm install
npm run build
npm run dev # stdio transport — for direct Claude Desktop integrationПодключение Claude Desktop
Добавьте следующее в файл конфигурации Claude Desktop.
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Получите правильный путь, выполнив это в терминале:
echo "$(pwd)/packages/mcp/dist/index.js"Затем вставьте его в конфигурацию:
{
"mcpServers": {
"sentinel": {
"command": "node",
"args": ["/absolute/path/to/sentinel-execution-mcp/packages/mcp/dist/index.js"],
"env": {
"ENGINE_BASE_URL": "http://localhost:8100",
"APP_ENV": "paper"
}
}
}
}После сохранения перезапустите Claude Desktop. В поле ввода чата появится значок молотка (🔨) — нажмите его, чтобы убедиться, что все 40 инструментов Sentinel загружены.
Справочник MCP-инструментов
Sentinel предоставляет более 40 инструментов в девяти категориях. Имя MCP-сервера — sentinel.
Категория | Инструмент | Описание |
Watchlist |
| Добавляет тикеры в торговый список наблюдения, возможно, в указанную группу. |
| Удаляет тикеры из списка наблюдения; они больше не появляются при сканировании стратегий. | |
| Показывает активные тикеры, опционально отфильтрованные по группе. | |
| Получает детапись по конкретному тикеру. | |
| Показывает все именованные группы списка наблюдения. | |
| Обновляет заметки или привязку к группе для тикера. | |
Market Data |
| Последние котировки и данные по сделкам для одного или нескольких тикеров. |
| История OHLCV- баров с настраиваемым таймфреймом. | |
| Спред ask/bid в реальном времени по тикеру. | |
| Проверка подключения к провайдеру рыночных данных. | |
Regime |
| Классифицирует текущий рыночный режим на основе ATR, ADX, RSI, ширины полос Боллинджера, показателя Херста, VWAP и ценовой эффективности. |
| Получает исторические снимки режимов для тикера. | |
Strategy |
| Сканирует список наблюдения на сигналы по одной или нескольким стратегиям. |
| Оценивает конкретный тикер по конкретной стратегии. | |
| Перечисляет все зарегистрированные стратегии и их текущее состояние. | |
Risk / Kill Switch |
| Выполняет все 13+ проверок рисков для предлагаемой сделки перед её отправкой. |
| Возвращает текущее состояние всех kill switch. | |
| Включает kill switch глобально, для конкрет тех стратегий или для конкретного тикера. | |
| Отключает kill switch (необходима явная причина). | |
| Сводка текущей валовой и чистой экспозиции. | |
| Текущая дневная просадка относительно заданных лимитов. | |
Portfolio |
| Полный обзор счёта: стоимость, денежные средства, капитал, прибыль/убыток, покупательная способность. |
| Все открытые позиции с нереализованным P&L. | |
| История закрытых позиций с реализованным P&L. | |
Execution |
| Отправляет бумажную торговую заявку (рыночную, лимитную, стоп- или стоп-лимит). |
| Отменяет ожидающую или частично исполнённую заявку по ID. | |
| Возвращает текущее состояние конкретной заявки. | |
| Список заявок с фильтрацией по статусу, тикеру или периоду времени. | |
| Запускает ручную сверку состояний движка и брокера. | |
Governance |
| Регистрирует новую стратегию в статусе |
| Продвигает стратегию: Draft → Research → Backtest → Paper → Live | |
| Немедленно приостанавливает стратегию в статусе Live или Paper. | |
| Перечисляет все стратегии с их текущим статусом жизненного цикла. | |
| Проверяет, соответствует ли стратегия условиям для повышения статуса. | |
Audit |
| Полное, читаемое объяснение торгового решения по ID события аудита. |
| Самые последние события аудита с фильтром по тикеру или стратегии. | |
| История завершённых сделок с результатами. | |
| Сырые записи журнала решений за определённый период времени. | |
| Сводная статистика: win rate, средний P&L, прокси Шарпа. | |
| Экспорт записей аудита в CSV за диапазон дат. |
Полная документация с параметрами схем: docs/mcp-tools.md
Переменные окружения
Движок (packages/engine/.env)
Переменная | По умолчанию | Описание |
|
|
|
|
| Строка подключения PostgreSQL |
|
| Строка подключения Redis |
|
|
|
| (empty) | Требуется, когда |
| (empty) | Требуется, когда |
|
| Используйте |
|
| Максимальный размер позиции как доля капитала счета (5%) |
|
| Жесткий дневной лимит убытков (2%); торговля останавливается при его превышении |
|
| Максимальная валовая экспозиция по всем позициям (80%) |
|
| Максимальное количество одновременно открытых позиций |
|
| Максимальный риск на одну сделку (1%) |
|
| Имитируемая задержка исполнения в режиме бумажной торговли |
|
| Имитируемое проскальзывание в базисных пунктах |
|
| Установите |
| (empty) | Сгенерируйте с помощью |
| (empty) | JSON-массив дополнительных записей клиентских ключей |
MCP-сервер (packages/mcp/.env)
Переменная | По умолчанию | Описание |
|
| Базовый URL работающего сервиса движка |
Смотрите .env.example в корне репозитория для полной аннотированной справки.
Пример рабочего процесса (бумажная торговля)
# 1. Add symbols
watchlist.add(symbols=["NVDA", "MSFT", "AAPL"], group="tech")
# 2. Classify regime
regime.evaluate(symbol="NVDA", timeframe="1Day")
# 3. Scan for signals
strategy.scan(group="tech", strategy="momentum_v1")
# 4. Validate before submitting
risk.validate_trade(symbol="NVDA", side="buy", qty=10, order_type="market")
# 5. Submit paper order
execution.paper_order(symbol="NVDA", side="buy", qty=10, order_type="market")
# 6. Review portfolio
portfolio.status()
# 7. Inspect the audit trail
audit.recent_events(symbol="NVDA", limit=1)
audit.explain_trade(audit_event_id="evt-...")Запуск тестов
Движок (Python)
cd packages/engine
source .venv/bin/activate
pytest tests/ -vMCP-сервер (TypeScript)
cd packages/mcp
pnpm testПолный CI (линт + проверка типов + тесты)
# From repo root
make checkСтруктура репозитория
sentinel-execution-mcp/
├── packages/
│ ├── engine/ # Python FastAPI trading engine
│ │ ├── sentinel/ # Application source
│ │ ├── tests/ # Pytest test suite
│ │ └── alembic/ # Database migrations
│ └── mcp/ # TypeScript MCP server
│ └── src/
│ └── tools/ # One file per tool category
├── docker/ # Dockerfiles and docker-compose
├── docs/ # Architecture, tool reference, risk model
├── scripts/ # Setup and reset helpers
└── .env.example # Annotated environment variable referenceПредупреждение о безопасности
Это программное обеспечение предназначено только для бумажной торговли и исследований, если вы полностью не понимаете каждый компонент. Установка APP_ENV=live с реальными учетными данными Alpaca приведет к размещению реальных заказов на реальные деньги. Жестко заданные лимиты риска являются консервативными значениями по умолчанию — убедитесь, что они соответствуют вашей собственной толерантности к риску перед использованием. Авторы не несут ответственности за финансовые потери.
Лицензия
MIT. См. LICENSE.
This server cannot be installed
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
- AlicenseBqualityDmaintenanceEnables AI assistants like Claude to interact with Paper's trading platform API using natural language, allowing users to manage accounts, portfolios, trades, and access market data through conversational requests.231523MIT
- AlicenseNot gradedqualityDmaintenanceEnables natural language trading operations through Alpaca's Trading API, supporting stocks, options, crypto, portfolio management, and real-time market data access through AI assistants like Claude.MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to autonomously trade, analyze, and manage positions on Polymarket prediction markets with 45 comprehensive tools covering market discovery, analysis, trading execution, portfolio management, and real-time monitoring with enterprise-grade safety features.MIT
- AlicenseBqualityAmaintenanceProvides 32 trading analysis tools for AI-powered market analysis, including real-time data, technical indicators, options Greeks, scanners, and Interactive Brokers portfolio management, all accessible via natural language in Claude Desktop.35328MIT
Related MCP Connectors
Trade Robinhood through natural language in Claude Code.
Global stock research, ML forecasts, valuation signals, screeners & portfolio tracking in Claude
Build, backtest, and deploy quantitative trading strategies from your AI agent.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/rohith1125/sentinel-execution-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server