MCP server for the Frame security scanner: scan, verify, fix, exploit, packs and separation logic.
MCPpedia last refreshed this data
io.github.lambdasec/frame-mcp is an MCP server that MCP server for the Frame security scanner: scan, verify, fix, exploit, packs and separation logic. Its tool list has not been published yet over stdio and http, requires no API key, and scores 84/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"frame": {
"args": [
"frame-mcp"
],
"command": "uvx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP server for the Frame security scanner: scan, verify, fix, exploit, packs and separation logic.
Run this in your terminal to verify the server starts. Then let us know if it worked - your result helps other developers.
uvx 'frame-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked frame-mcp against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in security
Search-first MCP server for JavaScript reverse engineering: 735 tools across 36 domains.
MCP security scanner. CI-native testing, attack simulation, health scoring, and SARIF.
MCP server for 1Password service accounts — tools and resources for vaults and credentials
Deterministic security scanning, no model or API key, plus offline-verifiable proof a fix worked.
MCP Security Weekly
Get CVE alerts and security updates for io.github.lambdasec/frame-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
mcp-name: io.github.lambdasec/frame-mcp
An MCP server that exposes the Frame security scanner to any MCP client, so a coding agent can scan code, verify fixes, and reason about vulnerabilities over stdio.
Frame combines taint analysis with separation logic verification to find data-flow vulnerabilities (SQL injection, command injection, path traversal, and more), and checks each reported path with a solver. This package wraps the frame command line program as MCP tools. It launches frame as a subprocess with an explicit argument list, never a shell, and prefers the frame executable installed next to the running Python interpreter.
Run directly with uvx (no separate install step):
uvx frame-mcp
claude mcp add frame -- uvx frame-mcp
Add this stanza to ~/.codex/config.toml:
[mcp_servers.frame]
command = "uvx"
args = ["frame-mcp"]
Create .cursor/mcp.json:
{
"mcpServers": {
"frame": {
"command": "uvx",
"args": ["frame-mcp"]
}
}
}
Create .vscode/mcp.json:
{
"servers": {
"frame": {
"type": "stdio",
"command": "uvx",
"args": ["frame-mcp"]
}
}
}
Add to ~/.codeium/windsurf/mcp_config.json under the mcpServers key:
{
"mcpServers": {
"frame": {
"command": "uvx",
"args": ["frame-mcp"]
}
}
}
Add to ~/.gemini/settings.json under the mcpServers key:
{
"mcpServers": {
"frame": {
"command": "uvx",
"args": ["frame-mcp"]
}
}
}
Add to Zed settings.json under context_servers:
{
"context_servers": {
"frame": {
"command": {
"path": "uvx",
"args": ["frame-mcp"]
}
}
}
}
| Tool | Purpose | Read only |
|---|---|---|
scan | Scan a file or directory for vulnerabilities and return findings as JSON; ai adds LLM detection and triage, hunt_authz the agentic authorization hunt. | yes |
write_baseline | Scan a path and record the findings as a baseline file. | no |
verify | Re-scan the files behind earlier findings and report whether each is fixed. | yes |
fix | Generate and verify fixes for findings. Returns a diff by default. | no |
exploit | Drive an agent to exploit a live, authorized target. | no |
packs_list | List the framework packs a scan would load. | yes |
packs_check | Validate framework pack files. | yes |
solve | Check a separation logic entailment P |- Q. | yes |
engine_handlers | Every entry point the engine finds: protected or not, reaches a resource or not, the sink kinds it reaches. | yes |
engine_handler_facts | One handler or function: protection, sinks, decorators, parameters, the engine's own findings, its source. | yes |
engine_siblings | The handlers of the same class or file, with the guards that hold at each one's data accesses. | yes |
engine_trace | The data flows the engine found in a function, each with its CWE and evidence level. | yes |
engine_callers | Every call of a function across the project, with each call's line of code. | yes |
engine_callees | What a function calls, with where each callee is defined in the project. | yes |
engine_guards | The conditions that hold on every feasible path to a line. | yes |
engine_check | Decide a claim about a line (guarded_by a pattern, scoped_by_identity): proved, refuted with a witness path, or unknown. | yes |
A security-review prompt chains scan (with the AI layer), verify, and an offer to fix.
The engine_* tools are the queries Frame's own authorization hunt gives its agents, for any agent. The first call on a project starts a frame query <path> --serve process (Frame 1.1.5 or later) that translates the project once, with no model; later calls on that pr