PluginBench
MCP Server

io.github.es617/serial-mcp-server MCP Server

io.github.es617/serial-mcp-server

What is the io.github.es617/serial-mcp-server MCP server?

Let AI agents interact with serial devices — list ports, connect, send, and read.

How to install io.github.es617/serial-mcp-server

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • SERIAL_MCP_MAX_CONNECTIONS

    Maximum simultaneous open serial connections (default 10)

  • SERIAL_MCP_PLUGINS

    Plugin policy: 'all' or comma-separated plugin names. Unset = disabled.

  • SERIAL_MCP_MIRROR

    PTY mirror mode: 'off' (default), 'ro' (read-only), or 'rw' (read-write). macOS/Linux only.

  • SERIAL_MCP_MIRROR_LINK

    Base path for PTY symlinks (default /tmp/serial-mcp when mirror is enabled). Connections get numbered: /tmp/serial-mcp0, /tmp/serial-mcp1, etc.

  • SERIAL_MCP_TOOL_SEPARATOR

    Tool name separator character (default '.'). Set to '_' for clients that reject dots (e.g. Cursor).

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "serial-mcp-server": {
      "command": "uvx",
      "args": [
        "serial-mcp-server"
      ],
      "env": {
        "SERIAL_MCP_MAX_CONNECTIONS": "<YOUR_SERIAL_MCP_MAX_CONNECTIONS>",
        "SERIAL_MCP_PLUGINS": "<YOUR_SERIAL_MCP_PLUGINS>",
        "SERIAL_MCP_MIRROR": "<YOUR_SERIAL_MCP_MIRROR>",
        "SERIAL_MCP_MIRROR_LINK": "<YOUR_SERIAL_MCP_MIRROR_LINK>",
        "SERIAL_MCP_TOOL_SEPARATOR": "<YOUR_SERIAL_MCP_TOOL_SEPARATOR>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "serial-mcp-server": {
      "command": "uvx",
      "args": [
        "serial-mcp-server"
      ],
      "env": {
        "SERIAL_MCP_MAX_CONNECTIONS": "<YOUR_SERIAL_MCP_MAX_CONNECTIONS>",
        "SERIAL_MCP_PLUGINS": "<YOUR_SERIAL_MCP_PLUGINS>",
        "SERIAL_MCP_MIRROR": "<YOUR_SERIAL_MCP_MIRROR>",
        "SERIAL_MCP_MIRROR_LINK": "<YOUR_SERIAL_MCP_MIRROR_LINK>",
        "SERIAL_MCP_TOOL_SEPARATOR": "<YOUR_SERIAL_MCP_TOOL_SEPARATOR>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "serial-mcp-server": {
      "command": "uvx",
      "args": [
        "serial-mcp-server"
      ],
      "env": {
        "SERIAL_MCP_MAX_CONNECTIONS": "<YOUR_SERIAL_MCP_MAX_CONNECTIONS>",
        "SERIAL_MCP_PLUGINS": "<YOUR_SERIAL_MCP_PLUGINS>",
        "SERIAL_MCP_MIRROR": "<YOUR_SERIAL_MCP_MIRROR>",
        "SERIAL_MCP_MIRROR_LINK": "<YOUR_SERIAL_MCP_MIRROR_LINK>",
        "SERIAL_MCP_TOOL_SEPARATOR": "<YOUR_SERIAL_MCP_TOOL_SEPARATOR>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "serial-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "serial-mcp-server"
      ],
      "env": {
        "SERIAL_MCP_MAX_CONNECTIONS": "<YOUR_SERIAL_MCP_MAX_CONNECTIONS>",
        "SERIAL_MCP_PLUGINS": "<YOUR_SERIAL_MCP_PLUGINS>",
        "SERIAL_MCP_MIRROR": "<YOUR_SERIAL_MCP_MIRROR>",
        "SERIAL_MCP_MIRROR_LINK": "<YOUR_SERIAL_MCP_MIRROR_LINK>",
        "SERIAL_MCP_TOOL_SEPARATOR": "<YOUR_SERIAL_MCP_TOOL_SEPARATOR>"
      }
    }
  }
}
Claude Code
claude mcp add serial-mcp-server --env SERIAL_MCP_MAX_CONNECTIONS=<YOUR_SERIAL_MCP_MAX_CONNECTIONS> --env SERIAL_MCP_PLUGINS=<YOUR_SERIAL_MCP_PLUGINS> --env SERIAL_MCP_MIRROR=<YOUR_SERIAL_MCP_MIRROR> --env SERIAL_MCP_MIRROR_LINK=<YOUR_SERIAL_MCP_MIRROR_LINK> --env SERIAL_MCP_TOOL_SEPARATOR=<YOUR_SERIAL_MCP_TOOL_SEPARATOR> -- uvx serial-mcp-server

Related MCP servers

Let AI agents interact with real BLE hardware — scan, connect, read, write, and subscribe.

View repository →

Let AI agents interact with debug probes — connect, flash, read/write memory, and reset.

View repository →

Give AI agents access to your Obsidian vault via local files or Self-hosted LiveSync.

View repository →