clangd-mcp
Provides C/C++ code intelligence via clangd, including symbol search, definition lookup, reference finding, type information, call hierarchy, and type hierarchy analysis.
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., "@clangd-mcpfind all references to the function 'run_checks'"
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.
clangd-mcp
Experimental — expect rough edges and breaking changes.
A minimal Model Context Protocol server that bridges AI assistants to clangd for C/C++ code intelligence.
How it works
Claude / Gemini ←─ MCP (stdio) ─→ server.py ←─ LSP (stdio) ─→ clangdserver.py speaks MCP to the AI client and LSP (JSON-RPC 2.0 over stdin/stdout)
to clangd. The two protocols are bridged by nine tools:
Tool | LSP call(s) | Description |
|
| Search symbols by name (fuzzy) |
|
| Show the definition site with source |
|
| List every usage, grouped by file |
|
| Show type signature and doc comment |
|
| Find concrete implementations of a virtual method or interface |
|
| Find every call site that calls a function |
|
| Find every function called by a function |
|
| List all symbols defined in a file |
|
| Show base classes and derived classes |
Related MCP server: fw-context-mcp
Requirements
Python ≥ 3.12
clangd on
$PATH(or specify--clangd)A
compile_commands.jsonfor your project (CMake:cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON)
Installation
uv tool install git+https://github.com/schuay/clangd-mcp.gitThis installs a clangd-mcp command into an isolated environment and puts a
shim on your $PATH. Upgrade later with:
uv tool upgrade clangd-mcpGemini CLI
curl -fsSL https://raw.githubusercontent.com/schuay/clangd-mcp/main/install-gemini.sh | bashThis installs the tool, prompts for project paths, and adds the server to
~/.gemini/settings.json. Requires jq.
Or add manually to ~/.gemini/settings.json:
{
"mcpServers": {
"clangd": {
"command": "clangd-mcp",
"args": [
"--compile-commands-dir", "/path/to/your/build",
"--workspace-dir", "/path/to/your/project",
"--seed-file", "/path/to/your/project/src/main.cpp"
]
}
}
}Options
All flags are optional:
Flag | Default | Description |
|
| Path to the clangd binary |
| (none) | Directory containing |
| current directory | Root of the C/C++ project |
| (none) | Source file to open at startup to trigger background indexing |
|
|
|
Tests
uv run python tests.py
# or with pytest for coloured output:
uv run pytest tests.py -vThe test suite runs without a real clangd binary — it drives the LSP client
with canned in-process responses and patches the global lsp object when
testing the MCP tool handlers.
File structure
server.py MCP server: tools, arg parsing, clangd lifecycle
lsp_client.py LSP client: subprocess management, JSON-RPC framing, queries
tests.py Unit tests (no clangd required)
pyproject.toml Dependencies (mcp>=1.0)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
- Alicense-qualityDmaintenanceProvides fast C++ code intelligence for LLMs by combining Tree-sitter parsing with clangd LSP for efficient symbol lookup, navigation, and hierarchy analysis. It optionally integrates Google Gemini AI to deliver deeper architectural insights and automated documentation summaries.Last updated23MIT
- AlicenseAqualityAmaintenanceExposes tools for AI assistants to query a persistent SQLite+FTS5 index of C/C++ symbols parsed from real build commands, enabling sub-millisecond lookup, full-text search, and natural-language explanation without hallucination.Last updated336MIT
- AlicenseAqualityFmaintenanceProvides C++ code intelligence tools for AI agents via the Model Context Protocol, enabling symbol navigation, type information, and diagnostics.Last updated944Mozilla Public 2.0
- AlicenseAqualityCmaintenanceProvides GDB and clangd-based tools for debugging C++ programs, enabling step execution, variable inspection, diagnostics, and combined runtime-static analysis.Last updated271MIT
Related MCP Connectors
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.
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/schuay/clangd-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server