machine-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MACHINE_MCP_TOKEN | No | Bearer token for a future HTTP listener. Generated if unset. | |
| MACHINE_MCP_WORKSPACE | No | File-tool root. Default: ~/machine-mcp-workspace (created on start). | ~/machine-mcp-workspace |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| statusA | Report OS, hostname, cwd, Python version, and whether copilot, ffmpeg, and git are on PATH. Does not return secrets, tokens, or a home-directory listing. |
| runA | Run a command in the workspace root (not a shell). Args: command: Program and arguments as a single string. Split with shlex on POSIX. timeout_seconds: Kill after this many seconds. Default 30, max 120. Output is limited to 1MB each for stdout and stderr. A nonzero exit code returns ok=false. |
| record_terminalA | Record a bash script as a terminal demo. This host does not start a recorder. If ffmpeg is missing, returns an error. If ffmpeg is present, returns the command you would run (Linux x11grab) and does not write a video file. |
| write_fileA | Write a UTF-8 file relative to the workspace root. Refuses absolute paths and parent-directory segments. |
| read_fileA | Read a UTF-8 file relative to the workspace root. Size limit 1MB. Refuses absolute paths and parent-directory segments. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool targets a distinctly different action: environment status, command execution, terminal recording, and file read/write. The only confusing tool is record_terminal, which despite its name does not actually record anything and instead returns a command to run.
Most tools follow a clear verb_noun pattern: record_terminal, write_file, read_file, plus the imperative run. status is a minor outlier as a noun, but the overall naming scheme is predictable and readable.
Five tools is a reasonable, well-scoped size for a machine and workspace automation server. However, record_terminal feels loosely connected to the rest of the set, so the count is appropriate but not perfectly cohesive.
Core workflows are covered: checking environment state, running commands, and reading/writing files are sufficient for many workspace tasks. Directory listing and deletion are missing as dedicated tools, but agents can work around these gaps using run.