wind_index
Servicio MCP de datos básicos de índices bursátiles WIND
Este es un servicio MCP de solo lectura que proporciona la información básica de índices bursátiles de la tabla Oracle WIND_IMP.AINDEXDESCRIPTION a agentes inteligentes locales y de la LAN.
Actualmente ofrece dos herramientas:
get_index_by_code(code): consulta exacta porS_INFO_CODE, por ejemplo,000300;search_indices_by_name(name, limit=20): busca por fragmento del nombre del índice y devuelve hasta 100 registros.
El servicio no acepta SQL ni ofrece operaciones de escritura en la base de datos. Las consultas utilizan SQL fijo y parámetros enlazados de Oracle.
Entorno de ejecución
Windows 10/11;
Python 3.11 o superior;
Se dispone de un host de Oracle, un puerto y un Service Name accesibles;
La primera versión utiliza el modo Thin de
python-oracledb, sin necesidad de instalar Oracle Client.
Related MCP server: index-valuation
Instalación
Ejecute en PowerShell:
Set-Location 'D:\1.Project\19.CodexProject\9.MCP'
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install --upgrade pip
.\.venv\Scripts\python.exe -m pip install -e '.[dev]'Copie .env.example a .env y complete la configuración real. En esta máquina ya se ha creado un .env funcional; ese archivo está excluido por .gitignore y no se incluirá en el repositorio.
Modo stdio local
Al iniciarlo manualmente, el proceso espera a que el cliente MCP envíe mensajes desde la entrada estándar:
.\.venv\Scripts\python.exe -m index_mcp.run_stdioCodex usa config.toml a nivel de proyecto o de usuario. La siguiente configuración hace que Codex inicie directamente el servicio local:
[mcp_servers.wind_index]
command = 'D:\1.Project\19.CodexProject\9.MCP\.venv\Scripts\python.exe'
args = ["-m", "index_mcp.run_stdio"]
cwd = 'D:\1.Project\19.CodexProject\9.MCP'
required = true
default_tools_approval_mode = "auto"Tras guardar la configuración, reinicie Codex y compruebe wind_index en /mcp. La documentación oficial de Codex indica que su cliente de escritorio, su CLI y su extensión de IDE comparten la configuración de MCP y admiten tanto stdio como Streamable HTTP: Documentación MCP de Codex.
Modo HTTP de LAN
Inicie el servicio:
Set-Location 'D:\1.Project\19.CodexProject\9.MCP'
.\.venv\Scripts\python.exe -m index_mcp.run_httpConfiguración actual:
Dirección local:
http://127.0.0.1:8765/mcpDirección LAN:
http://172.18.3.114:8765/mcpComprobación de salud:
http://172.18.3.114:8765/healthEl endpoint MCP debe incluir
Authorization: Bearer <MCP_API_KEY>;/healthno requiere API Key y solo devuelve{"status":"ok"}.
Si el firewall de Windows bloquea la conexión LAN, puede abrir el puerto solo para la subred local en PowerShell como administrador:
New-NetFirewallRule -DisplayName 'WIND Index MCP 8765' `
-Direction Inbound -Action Allow -Protocol TCP -LocalPort 8765 `
-RemoteAddress LocalSubnetNo exponga el puerto 8765 directamente a Internet. Cuando se utilice a través de redes no confiables, se debe habilitar HTTPS en un proxy frontal y actualizar a OAuth.
Codex se conecta al servicio de la LAN
Primero, en el equipo donde se ejecuta Codex, configure una variable de entorno cuyo valor sea MCP_API_KEY del .env del servidor:
$env:WIND_INDEX_MCP_API_KEY = '<从服务端安全复制 API Key>'A continuación, configúrelo en config.toml de Codex:
[mcp_servers.wind_index_lan]
url = "http://172.18.3.114:8765/mcp"
bearer_token_env_var = "WIND_INDEX_MCP_API_KEY"
required = true
default_tools_approval_mode = "auto"La opción oficial bearer_token_env_var lee el Bearer Token desde una variable de entorno, evitando escribir la clave directamente en config.toml. Los demás clientes MCP que admitan Streamable HTTP solo necesitan usar la misma URL y establecer el mismo encabezado de solicitud Authorization.
Verificación
Ejecute las pruebas automatizadas:
.\.venv\Scripts\python.exe -m pytestVerifique la llamada de extremo a extremo de stdio:
.\.venv\Scripts\python.exe .\scripts\smoke_test.py stdioUna vez iniciado el servicio HTTP, verifíquelo desde otra ventana de PowerShell:
.\.venv\Scripts\python.exe .\scripts\smoke_test.py httpOpciones de configuración
Variable | Descripción | Predeterminado/Ejemplo |
| Host de Oracle |
|
| Puerto de Oracle |
|
| Service Name de Oracle |
|
| Cuenta de solo lectura | Obligatorio |
| Contraseña de la base de datos | Obligatorio, secreto |
| Mínimo de conexiones |
|
| Máximo de conexiones |
|
| Tiempo de espera de TCP/obtención de conexión |
|
| Tiempo de espera de una llamada Oracle |
|
| Dirección de escucha HTTP |
|
| Puerto HTTP |
|
| Ruta MCP |
|
| Clave de API Bearer HTTP | Al menos 32 caracteres |
| Lista blanca de hosts, separada por comas |
|
| Nivel de registro |
|
Si DHCP provoca un cambio en la IP de LAN del servidor, deberá actualizar a la vez MCP_ALLOWED_HOSTS en .env y las URL de los clientes.
Rotación de API Key
Genere una nueva clave:
.\.venv\Scripts\python.exe -c "import secrets; print(secrets.token_urlsafe(48))"Escriba la salida en MCP_API_KEY del .env del servidor, reinicie el servicio HTTP y luego actualice las variables de entorno de todos los clientes. No haga commit de la clave en Git, ni la incluya en chats ni en registros.
Ampliar otras tablas
Cree un módulo de dominio independiente para cada tabla nueva o grupo de consultas estrechamente relacionadas:
src/index_mcp/domains/<domain>/
├─ models.py
├─ repository.py
├─ service.py
└─ tools.pyRepository solo puede contener SQL fijo y parametrizado de solo lectura; Service se encarga de la normalización de las entradas y de los límites del negocio; Tools se encarga del contrato MCP. Basta con registrar nuevas herramientas en server.py para reutilizar el pool de conexiones, la autenticación, los registros y los puntos de entrada de doble transporte ya existentes.
Notas de seguridad
.envy.venvestán ignorados por Git;Los registros de stdio se escriben solo en
stderr, sin contaminar el flujo del protocolo MCP;HTTP utiliza Bearer API Key y lista blanca de hosts;
CORS está desactivado por defecto;
La API Key sobre HTTP solo es adecuada para LAN de confianza; un observador de la red aún podría interceptar el tráfico en claro;
La cuenta de la base de datos debe mantener los permisos mínimos de solo lectura en el lado de Oracle.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
- Index OneOAuthio.indexone
Query financial index data, run backtests, and deploy systematic investment strategies on Index One.
Read-only China A-share data for AI agents: market, limit-up, capital flow and disclosures.
Commodity price indices, forward curves and catalog search. Requires a General Index account.
The stock market, in SQL — scan, replay, or subscribe across ~12k US tickers and top 100 cryptos.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables interaction with Oracle databases through MCP by executing SELECT queries, describing table structures, and listing available tables with secure, read-only access.3112MIT
- FlicenseNot gradedqualityDmaintenanceEnables querying index valuations (PE, PB, etc.) for 63 Chinese stock indices, with support for fuzzy search, batch queries, historical data, and trend analysis.1-
- FlicenseNot gradedqualityCmaintenanceA read-only MCP server for exploring and querying Oracle schemas safely. Provides tools for table listing, schema description, column search, and validated SELECT execution.2-
- FlicenseNot gradedqualityBmaintenanceProvides read-only access to a SQL Server investment database, enabling searching symbols, retrieving prices and history, and generating research snapshots.-
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/ryanwu2023/MyMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server