AI App MCP
A production-ready Python MCP server supporting stdio and Streamable HTTP transports, providing tools for health check, user query normalization, knowledge base search, document retrieval, and RAG prompt construction.
README
AI App MCP
A production-ready Python MCP server that supports both stdio and Streamable HTTP transports.
Features
health_check: return server health and runtime configuration.normalize_user_query: normalize user text before retrieval or agent routing.search_knowledge_base: search local.md,.txt, and.jsonfiles.get_document: read a safe document from the configured knowledge directory.build_rag_prompt: build a grounded RAG prompt.config://runtime: expose safe runtime configuration.rag_answer_prompt: reusable RAG prompt template.
Install
cd D:\projects\codex\single\mcp
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e ".[dev]"
Copy-Item .env.example .env
Transport 1: stdio
Use stdio when an AI client starts this MCP server as a local child process.
ai-app-mcp --transport stdio
Equivalent module command:
python -m ai_app_mcp.server --transport stdio
Client configuration example:
{
"mcpServers": {
"ai-app-mcp": {
"command": "python",
"args": [
"-m",
"ai_app_mcp.server",
"--transport",
"stdio"
],
"env": {
"MCP_KNOWLEDGE_DIR": "D:/projects/codex/single/mcp/knowledge"
}
}
}
}
In stdio mode, stdout is used for MCP protocol messages. Logs are written to stderr.
Transport 2: Streamable HTTP
Use Streamable HTTP for MCP Inspector, HTTP debugging, or service-to-service integration.
ai-app-mcp --transport streamable-http --host 127.0.0.1 --port 8000
Equivalent module command:
python -m ai_app_mcp.server --transport streamable-http --host 127.0.0.1 --port 8000
MCP endpoint:
http://127.0.0.1:8000/mcp
Do not open this endpoint directly as a normal web page. It is a JSON-RPC MCP endpoint and requires an MCP client.
Debug With MCP Inspector
Start this MCP server:
ai-app-mcp --transport streamable-http --host 127.0.0.1 --port 8000
Start Inspector:
npx -y @modelcontextprotocol/inspector
Open:
http://localhost:6274
Use:
Transport: Streamable HTTP
URL: http://127.0.0.1:8000/mcp
Environment
Copy .env.example to .env and adjust values:
MCP_SERVER_NAME=ai-app-mcp
MCP_LOG_LEVEL=INFO
MCP_KNOWLEDGE_DIR=./knowledge
MCP_MAX_TEXT_CHARS=12000
Knowledge Directory
By default, the server reads files from ./knowledge. Only .md, .txt, and .json files are allowed. Paths are resolved safely so clients cannot read files outside the knowledge directory.
Test
pytest
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.