Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
APP_NAMENoName displayed in the proxy dashboard.Feature Analyzer
APP_PATHNoMount path of the GUI behind the proxy. Ignored in APP_PORT mode./feature-analyzer
APP_PORTNoLocal port used when PROXY_URL is absent: the GUI is served directly on http://localhost:<port>, at the root. Must be an integer between 1 and 65535; otherwise the GUI is disabled.
APP_GROUPNoCollapsible section of the proxy dashboard (optional).
PROXY_URLNoURL of the central proxy: the proxy assigns the port and mounts the GUI under APP_PATH. Takes precedence over APP_PORT.
MCP_LOG_DIRNoLog directory. Default: <data>/logs. Read at startup from the server declaration.
MCP_DATA_DIRNoFallback storage directory for analyses if MCP_FEATURE_ANALYZER_DATA_DIR is not set.
APP_PATH_PREFIXNoNamespace prefix applied to the path by the shared proxy client; the GUI's <base href> follows the actually registered path.
MCP_SERVER_ROUTENoRoute for the server when running behind mcp-http-gateway, e.g. /feature-analyzer.
MCP_FEATURE_ANALYZER_ROLENostandalone (default): git runs on the server machine. remote: the server is behind mcp-http-gateway and makes git run on the agent machine. Any other value refuses startup. Read at startup.standalone
MCP_FEATURE_ANALYZER_DATA_DIRNoStorage directory for analyses. Default: MCP_DATA_DIR, then <package>/.feature-analyzer-data.

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
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_analysesA

List the analyses grouped by project, with their refs, open findings by severity, reviewed files, diagram count and review state (not started, in progress, all files reviewed, submitted). Start here: when the project already has an analysis of the feature, continue it (update_analysis to rewrite the overview and summary, refresh_analysis after changing the code) instead of creating a duplicate; create a new one with create_analysis for another feature or another diff.

create_analysisA

Create an analysis once a feature is developed: computes and freezes the git diff of the repository for human review. In branch mode the diff is base...head (head defaults to HEAD); in working_tree mode it is the uncommitted changes, index included, against HEAD. Returns the id and the changed files; then read them with get_diff.

get_analysisA

Read a whole analysis: project, request, overview, summary, files (reviewed or not), findings with their status and location, reviewer notes, diagrams (flagged when their layout has crossings) and review state. Use it to check what is already recorded before adding more.

get_diffA

Read the frozen diff of one file, or of every file when path is omitted, with the old and the new line number of each line. Use the NEW-side numbers (second column) for every finding location and diagram node line.

update_analysisA

Change the title, the project, the overview, the summary or the initial request of an analysis. Right after reading the diff, write the overview (objective, approach, attention_points: your global analysis of the feature) and the summary (the functional changes of the feature, one bullet per change, not one bullet per file). Give at least one field; fields left out are kept.

add_findingsA

Record findings for the reviewer, as a batch. Each location is checked against the frozen diff and its lines are copied; if any finding is invalid, nothing is added and every problem is reported. Include requirement_gap findings for requested behaviour that is missing.

update_findingA

Change the fields of one finding: severity, kind, title, body, location, suggestion or prompt. A new location is checked against the diff and reopens an outdated finding; path null removes the location. Whether a finding is ignored is the reviewer's decision and cannot be changed here.

delete_findingsA

Delete findings by id, typically once refresh_analysis shows them solved. If any id is unknown, nothing is deleted.

add_explanationsA

Explain blocks of added or removed code to the reviewer, as a batch: what each block does and how it works. Write one for every long (about 30 lines or more) or complex block; skip trivial code. An explanation judges nothing: problems go in findings. Each location is checked against the frozen diff and its lines are copied; if any explanation is invalid, nothing is added and every problem is reported.

update_explanationA

Change one explanation: title, body or location. A new location (path and start_line, with side for removed code) is checked against the diff and makes an outdated explanation current again; rewrite the body too when the code changed.

delete_explanationsA

Delete explanations by id, e.g. when the code they describe is gone. If any id is unknown, nothing is deleted.

set_diagramA

Create a diagram, or fully replace the one with diagram_id, when a picture helps the reviewer (impact perimeter, process flow, concept map). Give nodes and links only, with no coordinates or colours: the GUI lays the diagram out and colours nodes by status. flow = a process with steps and decisions, laid out left to right along the links, where a side branch without a join and the last node of a chain hang below the node before them; layers = the impact perimeter, one column per entry of layers (e.g. GUI, API, core, storage), each node in its layer; mindmap = a tree of concepts drawn radially around its root: exactly one root, one incoming link for every other node, no cycle (refused otherwise). Rules: one subject per diagram, 5 to 12 nodes; declare nodes in reading order, since the declaration order is the initial order of every rank or column; zero crossings expected. The result reports every link crossing and every link through a node, with advice: reorder the nodes, split the diagram or change its kind, then send it again.

delete_diagramC

Delete a diagram from an analysis.

get_review_feedbackA

Read the reviewer's feedback once the review is submitted: decision, selected findings and notes, and the prompt to act on. Before submission it reports the review progress. Read-only. Always read the feedback before calling refresh_analysis, which discards it.

refresh_analysisA

Recompute the frozen diff with the same repository, mode and refs, after fixing the code. Files whose diff changed become unreviewed, findings whose lines changed become outdated, and the review restarts as pending: the previous feedback is discarded, so read it with get_review_feedback first.

delete_analysisA

Delete an analysis and its frozen diff. The repository is not touched. Also removes an analysis listed as unreadable.

reconnect_guiA

Relaunch the GUI worker and re-register it with the proxy server. Use this when the proxy server was not running when the MCP server started (so the GUI registration failed), to redeploy the GUI without restarting the MCP server. Does nothing if the GUI is already registered, unless force=true.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.8/5.0

Scored across 17 tools

Disambiguation5/5

Each tool targets a distinct resource and action (analysis lifecycle, findings, explanations, diagrams, diff, review feedback), with detailed descriptions clarifying boundaries. Potential confusion between add/update/delete variants is mitigated by singular/batch distinctions.

Naming Consistency4/5

All tools use snake_case with a verb_noun pattern (e.g., create_analysis, get_diff). Minor inconsistency: plural in add_findings/add_explanations/delete_* but singular in update_finding/update_explanation.

Tool Count4/5

17 tools cover a complex workflow with CRUD for analyses, findings, explanations, and diagrams. Slightly above the ideal 15 but each tool appears necessary and well-scoped.

Completeness4/5

Covers full analysis lifecycle, diff retrieval, findings/explanations/diagrams CRUD, review feedback, and GUI reconnect. Minor gap: no explicit read tool for explanations (though get_analysis may include them) and no standalone list for findings/explanations.

Maintenance

ActivityMaintained
ResponsivenessNo issues