sentinel
Sentinel Execution MCP
Un plano de control de trading algorítmico de nivel de producción expuesto como un servidor MCP — para que Claude pueda gestionar listas de seguimiento, clasificar regímenes de mercado, validar el riesgo y enviar órdenes de paper trading mediante lenguaje natural.
Qué Es
Sentinel es un monorepo de dos paquetes:
Paquete | Lenguaje | Función |
| Python 3.12 / FastAPI | Toda la lógica de trading: comprobaciones de riesgo, clasificación de régimen, ciclo de vida de órdenes, diario de auditoría y gobernanza de estrategias |
| TypeScript / Node 20 | Servidor MCP ligero que enruta más de 40 herramientas al motor mediante HTTP. Aquí no reside ninguna lógica de trading |
Claude (o cualquier agente compatible con MCP) se comunica con el servidor MCP. El servidor MCP se comunica con el motor. El motor posee la base de datos y la caché.
Related MCP server: Alpaca MCP Server
Arquitectura
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)Si el motor no está disponible, cada llamada a una herramienta MCP devuelve un error de inmediato. No hay respaldo ni ejecución parcial.
Inicio rápido (Docker — recomendado)
La forma más rápida de ponerse en marcha. Requiere Docker y 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 buildAñade Sentinel a Claude Desktop (consulta Conectar Claude Desktop más abajo) y reinicia Claude. Eso es todo: las 40 herramientas están operativas.
Configuración manual (sin Docker)
Usa esta opción si tienes Postgres y Redis ya corriendo localmente.
Prerrequisitos:
Dependencia | Versión mínima | Notas |
Python | 3.12 | Entorno de ejecución del motor — comprueba con |
Node.js | 20 | Entorno de ejecución del servidor MCP |
PostgreSQL | 15+ | Almacén de datos principal |
Redis | 7+ | Interruptor de emergencia y caché |
1. Clona y configura
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. Configura el motor
cd packages/engine
python3.12 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"3. Ejecuta las migraciones de la base de datos
# From packages/engine with the venv active
alembic upgrade head4. Arranca el motor
uvicorn sentinel.api:app --reload --port 8100Verifica que está en marcha:
curl http://localhost:8100/health
# {"status": "ok", "env": "paper"}5. Compila y arranca el servidor MCP
Abre un segundo terminal:
cd packages/mcp
npm install
npm run build
npm run dev # stdio transport — for direct Claude Desktop integrationConectar Claude Desktop
Añade lo siguiente al archivo de configuración de tu Claude Desktop.
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Obtén la ruta correcta ejecutando esto en tu terminal:
echo "$(pwd)/packages/mcp/dist/index.js"Luego pégalo en el archivo de configuración:
{
"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"
}
}
}
}Reinicia Claude Desktop después de guardar. Deberías ver un icono de martillo (🔨) en el campo de entrada del chat; haz clic en él para confirmar que las 40 herramientas de Sentinel están cargadas.
Referencia de herramientas MCP
Sentinel expone más de 40 herramientas en nueve categorías. El nombre del servidor MCP es sentinel.
Categoría | Herramienta | Descripción |
Lista de seguimiento |
| Añade símbolos a la lista de seguimiento, opcionalmente asignados a un grupo |
| Elimina símbolos; dejarán de aparecer en los análisis de estrategias | |
| Lista los símbolos activos, opcionalmente filtrados por grupo | |
| Obtiene los detalles de un único símbolo | |
| Lista todos los grupos de la lista de seguimiento | |
| Actualiza las notas o la asignación de grupo de un símbolo | |
Datos de mercado |
| Última cotización y datos de operaciones de uno o más símbolos |
| Historial de barras OHLCV con marco temporal configurable | |
| Spread bid/ask en tiempo real para un símbolo | |
| Comprueba la conectividad del proveedor de datos de mercado | |
Régimen |
| Clasifica el régimen de mercado actual mediante ATR, ADX, RSI, Bollinger Width, Hurst Exponent, VWAP y Price Efficiency |
| Recupera instantáneas históricas del régimen de un símbolo | |
Estrategia |
| Analiza la lista de seguimiento en busca de señales de una o más estrategias |
| Evalúa un único símbolo contra una estrategia concreta | |
| Lista todas las estrategias registradas y su estado actual | |
Riesgo / Interruptor de emergencia |
| Ejecuta las más de 13 comprobaciones de riesgo sobre una operación propuesta antes de enviarla |
| Obtiene el estado actual de todos los interruptores de emergencia | |
| Activa un interruptor de emergencia a nivel global, por estrategia o por símbolo | |
| Desactiva un interruptor de emergencia (requiere un motivo explícito) | |
| Resumen actual de la exposición bruta y neta | |
| Drawdown diario actual en comparación con los límites configurados | |
Cartera |
| Vista general de la cuenta: valor, efectivo, capital, P&L y poder de compra |
| Todas las posiciones abiertas con P&L no realizado | |
| Historial de posiciones cerradas con P&L realizado | |
Ejecución |
| Envía una orden de paper trading (market, limit, stop, stop-limit) |
| Cancela una orden pendiente o parcialmente ejecutada por su ID | |
| Obtiene el estado actual de una orden específica | |
| Lista órdenes filtradas por estado, símbolo o rango de fechas | |
| Ejecuta una conciliación manual entre el estado del motor y el bróker | |
Gobernanza |
| Registra una nueva estrategia en estado |
| Promueve una estrategia: Draft → Research → Backtest → Paper → Hidereokeriable | |
| Suspende al instante una estrategia en fase Live o Paper | |
| Lista todas las estrategias con su estado actual de ciclo de vida | |
| Comprueba si una estrategia cumple los criterios para promocionarse | |
Auditaría |
| Explicación completa legible para una decisión de trading mediante el ID del evento de auditoría |
| Eventos de auditoría más recientes, filtrables por símbolo o estrategia | |
| Historial de operaciones completadas con sus resultados | |
| Entradas del registro de decisiones en crudo para un intervalo de tiempo | |
| Estadísticas agregadas: tasa de aciertos, P&L promedio, proxy de Sharpe | |
| Exporta los registros de auditoría como CSV para un rango de fechas |
Documentación completa de herramientas con esquemas de parámetros:
Variables de entorno
Motor (packages/engine/.env)
Variable | Predeterminado | Descripción |
|
|
|
|
| Cadena de conexión de PostgreSQL |
|
| Cadena de conexión de Redis |
|
|
|
| (vacío) | Requerido cuando |
| (vacío) | Requerido cuando |
|
| Usa |
|
| Tamaño máximo de posición como fracción del capital de la cuenta (5%) |
|
| Límite diario de pérdidas (2%); el trading se detiene si se supera |
|
| Exposición bruta máxima en todas las posiciones (80%) |
|
| Número máximo de posiciones abiertas simultáneamente |
|
| Riesgo máximo por operación individual (1%) |
|
| Latencia de ejecución simulada en modo de paper trading |
|
| Deslizamiento simulado en puntos básicos |
|
| Establecer en |
| (vacío) | Generar con |
| (vacío) | Matriz JSON de registros de claves de cliente adicionales |
Servidor MCP (packages/mcp/.env)
Variable | Predeterminado | Descripción |
|
| URL base del servicio del motor en ejecución |
Consulta .env.example en la raíz del repositorio para la referencia anotada completa.
Flujo de trabajo de ejemplo (Paper Trading)
# 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-...")Ejecución de pruebas
Motor (Python)
cd packages/engine
source .venv/bin/activate
pytest tests/ -vServidor MCP (TypeScript)
cd packages/mcp
pnpm testCI completo (lint + verificación de tipos + pruebas)
# From repo root
make checkEstructura del repositorio
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 referenceDescargo de responsabilidad de seguridad
Este software es solo para paper trading e investigación a menos que comprendas completamente cada componente. Establecer APP_ENV=live con credenciales reales de Alpaca realizará órdenes reales con dinero real. Los límites de riesgo codificados son valores predeterminados conservadores: verifica que coincidan con tu propia tolerancia al riesgo antes de usarlo. Los autores no aceptan ninguna responsabilidad por pérdidas financieras.
Licencia
MIT. Consulta 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