使用说明
二极管MCP服务器(参考模板)
此存储库是 二极管参考布局 用于构建和部署 HTTP(流式HTTP)MCP服务器 那可以 在二极管网络上发布 因此,客户可以到达 https://<your-client-id>.diode.link:<PORT>/mcp (通过HTTPS)或 diode://<your-client-id>:<PORT> (通过E2EE),无需打开防火墙端口。
快速启动(本地)
服务器启动工具和Diode CLI,并通过系统首次运行时分配的Diode客户端地址发布工具。默认情况下,它将在Diode客户端地址上公开发布工具。请参阅下面的“设置.env…”。
curl -Ssf https://diode.io/install.sh | bash # install Diode CLI
cd ~/projects # or whatever your project directory is
git clone git@github.com:diodechain/mcp-example.git
cd mcp-example
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
.venv/bin/python server.py
运行此程序时,您应该看到以下内容:
使用它
您可以通过E2EE连接立即开始使用此工具,方法是将其添加到私人AI工作区,网址为https://nexus.diode.io-观看视频:
使用此的项目
- Diode Deployer:通过安全的用户连接启动并运行您的vibe编码应用程序
- https://github.com/diodechain/diodedeploy-mcp
- 许多其他人。..
自定义工具和访问权限
创建新工具
在您最喜欢的编辑器中打开此项目,并在几分钟内感受到一个新工具。或者,使用中提供的示例手动创建工具。/工具目录。别忘了在config.yml中列出这些工具来启用它们。
设置.env以指定发布端口等。。。
您可以将.env.example.复制到.env,并将默认值更改为需要私有发布(仅限E2EE)。还支持Diode Perimeters,因此您的IT人员可以管理发布-从Diode ZTNA控制台获取周边地址并在.env中设置。
启动时,请查看日志-本地MCP服务器URL是临时分配的,在启动时打印并发布到您指定的DIODE_PUBLISH_PORT(默认为8080)。
部署到生产环境
确认所有内容都在运行,并确保您的.env已按照快速入门和自定义工具和访问进行设置。
一旦它按照您想要的方式运行,将其部署到目标系统并按照 ./deploy/README.md 以确保它在目标系统上长期存在。您可以覆盖系统特定部署服务文件中的.env设置。
二极管CLI
- 安装: https://diode.io/download/#cli
或者:curl -Ssf https://diode.io/install.sh | bash - 放
diode上PATH,或放置名为的可执行文件diode在 项目根目录 或以下diode_client/. - 启动时,该过程会打印 本地 以及(如适用) 公共 发布成功时的MCP URL。
- 二极管工作目录 因为生成的CLI是
diode_client/; 数据库, 日志,并在那里创建其他客户端文件(运行时路径为gitignored)。
更多二极管信息
要求等
在MacOS、Ubuntu和Raspberry Pi(基于Debian)上进行了测试。
需要大约50MB的RAM,请参阅requirements.txt了解python包deps。
项目布局
| 路径 | 角色 |
|---|---|
tools/ |
MCP工具模块(自定义以创建自己的工具). |
config.yml |
列出要启用的工具。 |
deploy/ |
Linux(.service/systemd)和MacOS(.plist/launchd)的系统部署模板-请参阅deploy/README.md |
.env_example |
二极管 加入/发布环境变量;复制到 .env 当地。 |
diode_client/ |
diode_manager.py (二极管CLI生命周期),可选本地 diode 二进制、运行时DB/日志。 |
requirements.txt |
Python deps用于服务器进程。 |
server.py |
aiohttp应用程序,JSON-RPC POST /mcp,工具装载从 config.yml,始终启动二极管。 |
example_client/ |
只是一个参考——列出工具并调用一些操作的最小HTTP客户端。 |
MCP客户端示例
应适用于任何快速MCP风格的客户端。但是,已经明确地包含了一个简单的客户端:
pip install httpx # if not already
# Set MCP_SERVER_URL in example_client/client_example.py to match the port in the server log
.venv/bin/python example_client/client_example.py