wind_index
WIND Aktienindex-Basisdaten MCP-Dienst
Dies ist ein schreibgeschützter MCP-Dienst, der die Basisinformationen zu Aktienindizes aus der Oracle-Tabelle WIND_IMP.AINDEXDESCRIPTION für lokale und LAN-Agenten bereitstellt.
Derzeit werden zwei Tools angeboten:
get_index_by_code(code): exakte Abfrage nachS_INFO_CODE, z. B.000300;search_indices_by_name(name, limit=20): Suche nach Namensfragmenten von Indizes, maximal 100 Einträge.
Der Dienst akzeptiert kein SQL und bietet keine Datenbankschreibvorgänge an. Abfragen verwenden festes SQL und Oracle-Bindungsparameter.
Laufzeitumgebung
Windows 10/11;
Python 3.11 oder höher;
Es stehen ein erreichbarer Oracle-Host, Port und Service Name bereit;
Die erste Version verwendet den Thin-Modus von
python-oracledb, ohne Oracle Client installieren zu müssen.
Related MCP server: index-valuation
Installation
Führen Sie in PowerShell aus:
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]'Kopieren Sie .env.example zu .env und tragen Sie die echten Konfigurationswerte ein. Auf diesem Rechner wurde bereits eine funktionsfähige .env erstellt; diese Datei wird von .gitignore ausgeschlossen und gelangt nicht ins Repository.
Lokaler Stdio-Modus
Beim manuellen Start wartet der Prozess auf Nachrichten des MCP-Clients über die Standardeingabe:
.\.venv\Scripts\python.exe -m index_mcp.run_stdioCodex verwendet eine projekt- oder benutzerbezogene config.toml. Mit der folgenden Konfiguration startet Codex den lokalen Dienst direkt:
[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"Nach dem Speichern der Konfiguration Codex neu starten und wind_index unter /mcp prüfen. Die offizielle Codex-Dokumentation besagt, dass Desktop-App, CLI und IDE-Erweiterung dieselbe MCP-Konfiguration verwenden und sowohl stdio als auch Streamable HTTP unterstützen: Codex-MCP-Dokumentation.
LAN-HTTP-Modus
Dienst starten:
Set-Location 'D:\1.Project\19.CodexProject\9.MCP'
.\.venv\Scripts\python.exe -m index_mcp.run_httpAktuelle Konfiguration:
Lokale Adresse:
http://127.0.0.1:8765/mcpLAN-Adresse:
http://172.18.3.114:8765/mcpHealth-Check:
http://172.18.3.114:8765/healthDer MCP-Endpunkt muss
Authorization: Bearer <MCP_API_KEY>enthalten;/healtherfordert keinen API-Key und gibt nur{"status":"ok"}zurück.
Falls die Windows-Firewall LAN-Verbindungen blockiert, können Sie in einer PowerShell mit Administratorrechten den Port nur für das lokale Subnetz freigeben:
New-NetFirewallRule -DisplayName 'WIND Index MCP 8765' `
-Direction Inbound -Action Allow -Protocol TCP -LocalPort 8765 `
-RemoteAddress LocalSubnetDer Port 8765 sollte nicht direkt ins öffentliche Internet weitergeleitet werden. Bei der Nutzung über nicht vertrauenswürdige Netzwerke sollte ein vorgelagerter Proxy HTTPS aktivieren und auf OAuth umgestellt werden.
Codex verbindet sich mit dem LAN-Dienst
Setzen Sie auf dem Rechner, auf dem Codex läuft, zuerst eine Umgebungsvariable, deren Wert der MCP_API_KEY aus der serverseitigen .env ist:
$env:WIND_INDEX_MCP_API_KEY = '<从服务端安全复制 API Key>'Konfigurieren Sie dann in der Codex-config.toml:
[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"Die offizielle Konfigurationsoption bearer_token_env_var liest das Bearer-Token aus einer Umgebungsvariable und vermeidet so, den Schlüssel direkt in config.toml zu schreiben. Andere MCP-Clients, die Streamable HTTP unterstützen, verwenden einfach dieselbe URL und setzen denselben Authorization-Header.
Überprüfung
Automatisierte Tests ausführen:
.\.venv\Scripts\python.exe -m pytestEnd-to-End-Aufruf über stdio überprüfen:
.\.venv\Scripts\python.exe .\scripts\smoke_test.py stdioNach dem Start des HTTP-Dienstes in einem weiteren PowerShell-Fenster überprüfen:
.\.venv\Scripts\python.exe .\scripts\smoke_test.py httpKonfigurationsoptionen
Variable | Beschreibung | Standard/Beispiel |
| Oracle-Host |
|
| Oracle-Port |
|
| Oracle-Service-Name |
|
| Schreibgeschütztes Konto | Pflichtfeld |
| Datenbankpasswort | Pflichtfeld, geheim |
| Minimale Anzahl von Verbindungen |
|
| Maximale Anzahl von Verbindungen |
|
| TCP-/Verbindungsabruf-Timeout |
|
| Timeout für einen einzelnen Oracle-Aufruf |
|
| HTTP-Listenadresse |
|
| HTTP-Port |
|
| MCP-Pfad |
|
| HTTP-Bearer-API-Key | mindestens 32 Zeichen |
| Host-Whitelist, durch Kommas getrennt |
|
| Log-Level |
|
Wenn sich die LAN-IP des Servers durch DHCP ändert, müssen MCP_ALLOWED_HOSTS in der .env und die Client-URLs entsprechend aktualisiert werden.
API-Key-Rotation
Neuen API-Key generieren:
.\.venv\Scripts\python.exe -c "import secrets; print(secrets.token_urlsafe(48))"Schreiben Sie die Ausgabe in MCP_API_KEY in der serverseitigen .env, starten Sie den HTTP-Dienst neu und aktualisieren Sie dann die Umgebungsvariablen der Clients. Committen Sie den Key nicht in Git, Chatverläufe oder Protokolle.
Erweiterung um weitere Tabellen
Legen Sie für jede neue Tabelle oder jede Gruppe eng zusammenhängender Abfragen ein eigenes Domänenmodul an:
src/index_mcp/domains/<domain>/
├─ models.py
├─ repository.py
├─ service.py
└─ tools.pyDas Repository darf nur festes, parametrisiertes, schreibgeschütztes SQL enthalten; der Service ist für die Eingabenormalisierung und die fachlichen Grenzen zuständig; die Tools übernehmen den MCP-Vertrag. Durch das Registrieren neuer Tools in server.py können der vorhandene Verbindungspool, die Authentifizierung, die Protokollierung und die beiden Transport-Einstiegspunkte wiederverwendet werden.
Sicherheitshinweise
.envund.venvwerden von Git ignoriert;Stdio-Protokolle schreiben nur auf
stderrund verunreinigen den MCP-Protokollstrom nicht;HTTP verwendet Bearer-API-Key und Host-Whitelist;
CORS ist standardmäßig deaktiviert;
API-Key über HTTP ist nur für vertrauenswürdige LANs geeignet; Lauscher im Netzwerk könnten den unverschlüsselten Verkehr weiterhin abfangen;
Das Datenbankkonto sollte auf Oracle-Seite minimale Nur-Lese-Berechtigungen besitzen.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Query financial index data, run backtests, and deploy systematic investment strategies on Index One.
Read-only cited financial datasets, bounded research queries and source diagnostics.
Pay-per-call x402 stock, ETF, index, FX and crypto quotes, OHLCV history, ticker and coin search.
Commodity price indices, forward curves and catalog search. Requires a General Index account.
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.317 npm2MIT
- 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 gradedqualityDmaintenanceA 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 gradedqualityCmaintenanceProvides read-only access to a SQL Server investment database, enabling searching symbols, retrieving prices and history, and generating research snapshots.-