杰森·麦克普
MCP(模型上下文协议)服务器,用于使用自然语言从同一网络上的客户端监视和远程控制Nvidia Jetson板。
该项目使用 FastMCP 库来创建服务器。
MCP服务器已连接:
特性
- 提供网络客户端使用SSE(服务器发送事件)传输可访问的MCP工具。
get_jetson_hw_info:阅读/etc/nv_boot_control.conf以识别模块/载板信息。get_jetson_sw_info:阅读/etc/nv_tegra_release(适用于Jetpack版本)和/proc/version(适用于Linux内核版本)。- 包括易于安装和systemd服务设置的脚本。
设置和安装(在Jetson上)
- 克隆存储库:
git clone https://github.com/Zalmotek/jetson-mcp
cd jetson-mcp- 运行安装脚本:
此脚本创建Python虚拟环境(venv/)并从以下位置安装依赖项 requirements.txt.
chmod +x install.sh
./install.sh运行服务器(在Jetson上)
建议将服务器作为systemd管理的后台服务运行。
- (可选)查找Jetson IP/主机名:
您需要Jetson的IP地址或主机名才能从其他设备连接。使用以下命令 ip addr 或 hostname -I.
- 运行服务安装脚本:
此脚本创建并启用systemd服务文件(/etc/systemd/system/jetson-mcp.service)被配置为以调用脚本的用户身份运行服务器,监听端口8000。
chmod +x setup_service.sh
sudo ./setup_service.sh- 启动服务:
sudo systemctl start jetson-mcp.service- 验证服务:
sudo systemctl status jetson-mcp.service
# Check logs for errors
sudo journalctl -u jetson-mcp.service -f- 防火墙:确保您的Jetson防火墙(如果处于活动状态,例如。,
ufw)允许端口8000(或您选择的端口)上的传入连接。示例ufw:
sudo ufw allow 8000/tcp手动运行(用于测试)
服务器最好直接使用Python解释器运行,它将调用 mcp.run() 在脚本中配置的方法:
source venv/bin/activate
# The script itself now calls mcp.run() with SSE, host, and port settings
python app/main.py从远程客户端连接
一旦服务器在Jetson上运行并可在网络上访问(通过防火墙允许端口8000):
- 识别服务器地址:查找Jetson的IP地址(例如。,
192.168.1.105)或其主机名(例如。,jetson-nano.local)在您的局域网上。 - 配置您的客户端:在您的MCP客户端应用程序中(可以是自定义脚本、类似MCP Inspector的UI,或者如果支持网络端点,则可能是Cursor/Claude),将其配置为在其网络地址连接到MCP服务器。
- 具体的连接方法取决于客户端,但可能涉及为SSE端点指定URL: - http://:8000/sse (SSE的常见模式)
*注:光标 mcp.json 该文件主要用于通过以下方式启动本地服务器 stdio 运输。将Cursor连接到此联网的SSE服务器可能需要不同的配置步骤,或者在没有代理的情况下可能无法直接支持。* 有关如何连接到网络MCP SSE端点,请参阅特定客户的文档。
示例/截图
硬件信息工具:
软件信息工具:
