{"id":"6a13051a-43fe-4c5a-86d8-c1c0d5a76579","slug":"mcp-lattice","kind":"mcp","name":"MCP-Lattice","summary":"Security scanner for Model Context Protocol (MCP) with capability graph analysis. Detects emergent attack chains across multi-server AI agent deployments that no individual tool scan can find.","owner":"panavinsingh","repoUrl":"https://github.com/panavinsingh/MCP-Lattice","license":"Apache-2.0","licenseTier":"permissive","trust":"community","stars":9,"match":null,"fewStars":false,"format":"mcp","createdAt":null,"addedAt":"2026-10-14T05:07:03.877Z","logoUrl":"https://avatars.githubusercontent.com/u/219116434?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["cloud-infra","memory-knowledge"],"tags":["agent-security","ai-security","golang","security","vulnerability-scanner"],"runtime":"go","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-14T09:37:07.632Z","sample":false,"url":"https://conduits.dev/tools/mcp-lattice","language":"Go","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"# MCP-Lattice\n\nOpen-source MCP security scanner with capability graph analysis.\n\n[![Go Report Card](https://goreportcard.com/badge/github.com/panavinsingh/MCP-Lattice)](https://goreportcard.com/report/github.com/panavinsingh/MCP-Lattice)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)\n[![Release](https://img.shields.io/github/v/release/panavinsingh/MCP-Lattice)](https://github.com/panavinsingh/MCP-Lattice/releases)\n\n## The Problem\n\nThe Model Context Protocol (MCP) ecosystem has grown to over 10,000 servers, yet there is no comprehensive security tool to audit them. At least 25 CVEs and disclosure reports have documented vulnerabilities across tool poisoning, prompt injection, SSRF, and auth bypass classes. Existing scanners cover only a fraction of the attack surface and none analyze cross-server attack chains. MCP-Lattice fills that gap.\n\n## What MCP-Lattice Does\n\n- **Auto-discovers** MCP configurations for Claude Desktop, Cursor, Windsurf, VS Code, and Gemini CLI\n- **34 detection templates** covering prompt injection, tool poisoning, code execution, auth bypass, data exfiltration, supply chain, privilege escalation, and DoS\n- **4-layer detection pipeline**: L1 Pattern matching (<1ms), L2 Semantic analysis (~20ms), L3 Capability graph (~50ms), L4 Causal/LLM (planned)\n- **4 output formats**: terminal table, JSON, SARIF (for CI/CD), and HTML\n\n## Quick Start\n\n### Install\n\n```bash\ngo install github.com/panavinsingh/MCP-Lattice/cmd/mcp-lattice@latest\n```\n\nOr download a prebuilt binary from the [releases page](https://github.com/panavinsingh/MCP-Lattice/releases).\n\n### Run\n\n```bash\nmcp-lattice scan                                    # auto-discover and scan all MCP servers\nmcp-lattice scan --config ~/.config/claude/claude_desktop_config.json  # scan a specific config\nmcp-lattice scan --format sarif -o results.sarif    # SARIF output for CI\nmcp-lattice scan --severity high                    # only high and critical findings\n```\n\n## What It Finds\n\n- Tool poisoning with hidden instructions\n- Prompt injection via tool descriptions and parameters\n- SSRF-prone parameters with no allowlists\n- Zero-auth servers exposed to the network\n- Toxic tool combinations across servers\n- Data exfiltration paths (filesystem to HTTP)\n- Privilege escalation through capability chaining\n- Supply chain risks in server dependencies\n\n## Capability Graph Analysis\n\nMCP-Lattice builds a capability graph across all configured MCP servers, modeling what each tool can read, write, execute, and transmit. It then searches for cross-server attack chains -- for example, a filesystem-read tool on one server combined with an HTTP-send tool on another creates an exfiltration path. This is the key differentiator: no other scanner detects multi-server toxic combinations.\n\n## Results\n\nWe attempted to scan 100 MCP servers from the npm registry (75 scanned successfully, 25 timed out):\n\n| Metric | Value |\n| --- | --- |\n| **Total findings** | 1,275 (759 Critical, 505 High, 11 Medium) |\n| **Cross-server attack chains** | 1,082 (84.9% of findings) |\n| **Servers with findings** | 34 of 75 scanned |\n| **Most affected servers** | browser-devtools-mcp (150), Heroku (116), Notion (94), CircleCI (89) |\n\nFull methodology and reproduction scripts are in the [`research/`](research/) directory.\n\n## Contributing\n\nWe welcome contributions -- especially new detection templates, which are the easiest way to get started.\n\n- [SECURITY.md](docs/SECURITY.md) -- reporting vulnerabilities in MCP-Lattice itself\n- [TEMPLATE_AUTHORING.md](docs/TEMPLATE_AUTHORING.md) -- writing custom detection templates\n- [CONTRIBUTING.md](docs/CONTRIBUTING.md) -- development setup and pull request process\n\n## Documentation\n\n- [Architecture](docs/ARCHITECTURE.md) -- detection pipeline and system design\n- [Threat Model](docs/THREAT_MODEL.md) -- MCP threat taxonomy and attack classes\n- [Template Authoring](docs/TEMPLATE_AUTHORING.md) -- YAML template schema reference\n- [Contributing](docs/CONTRIBUTING.md) -- development workflow and code style\n- [Security](docs/SECURITY.md) -- vulnerability disclosure policy\n\n## License\n\nApache License 2.0. See [LICENSE](LICENSE) for the full text.\n"}