模型上下文协议知识库

一个关于模型上下文协议(MCP)的个人和公共知识库,用于解释MCP的通信流程、工具调用和结构化交互。

  • by EXPESRaza
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 expesraza/mcp-knowledge-base

使用说明

MCP知识库

📌 为什么选择这个存储库?

目的:
该知识库是一个围绕 模型上下文协议(MCP) --使LLM能够通过结构化交互调用工具的新兴标准。

随着我加深自己的理解,它正在开发中,可能包含概念差距或早期解释,这些将随着MCP的发展而更新。

该回购将包括:

  • MCP通信流程说明
  • 显示主机、服务器、LLM和工具之间交互的图表
  • 模拟MCP管道的Python代码示例
  • 论文或讨论的注释和参考
  • 在MCP中探索工具链、缓存和状态管理等新思想的地方

🔁 模型上下文协议的工作原理

以下是基于早期实验的MCP生命周期的简化解释:

  1. 💬 用户输入:用户提供查询(例如,在VS Code或浏览器IDE中——这充当 MCP主机).
  2. 📡 工具发现:主机向 MCP服务器 发现可用的工具或插件。
  3. 📤 查询调度:主机将用户查询和工具元数据传递给 LLM.
  4. 🧠 工具选择:LLM选择一个或多个工具来完成查询(例如,天气API或计算器)。
  5. 🛠️ 工具执行:主机通过调用MCP服务器来执行工具。
  6. 📥 结果处理:工具返回其结果;主机将其提供回LLM。
  7. ✅ 最终输出LLM会给出一个完整的答案,其中包括所有必要的上下文。

🧪 示例和模拟

在 examples/ 文件夹:

  • basic_mcp_demo.py:将添加MCP主机和服务器通信的最小模拟
  • tool_plugin_example.py:WILL演示工具注册表和调用
  • mcp_host_server_flow.py:将展示从用户输入到LLM响应的完整生命周期

🧱 概念和构建块

  • 工具LLM可以调用外部服务(API、数据库、函数)以扩展其功能。
  • 主机:LLM操作和显示结果的界面环境。
  • 服务器:中介工具和处理调用物流的中间件。
  • 模式:用于构造请求和响应的JSON模式或数据格式。
  • 上下文处理:确保法学硕士能够获得连贯响应的先前工具调用。

✅ 建议的回购结构

mcp-knowledge-base/
│
├── README.md
├── diagrams/
│   └──                       # Any visual explanations
├── examples/
│   ├──                       # Minimal working example
│   └── 
├── notes/
│   ├──                       # Raw notes, links, ideas
│   └── 
├── schemas/
│   └──                       # Schemas like Pydantic models
├── utils/
│   └──                       # Simulated tools or services
└── LICENSE

---

## 🗂️ Related Projects and References

- LangChain's tool calling: https://docs.langchain.com
- OpenAI's Function Calling: https://platform.openai.com/docs/guides/function-calling
- Future MCP Spec links (to be added)
- Community discussions, notes in `notes/` folder

---

Stay tuned — this repo will evolve as I learn more and MCP matures!