Joern MCP
@Lekssays
About Joern MCP
A Model Context Protocol (MCP) server that provides AI assistants with static code analysis capabilities using Joern's Code Property Graph (CPG) technology.
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"joern-mcp": {
"url": "https://0.0.0.0:4242/mcp"
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Joern MCP?
Joern MCP is a Model Context Protocol (MCP) server that provides AI assistants with static code analysis capabilities using Joern’s Code Property Graph (CPG) technology. It supports multi‑language analysis (Java, C/C++, JavaScript, Python, Go, Kotlin, C#, Ghidra, Jimple, PHP, Ruby, Swift), runs each analysis session in a Docker container, and can analyze repositories directly from GitHub URLs.
How to use Joern MCP?
To use Joern MCP, clone the repository, install Python dependencies, run ./setup.sh to build the Joern Docker image and start Redis, then launch the server with python main.py. The server uses Streamable HTTP transport and is available at http://localhost:4242. Integration with GitHub Copilot is done by adding the server URL to VS Code’s settings.json.
Key features of Joern MCP
- Multi‑language static analysis via Joern’s CPG
- Docker isolation per analysis session
- GitHub repository analysis directly from URLs
- Persistent CPG sessions with automatic cleanup
- Redis‑backed caching and session management
- Async CPG generation and query execution
Use cases of Joern MCP
- Run custom CPGQL queries on any supported codebase
- Explore code structure (methods, calls, files, code snippets)
- Find security vulnerabilities with taint analysis and program slicing
- Check method reachability and build call graphs
- Search for hard‑coded secrets or dangerous API usage
FAQ from Joern MCP
What languages does Joern MCP support?
Java, C/C++, JavaScript, Python, Go, Kotlin, C#, Ghidra, Jimple, PHP, Ruby, and Swift.
What are the runtime requirements?
Python 3.8+, Docker, Redis, and Git are required.
How does the server handle data persistence?
Sessions, query results, and CPG data are cached in Redis and automatically cleaned up based on a configurable TTL and concurrency limit.
Which transport protocol does the server use?
The server uses Streamable HTTP transport, making it network‑accessible and able to handle multiple concurrent clients.
Can I configure memory limits for large projects?
Yes, memory limits for Joern can be set via environment variables (JOERN_MEMORY_LIMIT, JOERN_JAVA_OPTS) or in the config.yaml file.
More Other MCP servers
IDA Pro MCP
mrexodiaAI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
Nginx UI
0xJackyYet another WebUI for Nginx

EverArt
modelcontextprotocolModel Context Protocol Servers
Unity MCP ✨
justinpbarnettUnity MCP acts as a bridge between AI assistants and your Unity Editor. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.
Awesome Mcp Servers
punkpeyeA collection of MCP servers.
Comments