UART MCP Server
English | 中文
为 AI 助手提供串口通信能力的 MCP Server。
功能特性
串口管理 - 枚举、打开、关闭和配置串口设备
数据通信 - 支持文本和二进制模式的数据收发
终端会话 - 创建交互式终端会话,支持命令发送和输出读取
热配置 - 支持在不关闭串口的情况下修改配置参数
自动重连 - 设备断开后自动尝试重新连接
快速开始
提示词配置
为了让 AI 助手优先使用 UART 工具操作串口,建议在项目提示词文件中添加以下内容:
不同工具的提示词文件位置:
工具 | 提示词文件 |
Claude Code |
或
|
Factory Droid |
或
|
Cursor |
|
Windsurf |
|
Claude Code
Codex CLI
在 ~/.codex/config.toml 中添加:
Factory Droid
在项目 .factory/settings.json 或全局 ~/.factory/settings.json 中添加:
Claude Desktop
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
可用工具
串口管理
工具 | 描述 |
| 列出所有可用串口设备 |
| 打开指定串口(支持配置波特率、数据位、校验位等) |
| 关闭指定串口 |
| 修改已打开串口的配置(热更新) |
| 获取串口当前状态和配置信息 |
数据通信
工具 | 描述 |
| 向串口发送数据(支持文本/二进制模式) |
| 从串口读取数据(支持文本/二进制模式) |
终端会话
工具 | 描述 |
| 创建终端会话(支持配置换行符、本地回显) |
| 关闭终端会话 |
| 向终端发送命令 |
| 读取终端输出缓冲区 |
| 列出所有活动会话 |
| 获取会话详细信息 |
| 清空会话输出缓冲区 |
串口权限
请确保本工具有权限访问串口设备:
Linux:
macOS:
Windows: 通常无需额外配置,COM 端口默认可访问。
使用示例
基础串口通信
使用
list_ports查看可用串口使用
open_port打开串口,如/dev/ttyUSB0或COM1使用
send_data发送数据使用
read_data读取响应使用
close_port关闭串口
终端会话模式
使用
open_port打开串口使用
create_session创建终端会话使用
send_command发送命令使用
read_output读取命令输出使用
close_session关闭会话
串口配置参数
参数 | 默认值 | 可选值 |
波特率 | 115200 | 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600 |
数据位 | 8 | 5, 6, 7, 8 |
校验位 | N (无) | N (无), E (偶), O (奇), M (标记), S (空格) |
停止位 | 1 | 1, 1.5, 2 |
流控制 | none | none, xonxoff, rtscts, dsrdtr |
配置文件
UART MCP 的配置文件位于:
Linux/macOS:
~/.uart-mcp/Windows:
%APPDATA%\.uart-mcp\
配置文件说明
文件 | 说明 |
| 全局配置(波特率、超时、流控等默认参数) |
| 串口黑名单(支持精确匹配和正则表达式) |
config.toml 示例
blacklist.conf 示例
注意: 配置文件权限应为 600(仅所有者可读写),否则会报权限错误。
本地开发
系统要求
Python 3.13+
支持的操作系统: Linux, macOS, Windows
许可证
MIT License