mcp-gate
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-gateList the files in my sandbox and summarize the first one"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-gate
A path is a request. The roots boundary is the guarantee.
An MCP file-access server enforces which files a model may touch through roots — a
set of authorized directories. mcp-gate demonstrates the difference between
telling the server to stay inside its roots and enforcing it: the same attack
suite is run against a version that only has an instruction, and a version that
canonicalizes every path and checks it against the boundary before any read. One
leaks; one holds. Both directions are enforced in CI.
This is an independent implementation of concepts from Anthropic's advanced MCP material, written to showcase three things explicitly:
Capability | Where it shows up |
Advanced MCP server |
|
Logs & progress | Every tool streams MCP logging notifications ( |
Access control |
|
The two modes
Mode | How it decides | Result |
| A system-prompt instruction says "only read files under the roots," but the path is opened as given. | Leaks — the naive path-handler is a worst-case control, on purpose. |
| Each path is decoded, | Holds — out-of-bounds requests are refused before any file is opened. |
The attack suite
Attack |
|
|
| served ✓ | served ✓ |
| leaks | blocked |
| leaks | blocked |
| leaks | blocked |
| leaks | blocked |
direct_ask succeeding in both modes is the deceptive part: a quick manual test
of prompt-layer security looks safe, then fails under an attack you didn't try.
Related MCP server: personal-mcp-bridge
The gate (CI-enforced, both directions)
python -m mcp_gate gate boundary # exit 0 only if 0 escapes
python -m mcp_gate gate prompt # exit 0 only if the leak is still demonstrated
python -m mcp_gate suite # both halves must holdgate prompt failing to leak would mean the demo has gone vacuous (the "secure"
result is meaningless if the insecure one also passes), so CI treats that as a
build failure too.
Quickstart
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest -q
python -m mcp_gate gate boundary
python -m mcp_gate gate prompt
python -m mcp_gate suiteRun the live MCP server + client demo (needs pip install -e ".[demo]" and an
ANTHROPIC_API_KEY in your environment for the sampling tool):
python -m mcp_gate serve ./data/sandbox # start the server over stdio
python -m mcp_gate.client ./data/sandbox # drive it: logs, progress, sampling, a blocked attackSee RESULTS.md for captured output — every block there is real
command output, regenerated by scripts/make_results.py, never hand-edited.
Notes
All data under
data/is fictional;data/out_of_bounds/secret.txtis a labeled stand-in for "a file the server must never serve."Part of the
-gatefamily: nothing ships until it passes a gate.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseAqualityDmaintenanceProvides safe local file operations through MCP, including reading, writing, searching, organizing, and protected deletion with configurable path restrictions.122
- AlicenseNot gradedqualityBmaintenanceEnables safe, read-only browsing of allowlisted local directories through MCP, providing tools to list roots, read files, and search text.MIT
- AlicenseNot gradedqualityCmaintenanceA drop-in replacement for the blocked Filesystem MCP server that provides standard file operations with symlink hardening, enabling tools like read, write, and directory listing.MIT
- FlicenseNot gradedqualityBmaintenanceProvides safe, allowlisted local filesystem access for MCP-compatible AI clients, enabling directory listing, file reading/writing (with byte limits), and text search while blocking paths outside approved roots and symlink escapes.
Related MCP Connectors
Static MCP manifest and tool-policy security preflight with signed input-redacted receipts
Fail-closed action authorization, MCP risk scanning, x402 checks, and signed receipts.
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jbisaccia-9/mcp-gate'
If you have feedback or need assistance with the MCP directory API, please join our Discord server