Token导航 LogoToken导航TokenDH.com
MCP History Bot logo
AI代理stdio官方级别未说明来源级核验

MCP History Bot

MCP Server

一个基于MCP协议的多代理历史问答系统,通过动态路由用户查询到特定领域的代理服务器,提供印度历史和欧洲历史的问答服务。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
AI代理Python向量搜索知识管理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

sashwatjain

提供方

sashwatjain

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m servers.indian_history.server

详细介绍

🧠 MCP历史机器人(MCP兼容多代理系统)

一个模块化的多智能体历史问答系统,灵感来自 模型上下文协议(MCP).

本项目演示了MCP概念(客户端、服务器、工具、代理、路由)如何在 稳定、生产就绪的方式 使用 HTTP传输,同时与MCP的设计理念完全兼容。

______________________________________________________________________

🚀 项目概述

MCP历史机器人 通过动态地将用户查询路由到正确的历史域来回答来自不同历史域的问题 领域特定代理.

当前支持的域:

  • 🇮🇳 印度历史
  • 🇪🇺 欧洲历史

每个域都作为一个 独立服务器(代理) 支持:

  • 基于PDF的知识
  • 矢量搜索(ChromaDB)
  • 嵌入模型(句子转换器)

A中心 客户端路由器代理(基于LLM) 决定呼叫哪个服务器。

______________________________________________________________________

🧠 为什么MCP兼容而不是纯MCP?

虽然MCP提供了一种强大的协议, 基于stdio的MCP在Windows上不稳定 MCP HTTP支持因版本而异。

确保:

  • 稳定性
  • 可重复性
  • 与跨平台支持

我们实施了:

  • 通过FastAPI进行HTTP传输
  • 架构级别的严格MCP语义

这允许:

  • 稍后无缝迁移到真正的MCP HTTP
  • 明确代理边界
  • 清洁工具合同
  • 可靠的地方发展

______________________________________________________________________

🧩 本项目中使用的MCP概念

MCP概念实施
客户client/chatbot_client.py
服务器每个域的FastAPI应用程序
工具HTTP端点 /tools/*
工具输入结构化JSON
工具输出检索到的上下文
代理特定于域的服务器
路由器代理基于LLM的决策逻辑
传输HTTP(FastAPI)
上下文存储ChromaDB

______________________________________________________________________

🏗️ 建筑

User ↓ Client (Router Agent) ↓ LLM decides domain ↓ ├── Indian History Server (Agent) └── European History Server (Agent) ↓ Vector Search (ChromaDB) ↓ Context ↓ LLM Answer Generation ↓ User

______________________________________________________________________

📁 项目结构

mcp-history-bot/ │ ├── client/ │ └── chatbot_client.py # Router + chatbot logic │ ├── servers/ │ ├── indian_history/ │ │ ├── server.py # Indian history agent │ │ ├── ingest.py # PDF ingestion │ │ └── chroma_db/ │ │ │ └── european_history/ │ ├── server.py # European history agent │ ├── ingest.py │ └── chroma_db/ │ ├── contracts/ │ └── tools.py # Tool schemas (MCP-style) │ ├── shared/ │ └── llm.py # Local LLM interface (Ollama) │ ├── requirements.txt └── README.md

______________________________________________________________________

⚙️ 技术栈

- **Python 3.10**
- **FastAPI** – HTTP transport
- **ChromaDB** – Vector database
- **SentenceTransformers** – Embeddings
- **Ollama (LLaMA-3)** – Local LLM
- **Requests** – Client-side HTTP calls
- **Uvicorn** – ASGI server

______________________________________________________________________

🧪 它是如何工作的(一步一步)

1. User asks a question
2. Client sends question to an LLM router
3. Router decides:
- `india`
- `europe`
- `none`
4. Client calls the corresponding agent server
5. Agent:
- Converts question to embedding
- Retrieves relevant chunks from ChromaDB
- Returns context
6. Client asks LLM to answer using **only that context**
7. Final answer is shown to the user

______________________________________________________________________

▶️ 运行项目

1.️⃣ 启动印度历史服务器

python -m servers.indian_history.server

2.️⃣ 启动欧洲历史服务器

python -m servers.european_history.server

3.️⃣ 启动聊天机器人客户端

python -m client.chatbot_client

______________________________________________________________________

🏷️ 版本控制

v0.3.0-mcp-compatible-http-multiserver
  • MCP兼容架构
  • 稳定的HTTP传输
  • 多代理支持

______________________________________________________________________

🔮 未来改进

  • 用真正的MCP HTTP替换HTTP传输
  • 添加基于置信度的路由
  • 添加并行代理调用
  • 提高PDF分块质量
  • 添加web UI(Gradio/React)
  • 代理间通信

______________________________________________________________________

📌 关键收获

  • MCP是关于 建筑,而非交通
  • 工具应该执行,而不是推理
  • 代理应该是隔离和可替换的
  • 路由是一个首要问题
  • 稳定性比纯度更重要

______________________________________________________________________

🧠 灵感

灵感来源:

  • 模型上下文协议(MCP)
  • 基于代理的人工智能系统
  • 模块化微服务架构
  • 基于RAG的知识系统

______________________________________________________________________

目录标签

目录标签

AI代理Python向量搜索知识管理多代理系统本地部署历史问答MCP协议知识库

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP