模型上下文协议工具集成

MCP(模型上下文协议)是一个标准协议,用于将AI代理应用程序与外部工具和数据源连接,实现更强大和上下文感知的AI系统。

  • by KrishnakanthYachareni
  • Dockerfile
  • 本地部署
  • 更新于
在 GitHub 查看 krishnakanthyachareni/mcp-servers

使用说明

主控程序🚀

MCP(模型上下文协议)

它不是什么:

  1. 建筑代理框架
  2. 代理商工作方式的根本改变
  3. 一种对代理进行编码的方法

它是什么:

  1. 协议-标准
  2. 集成工具、资源和提示的简单方法
  3. “用于AI应用的USB-C端口”

不兴奋的理由

  1. 这只是一个标准,不是工具本身
  2. LangChain已经拥有庞大的工具生态系统
  3. 您已经可以将任何函数转换为工具

重新感到兴奋

  1. 使集成无摩擦
  2. 它起飞了!爆炸性生态系统
  3. HTML也只是一个标准。

MCP核心概念

(三个组成部分)

  1. 主机 是像Claude或我们的Agent架构这样的LLM应用程序
  2. MCP客户端 位于主机内部,并以1:1的比例连接到MCP服务器
  3. MCP服务器 提供工具、上下文和提示

例子:

  • Fetch是一个 MCP服务器 通过无头浏览器搜索网络
  • 您可以配置 克劳德桌面(主机)运行MCP客户端,然后启动Fetch MCP服务器 在您的计算机上

笔记:

  1. MCP服务器通常在您的计算机上运行。连接到远程MCP服务器不太常见。

  2. 两种“传输”机制: i。 标准输入输出 生成并通过标准输入/输出进行通信 ii。另一个是 SSE(服务器端事件) 使用HTTPS连接流媒体。(服务器将结果流式传输回LLM)。

    iii.当我们使用远程MCP服务器时,SSE将非常有用 iv.在本地工作时,我们可以使用以下任何一种 标准输入输出 或 SSE

为什么要制作MCP服务器

  1. 允许他人整合工具和资源
  2. 始终如一地整合我们所有的MCP服务器
  3. 了解管道(螺母和螺栓)

原因 不 制作MCP服务器

  1. 如果它只适合我们,那么我们可以把工具做成@function_tool装饰器可以把任何函数变成工具。(如果我们使用MCP,它应该是更广泛的使用和共享工具)

参考文献

  1. https://modelcontextprotocol.io/introduction
  2. https://docs.cursor.com/context/model-context-protocol
  3. https://github.com/modelcontextprotocol/quickstart-resources

查看痕迹

https://platform.openai.com/traces

现在看看一些MCP市场

https://mcp.so

https://glama.ai/mcp

https://smithery.ai/

https://huggingface.co/blog/LLMhacker/top-11-essential-mcp-libraries

拥抱面对伟大的社区文章: https://huggingface.co/blog/Kseniase/mcp

模型上下文协议(MCP)有助于将由大型语言模型(LLM)驱动的AI代理应用程序连接到外部工具和数据源,从而实现更强大和上下文感知的AI系统。

原理🤔

此存储库使用独特的基于分支的结构进行学习:

  1. 每 project/* 分支涵盖了特定的MCP功能或概念。
  2. 在每个分支中,提交按时间顺序排列。 按照提交的内容逐一学习主题。

只需查看您想学习的主题的分支,并浏览提交内容!

可用主题(分支)📚

以下是目前可用的主题:

  • project/sse:了解如何使用MCP实现服务器发送事件(SSE)。
  • project/langchain-mcp-adapters:探索将MCP与LangChain适配器集成。
  • project/docker-mcp:了解如何使用Docker将MCP应用程序容器化。

可能会添加更多主题,所以请注意!

先决条件🛠️

开始之前,请确保已安装以下内容:

  • 🐍 Python(3.10或更高版本)
  • 📦 uv (快速Python包安装程序和解析器)
  • ✨ 光标IDE
  • ☁️ 克劳德桌面

入门指南▶️

  1. 克隆存储库:
    git clone <>
    cd mcp-crash-course
    
  2. 选择一个主题并查看分支:
    # Example for the SSE topic
    git checkout project/sse
    
  3. 遵循承诺: 使用 git log --oneline --reverse 查看分支的按时间顺序排列的提交列表。然后,使用 git checkout <commit_hash> 或者你的Git客户端来浏览历史并学习。

贡献🤝

欢迎投稿!如果您想添加新主题或改进现有主题:

  1. 分叉存储库。
  2. 按照命名约定为特征创建新分支: project/your-mcp-feature-name.
  3. 做出改变,确保每次提交都代表学习过程中合乎逻辑的一步。
  4. 对打开Pull Request main 支。