ForgeGuard MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FORGEGUARD_COMMANDS | No | Comma-separated executables permitted through the generic process_run tool. Empty by default. | |
| FORGEGUARD_ALLOWED_ROOTS | No | Directories below which projects may be registered. If missing, project_register is denied. |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| project_registerA | Register a project directory. The directory must be inside a locally configured allowed root. |
| project_listA | List project workspaces registered for this ForgeGuard process. |
| project_infoB | Get one registered project by id. |
| file_readA | Read a UTF-8 file inside a registered workspace. Traversal, symlink escapes, sensitive files, and known secret patterns are guarded. |
| file_writeA | Create or replace one UTF-8 file inside a registered workspace. Sensitive paths and symlink targets are rejected. |
| file_patchA | Replace exactly one matching text block in a UTF-8 project file. Fails when the match is missing or ambiguous. |
| directory_treeA | List a bounded directory tree inside a registered workspace while hiding sensitive files. |
| code_searchA | Search UTF-8 project files for an exact text fragment, ignoring generated/vendor directories and sensitive files. |
| git_statusA | Run git status --short inside a registered project without invoking a shell. |
| git_diffB | Run a non-mutating git diff inside a registered project. |
| process_runA | Run one explicitly allowlisted executable in a project workspace using argv directly (no shell). Disabled by default until FORGEGUARD_COMMANDS is configured. |
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 11 tools
Each tool maps to a distinct operation and resource type: workspace registration, file read/write/patch, git read-only inspection, directory/search, and process execution. Even potentially similar tools like file_patch and file_write are clearly separated by exact-match replacement versus full-file write.
All names use lowercase underscores, but the convention is mixed: some are verb-final like file_read and process_run, while others are noun compounds like git_status, directory_tree, and code_search. This is readable but not as predictable as a uniform verb_noun pattern.
Eleven tools is well-scoped for a secure file/git/process workspace server. Each tool has a distinct purpose, and none feel redundant or unnecessary.
The core workflows of registering workspaces, reading/writing/patching files, searching, and inspecting git state are covered. Minor gaps like no project unregister or file deletion are workable but not fatal for typical guarded agent tasks.