Skip to main content
Glama

send_data

Send data to serial ports through the UART MCP Server, supporting both text and binary transmission modes for device communication.

Instructions

向已打开的串口发送数据,支持文本和二进制模式

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
portYes串口路径,如 /dev/ttyUSB0 或 COM1
dataYes要发送的数据(文本为UTF-8,二进制为Base64)
is_binaryNo是否为二进制模式,True 时 data 为 Base64 编码

Implementation Reference

  • The main handler function for the 'send_data' tool. It encodes the input data (text as UTF-8 or binary from Base64) and sends it via the serial manager, returning the bytes written.
    def send_data( port: str, data: str, is_binary: bool = False, ) -> dict[str, Any]: """发送数据到串口 Args: port: 串口路径 data: 要发送的数据(文本模式为 UTF-8 字符串,二进制模式为 Base64 编码) is_binary: 是否为二进制模式 Returns: 发送结果,包含发送的字节数 """ manager = get_serial_manager() # 编码转换 if is_binary: try: raw_data = base64.b64decode(data) except Exception as e: raise InvalidParamError("data", data, f"Base64 解码失败:{e}") else: raw_data = data.encode("utf-8") bytes_written = manager.send_data(port, raw_data) return {"success": True, "bytes_written": bytes_written}
  • The schema definition for the 'send_data' tool, including name, description, and inputSchema used for MCP registration.
    SEND_DATA_TOOL: dict[str, Any] = { "name": "send_data", "description": "向已打开的串口发送数据,支持文本和二进制模式", "inputSchema": { "type": "object", "properties": { "port": { "type": "string", "description": "串口路径,如 /dev/ttyUSB0 或 COM1", }, "data": { "type": "string", "description": "要发送的数据(文本为UTF-8,二进制为Base64)", }, "is_binary": { "type": "boolean", "description": "是否为二进制模式,True 时 data 为 Base64 编码", "default": False, }, }, "required": ["port", "data"], }, }
  • Registration of the 'send_data' tool in the MCP server's list_tools handler.
    name=SEND_DATA_TOOL["name"], description=SEND_DATA_TOOL["description"], inputSchema=SEND_DATA_TOOL["inputSchema"], ), types.Tool(
  • Dispatch to the 'send_data' handler in the MCP server's call_tool function.
    elif name == "send_data": result = send_data(**arguments)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/donnel666/uart-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server