Serial Port
π¦ π - A comprehensive MCP server for serial port communication
What is Serial Port?
Serial Port is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to π¦ π - a comprehensive mcp server for serial port communication
π¦ π - A comprehensive MCP server for serial port communication
This server falls under the File Systems category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- π¦ π - A comprehensive MCP server for serial port communicati
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx serialConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use Serial Port
Serial MCP Server is a Rust-based MCP server that gives AI assistants direct control over serial port communication, enabling natural-language interaction with embedded hardware like STM32 microcontrollers, Arduino boards, ESP32, and any UART-compatible device. It exposes five production-ready tools β list_ports, open, write, read, and close β built on Tokio's async runtime for reliable, concurrent communication. Hardware engineers and IoT developers use it to debug firmware, send commands, and read sensor output through Claude without leaving their AI client.
Prerequisites
- Rust 1.70 or higher with Cargo installed
- A serial device: STM32, Arduino, ESP32, or any USB-to-Serial adapter (CH340, FTDI, CP2102, etc.)
- An MCP-compatible client such as Claude Desktop or Claude Code
- Serial port drivers installed for your OS (usually automatic; Linux users may need to add themselves to the 'dialout' group)
Clone and build the server
Clone the repository and compile the release binary. The build requires a Rust toolchain; install one from rustup.rs if needed.
git clone https://github.com/Adancurusul/serial-mcp-server.git
cd serial-mcp-server
cargo build --releaseNote the binary path
After a successful build, the binary is at target/release/serial-mcp-server (or serial-mcp-server.exe on Windows). Copy the absolute path β you will need it in the client configuration.
# macOS/Linux:
ls -la target/release/serial-mcp-server
# Windows:
dir target\release\serial-mcp-server.exeConnect your serial device
Plug in your hardware via USB. On Linux, add your user to the dialout group if you get permission errors on /dev/ttyUSB* devices.
# Linux only - add user to dialout group (requires logout/login):
sudo usermod -a -G dialout $USERConfigure your MCP client
Add the server to your MCP client's configuration file using the absolute path to the compiled binary. RUST_LOG=info enables useful connection logging.
{
"mcpServers": {
"serial": {
"command": "/absolute/path/to/serial-mcp-server/target/release/serial-mcp-server",
"args": [],
"env": {
"RUST_LOG": "info"
}
}
}
}Restart your MCP client and verify
Restart Claude Desktop or your client. Ask it to list available serial ports to confirm the tools are working.
Serial Port Examples
Client configuration (Claude Desktop β macOS/Linux)
Full claude_desktop_config.json entry for the serial MCP server. Replace the command path with your actual build output path.
{
"mcpServers": {
"serial": {
"command": "/Users/yourname/serial-mcp-server/target/release/serial-mcp-server",
"args": [],
"env": {
"RUST_LOG": "info"
}
}
}
}Prompts to try
These prompts cover the five serial communication tools: list, open, write, read, and close.
- "List all available serial ports on this system"
- "Connect to /dev/ttyUSB0 (or COM19 on Windows) at 115200 baud"
- "Send the command 'H' to the connected serial device and read the response"
- "Read data from the serial port with a 2 second timeout"
- "Send 'L' to toggle the LED, then read the response from my STM32 board"
- "Close the serial connection when done"Troubleshooting Serial Port
Permission denied when opening /dev/ttyUSB0 or /dev/ttyACM0 on Linux
Add your user to the dialout group with 'sudo usermod -a -G dialout $USER', then log out and back in. Alternatively, temporarily use 'sudo chmod 666 /dev/ttyUSB0' for testing.
cargo build fails with missing system libraries
The serialport crate requires libudev on Linux. Install it with 'sudo apt-get install libudev-dev' (Debian/Ubuntu) or 'sudo dnf install systemd-devel' (Fedora). On macOS, no extra libraries are needed.
Read tool returns empty data or times out
Check that the baud rate matches your device's firmware setting. Common rates are 9600, 115200, and 921600. Also ensure the device is sending data β on an STM32 board, the firmware must be running and the UART must be initialized.
Frequently Asked Questions about Serial Port
What is Serial Port?
Serial Port is a Model Context Protocol (MCP) server that π¦ π - a comprehensive mcp server for serial port communication It connects AI assistants to external tools and data sources through a standardized interface.
How do I install Serial Port?
Follow the installation instructions on the Serial Port GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with Serial Port?
Serial Port works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is Serial Port free to use?
Yes, Serial Port is open source and available under the MIT license. You can use it freely in both personal and commercial projects.
Serial Port Alternatives β Similar File Systems Servers
Looking for alternatives to Serial Port? Here are other popular file systems servers you can use with Claude, Cursor, and VS Code.
Electerm
β 14.1kπ»Terminal/ssh/sftp/ftp/telnet/serialport/RDP/VNC/Spice client(linux, mac, win)
Plik
β 1.8kPlik is a temporary file upload system (Wetransfer like) in Go.
Kordoc
β 957An MCP server that parses South Korean document formats like HWP, HWPX, and PDF into Markdown. It features specialized table reconstruction and security-hardened extraction optimized for administrative and public institution files.
macOS Automator
β 801A Model Context Protocol server that enables execution of AppleScript and JavaScript for Automation scripts on macOS, allowing programmatic control of applications and system functions through a rich knowledge base of pre-defined scripts.
PDF Reader
β 723Enables reading, searching, and metadata extraction from PDF files without loading the entire content into the context window. It provides efficient tools for text cleaning, page-specific extraction, and context-aware search results.
Filesystem MCP Server
β 643Provides comprehensive filesystem operations (read, write, list, create, delete, move files and directories) through the Model Context Protocol with Streamable HTTP transport and built-in security through configurable root directory restrictions.
Browse More File Systems MCP Servers
Explore all file systems servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up Serial Port in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use Serial Port?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.