Provides tools for monitoring and remotely controlling Nvidia Jetson boards, including the ability to retrieve hardware information from the board configuration and software information such as Jetpack version and Linux kernel version.
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)
- Clone the repository:
- Run the installation script:
This script creates a Python virtual environment (
venv/
) and installs dependencies fromrequirements.txt
.
Running the Server (on the Jetson)
The recommended way to run the server is as a background service managed by systemd.
- (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
orhostname -I
. - 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. - Start the service:
- Verify Service:
- Firewall: Ensure your Jetson's firewall (if active, e.g.,
ufw
) allows incoming connections on port 8000 (or your chosen port). Example forufw
:
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:
Connecting from a Remote Client
Once the server is running on the Jetson and accessible on the network (port 8000 allowed through firewall):
- 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. - Configure Your Client: In your MCP client application (which could be a custom script, a UI like MCP Inspector, or potentially Cursor/Claude if they support network endpoints), configure it to connect to the MCP server at its network address.
- The specific connection method depends on the client, but it will likely involve specifying a URL for the SSE endpoint:
http://<jetson_ip_or_hostname>:8000/sse
(Common pattern for SSE)
- The specific connection method depends on the client, but it will likely involve specifying a URL for the SSE endpoint:
Note: Cursor's mcp.json
file is primarily designed for launching local servers via stdio
transport. Connecting Cursor to this networked SSE server might require different configuration steps or might not be directly supported without a proxy. Consult your specific client's documentation for how to connect to a network MCP SSE endpoint.
Examples / Screenshots
Hardware Info Tool:
Software Info Tool:
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A Model Context Protocol server that enables monitoring and remote control of Nvidia Jetson boards using natural language commands over a network connection.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that allows management and execution of Blender Python scripts, enabling users to create, edit and run scripts in a headless Blender environment through natural language interfaces.Last updated -8Python
- -securityFlicense-qualityA server that integrates Blender with local AI models via the Model Context Protocol, allowing users to control Blender using natural language prompts for 3D modeling tasks.Last updated -43Python
- AsecurityFlicenseAqualityA Model Context Protocol server that enables natural language interactive control of Universal Robots collaborative robots, allowing users to control robot motion, monitor status, and execute programs through direct commands to large language models.Last updated -293Python
- -securityAlicense-qualityA Model Context Protocol server that provides safe, intelligent read/write access to NetBox instances, designed with safety-first principles for Large Language Model automation.Last updated -PythonMIT License