MCP-server-Python
by ShivamPansuriya
Overview
A modular, scalable system for resolving natural language entity names to IDs using Elasticsearch fuzzy matching with disambiguation support, acting as a backend for AI agents.
Installation
python mcp_server.pyEnvironment Variables
- ES_HOST
- ES_PORT
- MOTADATA_SERVER_URL
- MOTADATA_ACCESS_TOKEN
- MOTADATA_CLIENT_ID
- MOTADATA_CLIENT_SECRET
Security Notes
Critical vulnerability: `api_client.py` disables SSL certificate verification (`verify=False`) for `httpx.AsyncClient`, making the system vulnerable to Man-in-the-Middle (MITM) attacks. Hardcoded secret: `websocket_client.py` contains a hardcoded `client_secret` ("IZqQXkqA1tGLIBRpYs"). Active hardcoded test token: `dynamic_tool_middleware.py` uses a hardcoded authentication token for all requests (`on_list_tools`, `on_call_tool`), bypassing normal authentication, which is a major security flaw even if intended for testing. Exposure risk: Elasticsearch and WebSocket server credentials/endpoints are used; their security depends on the external infrastructure.
Similar Servers
bifrost
A high-performance AI gateway with a unified interface for multiple LLM providers, offering real-time monitoring and configuration.
mcp-redis
Provides a natural language interface for AI agents to manage, search, and interact with structured and unstructured data in a Redis database.
Context-Engine
Self-improving code search and context engine for IDEs and AI agents, providing hybrid semantic/lexical search, symbol graph navigation, and persistent memory.
RTFD
Provides AI coding agents with real-time access to up-to-date library and service documentation from various package ecosystems and cloud platforms to prevent LLM hallucinations and use of outdated APIs.