ZJ

zalmotek/jetson-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

11 stars 3 forks 质量 42 趋势 18

A MCP server for using natural language to monitor and remote control a Nvidia Jetson board

概览

A MCP (Model Context Protocol) server for using natural language to monitor and remotely control a Nvidia Jetson board from clients on the same network. This project uses the FastMCP library to create the server. * Provides MCP tools accessible by network clients using the SSE (Server-Sent Events) transport. * : Reads /etc/nv_boot_control.conf to identify module/carrier board info. * : Reads /etc/nv_tegra_release (for Jetpack version) and /proc/version (for Linux kernel version). * Includes scripts for easy installation and systemd service setup. 1. 2. This script creates a Python virtual environment (venv/) and installs dependencies from requirements.txt. The recommended way to run the server is as a background service managed by systemd. 1. You'll need the Jetson's IP address or hostname to connect from other devices. Use commands like ip addr or hostname -I. 2. This script creates and enables a systemd service file (/etc/systemd/system/jetson-mcp.

README

以下为原文 README 节选,完整内容请查看原文。

jetson-mcp

A MCP (Model Context Protocol) server for using natural language to monitor and remotely control a Nvidia Jetson board from clients on the same network.

This project uses the FastMCP library to create the server.

MCP Server Connected:

Features

  • Provides MCP tools accessible by network clients using the SSE (Server-Sent Events) transport.
  • get_jetson_hw_info: Reads /etc/nv_boot_control.conf to identify module/carrier board info.
  • get_jetson_sw_info: Reads /etc/nv_tegra_release (for Jetpack version) and /proc/version (for Linux kernel version).
  • Includes scripts for easy installation and systemd service setup.

Setup and Installation (on the Jetson)

  1. Clone the repository:
    git clone https://github.com/Zalmotek/jetson-mcp
    cd jetson-mcp
    
  2. Run the installation script: This script creates a Python virtual environment (venv/) and installs dependencies from requirements.txt.
    chmod +x install.sh
    ./install.sh
    

Running the Server (on the Jetson)

The recommended way to run the server is as a background service managed by systemd.

  1. (Optional) Find Jetson IP/Hostname: You’ll need the Jetson’s IP address or hostname to connect from other devices. Use commands like ip addr or hostname -I.

  2. Run the service setup script: This script creates and enables a systemd service file (/etc/systemd/system/jetson-mcp.service) configured to run the server as the user who invoked the script, listening on port 8000.

    chmod +x setup_service.sh
    sudo ./setup_service.sh
    
  3. Start the service:

    sudo systemctl start jetson-mcp.service
    
  4. Verify Service:

    sudo systemctl status jetson-mcp.service
    # Check logs for errors
    sudo journalctl -u jetson-mcp.service -f
    
  5. Firewall: Ensure your Jetson’s firewall (if active, e.g., ufw) allows incoming connections on port 8000 (or your chosen port). Example for ufw:

    sudo ufw allow 8000/tcp
    

Running Manually (for testing)

The server is best run directly using the Python interpreter, which will invoke the mcp.run() method configured within the script:

source venv/bin/activate
# The script itself now calls mcp.run() with SSE, host, and port settings
python app/main.py

Connecting from a Remote Client

Once the server is running on the Jetson and accessible on the network (port 8000 allowed through firewall):

  1. Identify the Server Address: Find the Jetson’s IP address (e.g., 192.168.1.105) or its hostname (e.g., jetson-nano.local) on your LAN.
在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →