Skip to main content
Glama
banderzhm
by banderzhm

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
workspace_openA

Open a C++ workspace and start one persistent module-aware clangd process.

workspace_statusA

Return clangd readiness, warmup progress, module counts, PCM/modmap coverage, and recent errors.

workspace_refreshB

Reload compile commands and rebuilt PCM/modmap artifacts, restarting clangd without rewriting unchanged cache files.

workspace_warmA

Start non-blocking AST warmup. Poll workspace_status; other MCP tools remain available.

module_searchA

Search named C++ modules and partitions, including entities clangd does not expose as symbols.

module_graphC

Resolve a module to interface units, imports, dependencies, and importing translation units.

module_qualityA

Use clangd AST to find non-trivial definitions in module interfaces and verify matching .cpp implementation units.

formatA

Format C++/module source with clangd. Preview is the default; apply=true explicitly writes the file and updates clangd.

astA

Return clangd's detailed AST plus synthetic module context for module declarations/imports.

document_symbolsB

List declarations in a C++ source or module unit using clangd's hierarchical symbol view.

workspace_symbolsB

Search clangd symbols and named C++ modules in one request.

definitionB

Find a declaration/definition across module BMIs. Position values are 1-based; needle is often easier for agents.

referencesB

Find indexed references to a declaration across module units and translation units.

diagnosticsB

Parse a file and return clangd diagnostics after module resolution.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 14 tools

Disambiguation4/5

The tools sort into recognizable groups: workspace lifecycle, module graph/quality, AST/symbol queries, navigation, and diagnostics. There is some boundary overlap between module_search and workspace_symbols, and between ast and document_symbols, but the descriptions are usually enough to steer an agent to the right tool.

Naming Consistency3/5

The naming is readable and uniformly snake_case, but is not strongly consistent: workspace_open and workspace_refresh are verb-focused, while ast, definition, references, diagnostics, module_quality, and document_symbols follow different naming styles. The workspace_* and module_* prefixes help, but there is no single predictable verb_noun pattern across the surface.

Tool Count4/5

14 tools is reasonable for a C++ module-aware clangd server covering workspace lifecycle, module graph analysis, AST inspection, formatting, navigation, and diagnostics. It is on the larger side, but each tool addresses a meaningful aspect of the domain rather than introducing pure redundancy.

Completeness4/5

The tool surface covers workspace readiness, module discovery and dependency resolution, AST/symbol queries, formatting, cross-file navigation, and diagnostics. Minor gaps include a way to close/discard a workspace and any MCP-level operation to modify module units, but these do not block core read/build/analyze workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues