使用说明
MCP-PYTHON🔃🔏:
以Python的方式实现模型上下文协议。这是一个包含MCP的简单项目。即使是最复杂的模型(通常是LLM🧠) 仍然不知道实时发生了什么。模型知识受到某种限制。因此,当用户的查询涉及实时数据问题时,模型无法提供合理的响应(CoT模型就像让我们幻觉🤪). MCP通过以下方式缩小了这一知识差距 通过用户批准的相关数据填充模型上下文.
设置
1.安装uv
此项目使用 紫外线 用于依赖性管理。确保你有 uv 安装:
2.安装依赖项
从项目根目录运行:
uv sync --project mcp-client
uv sync --project mcp-python
这将安装每个子项目中指定的所有依赖项 uv.lock 文件。
3.陷阱:
- 如果你在安装后遇到任何bug,所有东西都会被跟踪
.log所以不要担心破坏项目🥚, 只是去做并从中学习👍.
内容📃:
我只是在浏览项目的结构并解释它是什么?它是如何使用的?在MCP的宇宙中。如何使用取决于你👊.
mcp客户端: 🤝
主机:
- 应用程序/UI;任何人(最终用户)都可以与进行交互。格雷迪奥担任主持人。主机是包含客户端和模型的主机,就像它的顶层一样。
- 运行任何一个$\downarrow$命令来启动主机。改变
.../server.py匹配mcp服务器的绝对路径。它将创建 格拉迪奥 和 客户端 然后 客户端 将发射 服务器 作为子流程结束 标准输入输出.
uv run mcp-client/host.py --server_command python .../server.py
python mcp-client/host.py --server_command python .../server.py
- 运行$\downarrow$命令中的任何一个来启动主机。它用于客户端与可流式传输的http服务器通信。改变
your_mcp_server_url使用mcp服务器的实际url
uv run mcp-client/host.py --streamablehttp_url your_mcp_server_url
python mcp-client/host.py --streamablehttp_url your_mcp_server_url
客户端:
- 被主人包裹;代表主机启动与服务器的通信。为模型间接处理服务器提供会话/平台。
- 例如,如果LLM想要从浏览器获取一些真实数据,LLM会说,这是从浏览器获取数据的函数,嘿,客户端,我希望你为我执行这个函数,并返回这个函数的结果。客户端将该函数带到服务器,然后服务器执行该函数,并返回该函数的结果。
mcp服务器: ⚙
服务器:
-
您可以将服务器视为一段代码监听👂 让某人联系并工作🏋️♀️ 为他们。我们可以将服务器部署为 可流式传输http 在托管平台或启动服务器中,作为客户端的子流程,通过 标准输入输出.
-
此实现提供了动态方式,因此您可以根据个人需求使用stdio或可流式传输的http服务器。
-
在本地运行中启动可流式传输的http服务器;
python mcp-server/server.py --transport streamable-http
服务器级别:
-
我们可以启动此服务器 gradio mcp服务器将gradio与mcp服务器集成在一起,这样我们就可以在huggingface上将这个mcp服务器作为独立的gradio mcp服务器运行🤗 在本地安装或启动gradio mcp服务器。
-
要在本地启动gradio mcp服务器,只需运行$\downarrow$命令之一,
python mcp-server/app.py
gradio mcp-server/app.py
-
推动 gradio mcp服务器 拥抱脸🤗 空格跟随$\downarrow$命令,
git remote add space https://huggingface.co/spaces/huggingface-name/space-name- 添加远程空间。改变
space-name到您的实际空间名称和huggingface-name转到huggingface帐户的用户名。
git subtree --prefix=mcp-server -b mcp-server-space- 这将创建名为的新分支 mcp服务器空间 (这只是将分支名称更改为您想要的名称),仅包含以下内容 mcp服务器.
git push space mcp-server-space:main --force- 它将推动 mcp服务器空间 分支到巨大的面部空间。它是
--force所以要小心,它会覆盖空间的所有内容。如果你刚刚创建了空间,可以使用--force✅, 如果空间中已经有一些内容,请不要使用--force❌.
- 添加远程空间。改变
原语:
- 模型上下文协议的核心组件。到目前为止,这个仓库只实现了 工具.
- 工具
- 资源
- 提示模板
- 采样