Local Ops MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOCAL_OPS_ROOT | Yes | The root directory that defines the workspace. All file and git operations are restricted to this directory. | |
| LOCAL_OPS_GIT_PULL | No | Controls the git_pull tool (fast-forward only) when LOCAL_OPS_GIT_REMOTE is enabled. | false |
| LOCAL_OPS_GIT_PUSH | No | Controls the git_push tool (current branch non-force push) when LOCAL_OPS_GIT_REMOTE is enabled. | false |
| LOCAL_OPS_GIT_READ | No | Controls read-only Git tools: git_status, git_diff_unstaged, git_diff_staged, git_log, git_show, git_branch. | true |
| LOCAL_OPS_GIT_FETCH | No | Controls the git_fetch tool when LOCAL_OPS_GIT_REMOTE is enabled. | true |
| LOCAL_OPS_GIT_WRITE | No | Controls Git write tools: git_add, git_commit, git_amend_message. | true |
| LOCAL_OPS_MAX_BYTES | No | Maximum size in bytes for file reads and command output. | 2097152 |
| LOCAL_OPS_GIT_REMOTE | No | Master switch for all remote Git tools. | false |
| LOCAL_OPS_GIT_TIMEOUT_MS | No | Timeout in milliseconds for local Git commands. | 30000 |
| LOCAL_OPS_GIT_REMOTE_TIMEOUT_MS | No | Timeout in milliseconds for remote Git commands. | 60000 |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_directoryA | List files and directories below the configured local workspace root. |
| read_fileA | Read a UTF-8 text file below the configured workspace root and return its SHA-256 hash. |
| write_fileA | Write a UTF-8 text file below the configured workspace root. Existing files require overwrite=true; expected_sha256 can prevent lost updates. |
| create_directoryA | Create a directory below the configured workspace root. Set recursive=true to also create missing parent directories. |
| delete_directoryA | Delete a directory below the configured workspace root. Non-empty directories require recursive=true. The workspace root itself can never be deleted. |
| delete_fileA | Delete a regular file below the configured workspace root. |
| copy_fileA | Copy a regular file within the configured workspace root. Existing destinations require overwrite=true. |
| move_fileA | Move a regular file to a new workspace-relative path. The destination must not already exist. |
| rename_fileA | Rename a regular file without moving it to another directory. The new name must not already exist. |
| git_statusB | Show the concise Git working-tree status for a repository below the configured workspace root. |
| git_diff_unstagedA | Show unstaged Git changes for a repository below the configured workspace root. |
| git_diff_stagedA | Show staged Git changes for a repository below the configured workspace root. |
| git_logA | Show recent Git commits for a repository below the configured workspace root. |
| git_showA | Show one Git revision without invoking external diff helpers. |
| git_branchA | List local, remote, or all Git branches. |
| git_addA | Stage an explicit list of repository-relative files. Arbitrary Git options are not accepted. |
| git_commitA | Create a local Git commit from already staged changes. This does not stage files or contact a remote. |
| git_amend_messageA | Rewrite only the most recent local commit message without including staged or working-tree changes. This rewrites local history and does not contact a remote. |
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 18 tools
Each tool maps to a distinct filesystem or Git operation, and most names are self-explanatory. The only mild ambiguity is between move_file and rename_file, though the descriptions clearly separate moving to a new path from renaming within the same directory.
All tools follow a consistent verb_noun snake_case pattern, such as list_directory, copy_file, git_diff_staged, and git_amend_message. No mixed conventions or vague verbs appear.
Eighteen tools is on the higher end, but the server covers two coherent domains: workspace file operations and local Git workflow. Each tool has a clear purpose, so the count feels slightly large rather than bloated.
The file operations cover common file and directory workflows but lack directory copy/move and file metadata/search. The Git side covers status/diff/log/add/commit but omits branch creation/checkout/deletion and unstage, leaving notable gaps in common local Git workflows.