YM

yh008/mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

0 stars 0 forks 质量 60 趋势 4

mcp

概览

A production-ready Python MCP server that supports both stdio and Streamable HTTP transports. - 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 .json files. - 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. Use stdio when an AI client starts this MCP server as a local child process. In stdio mode, stdout is used for MCP protocol messages. Logs are written to stderr. Use Streamable HTTP for MCP Inspector, HTTP debugging, or service-to-service integration. Do not open this endpoint directly as a normal web page. It is a JSON-RPC MCP endpoint and requires an MCP client. Copy .env.example to .env and adjust values: By default, the server reads files from .

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 .json files.
  • 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
在 GitHub 查看完整 README

安装

npx -y @modelcontextprotocol/inspector
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "ai-app-mcp": { "command": "python", "args": [ "-m", "ai_app_mcp.server", "--transport", "stdio" ], "env": { "MCP_KNOWLEDGE_DIR": "D:/projects/codex/single/mcp/knowledge" } } } }