{"name":"io.github.es617/serial-mcp-server","slug":"es617-serial-mcp-server","title":null,"description":"Let AI agents interact with serial devices — list ports, connect, send, and read.","url":"https://mcp.market/server/es617-serial-mcp-server","rating":null,"grade":"B","score":75,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":16,"stars":21,"forks":5,"downloads_week":null,"last_push_at":"2026-03-07T22:09:22.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/es617/serial-mcp-server.git","website":null,"version":"0.1.3","remotes":[],"packages":[{"registryType":"pypi","identifier":"serial-mcp-server","version":"0.1.3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Maximum simultaneous open serial connections (default 10)","format":"string","name":"SERIAL_MCP_MAX_CONNECTIONS"},{"description":"Plugin policy: 'all' or comma-separated plugin names. Unset = disabled.","format":"string","name":"SERIAL_MCP_PLUGINS"},{"description":"PTY mirror mode: 'off' (default), 'ro' (read-only), or 'rw' (read-write). macOS/Linux only.","format":"string","name":"SERIAL_MCP_MIRROR"},{"description":"Base path for PTY symlinks (default /tmp/serial-mcp when mirror is enabled). Connections get numbered: /tmp/serial-mcp0, /tmp/serial-mcp1, etc.","format":"string","name":"SERIAL_MCP_MIRROR_LINK"},{"description":"Tool name separator character (default '.'). Set to '_' for clients that reject dots (e.g. Cursor).","format":"string","name":"SERIAL_MCP_TOOL_SEPARATOR"}]}],"tools":[{"name":"serial.close","description":"Close a serial port connection and release the port.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.connection_status","description":"Check whether a serial connection is still open and return its configuration.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.flush","description":"Flush serial port buffers (discard pending input/output data).","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.list_ports","description":"List available serial ports on the system.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.set_dtr","description":"Set the DTR (Data Terminal Ready) control line. Usage is device-specific — check the protocol spec or ask the user.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.set_rts","description":"Set the RTS (Request To Send) control line. Usage is device-specific — check the protocol spec or ask the user.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.spec.get","description":"Get the attached spec for a connection (returns null if none attached).","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.spec.list","description":"List all registered specs with their metadata and matching hints.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.spec.read","description":"Read full spec content, file path, and metadata by spec_id.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.trace.status","description":"Return tracing config and event count.","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.trace.tail","description":"Return last N trace events (default 50).","write_action":false,"price_micros":0,"input_schema":null},{"name":"serial.write","description":"Write data to a serial port. Returns the number of bytes written.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":75,"grade":"B","scanned_at":"2026-09-28T06:07:36.446Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-09-28T06:07:36.417Z","components":{"code":{"score":25,"max":25,"notes":["19 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":4,"max":15,"notes":["last push 204 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"serial-mcp-server","version":"0.1.3","found":true,"license":"MIT","dependencyCount":8,"publishedAt":"2026-03-07T22:10:29.083801Z","repositoryUrl":"https://github.com/es617/serial-mcp-server"}],"repo":{"found":true,"owner":"es617","repo":"serial-mcp-server","archived":false,"pushedAt":"2026-03-07T22:09:22Z","stars":21,"forks":5,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/64611135?v=4","ownerCreatedAt":"2020-04-30T19:22:26Z","license":"MIT"},"icon":{"url":null,"source":"none"},"presence":{"stars":21,"forks":5,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-03-07T22:09:22.000Z","score":16}}}},"grade_history":[],"reviews":[]}