本地JSON-RPC工具集

一个包含十个项目的MCP主题工具集,通过本地JSON-RPC端点提供多种AI工程工具,适用于快速集成和本地开发。

  • by thanhauco
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 thanhauco/mcp-projects

使用说明

MCP项目Monorepo(10个项目)

此monorepo包含 十 面向人工智能工程师的MCP主题项目。每个项目都暴露了一小部分 工具 通过a 本地JSON-RPC端点 (我们最小的“类似MCP”的服务器),并包括一个示例客户端/用法。

注:这是一个实用的、对本地友好的模拟--不 官方的模型上下文协议。它允许您快速将代理主机(Cursor、Claude Desktop、您自己的脚本)连接到工具。

你得到了什么(10个项目)

  1. 100%本地MCP客户端
    一个最小的客户端,可以发现并调用任何本地类似MCP的服务器上的工具(单独运行或与其他服务器一起运行)。

  2. MCP驱动的代理RAG
    用于嵌入的本地Chroma+句子转换器。如果相似性较弱,则返回到存根“网络搜索”。

  3. MCP驱动的财务分析师
    通过yfinance获取OHLC,通过pandas_ta计算RSI/EMA,返回简单的看涨/看跌/中性信号。

  4. MCP驱动的语音代理(DB+回退)
    简单的本地SQLite知识库 query_db(topic);主机应用程序可以添加语音I/O并回退到网络。

  5. 统一MCP服务器(DuckDB)
    使用DuckDB从单个SQL端点查询多个本地文件(CSV/JSON/Parket)。

  6. MCP供电的共享内存层
    共享的本地SQLite KV存储,因此Claude Desktop、Cursor或任何主机都可以共享上下文。

  7. MCP在复杂文档上支持RAG
    PDF → 使用pdfminer的文本,chunk+embed到Chroma,使用工具调用检索top-k上下文。

  8. MCP供电的合成数据发生器
    使用简单的模式通过SDV(CTGAN)生成逼真的表格数据。

  9. MCP驱动的深度研究人员(本地替代方案)
    基本的DuckDuckGo HTML搜索+可读的Markdown提取,用于离线摘要。

  10. MCP供电的评估+遥测
    记录每个工具调用,测量延迟,公开Prometheus指标,并提供一个简单的仪表板进行监控。

布局

common/mcp_core/      # Lightweight JSON-RPC impl + tool registry + client
01-local-mcp-client/
02-agentic-rag/
03-financial-analyst/
04-voice-agent/
05-unified-server/
06-shared-memory/
07-complex-docs-rag/
08-synthetic-data/
09-deep-researcher/
10-evals-telemetry/

视觉效果(高级)

  ┌──────────────┐      HTTP JSON-RPC      ┌─────────────────────┐
  │  MCP Host    │ ───────────────────────> │  MCP-like Tool Svc  │
  │ (Cursor/etc) │                          │  (FastAPI server)   │
  └──────────────┘                          └─────────────────────┘
            ▲                                        │
            │                                        │ tool:ingest/search/...
            │                                        ▼
            │                                ┌──────────────────┐
            │                                │ Local Backends   │
            │                                │ (DB, Vector,...) │
            │                                └──────────────────┘

RAG代理

Query ─> Vector DB (Chroma) ──┐
                              ├─> if low score ⇒ Fallback (stub web search)
Docs ─> Embed & Chunk  ───────┘

财务分析师

Ticker → yfinance → indicators (EMA/RSI) → signal (bullish/bearish/neutral)

共享内存层

[Claude Desktop] ↔
                  \           ┌───────────────┐
                   \─────────>│ SQLite (KV)  │<─────────/
                  /           └───────────────┘
[Cursor]        ↔

如何运行(所有项目)

每个项目都有自己的README.md,但它们都遵循相同的模式:

cd 02-agentic-rag           # pick a project folder
python -m venv .venv
source .venv/bin/activate   # on Windows: .venv\Scripts\activate
pip install -r requirements.txt
uvicorn app:app --reload --port 8000
# open http://127.0.0.1:8000/health or POST to /rpc with the JSON-RPC body

这些是如何联系在一起的

monorepo包含一个微小的“类似MCP”的内核 common/mcp_core:

  • 服务器.py --FastAPI JSON-RPC端点(/rpc) + /tools 发现
  • tools.py --死简单 @tool("name") 装饰器和注册表
  • 客户端.py --用于列出/调用工具的轻量级HTTP客户端
  • protocol.py --最小JSON-RPC 2.0请求/响应模型

这是故意的 不 官方MCP规范——这是一个实用的本地垫片,因此您可以快速一致地将代理/主机(Cursor脚本、Claude Desktop、您自己的应用程序)连接到本地工具。

快速视觉

MCP Host (Cursor / Claude Desktop / your app)
            │
            │  HTTP JSON-RPC (/rpc)
            ▼
   FastAPI MCP-like Tool Server
            │
            ├── Vector DB (Chroma)
            ├── DuckDB / SQLite
            ├── yfinance / pandas_ta
            ├── SDV (synthetic data)
            └── Prometheus + Telemetry

玩得开心