Skip to main content
Glama

Get Architecture Overview

architecture_overview
Read-onlyIdempotent

Render a bounded structural overview of a .NET solution: dependency graphs, domain summary, and quality hotspots for architecture orientation without full source. Tests are excluded by default.

Instructions

Orient on a whole solution WITHOUT the firewall of full source. When anything was cut, the document LEADS with a block: how many sections were capped, how many entries are shown of how many in total, and one 'SECTION: shown of total' row per capped section - read it before the sections, because the per-section '+N more' lines below state one section's loss each and never the whole. Absent = nothing was cut. Renders a structural-only AI-Builder-Markdown overview: the macro/architecture graphs (layer map, service & class dependency graphs, role graph, entry points + entry-point flow, architecture flow, interface relations) plus a domain summary and a quality-hotspots section (the most complex methods + most-coupled types) - but NO per-type/per-file source-code blocks, so it stays bounded where export_markdown is a 27-29 MB firehose. BOUNDED AT SCALE: each macro section is capped at 80 entries with a '+N more' note; the layer map lists every type up to 2500 and per-layer counts above, so even a 200+-project monolith returns a usable orientation instead of overflowing the token cap (use export_markdown for the full set, or find_symbol / call_graph / get_context to drill in). PRODUCTION-FOCUSED: test projects are excluded by default (an architecture overview is otherwise dominated by every test method listed as an entry point + its flow trace, which is not part of the production architecture) - set includeTests=true to include .Tests/.Spec projects. Method-level call graphs are deliberately omitted (use call_graph / explain_symbol for a specific symbol). Multi-TFM solutions are deduplicated to one logical project per name, keeping the NEWEST TFM's instance (without it every hotspot/edge appears once per TFM). Recall-safe: works on live AND recalled sessions (on a recalled session quality-hotspot line counts are unavailable, complexity is still shown). Use this FIRST to understand a codebase's shape, then get_context / explain_symbol to drill into a symbol.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "sessionId": "<sessionId>"
    },
    "name": "architecture_overview"
  }
}

Input Schema

NameRequiredDescriptionDefault
leanNoLean mode (default TRUE): drop the <AI_CONTEXT_SPEC>/<AI_CONTEXT_META> format-rules preamble and any empty graph sections. Set false for the full AI-Builder-MD document contract.
sessionIdYesThe session_id returned by analyze_solution. Also takes an absolute .sln/.slnx/.slnf path, analyzed on first use.
summaryOnlyNoSummary mode (default FALSE): collapse each macro-section to a count + top-N entries instead of up to 80. Use on EXTREME/very-large solutions (200+ projects, heavy generics) where even the bounded overview exceeds the token cap and would otherwise return nothing.
includeTestsNoInclude test projects (default FALSE - production focus: an architecture overview is otherwise flooded by every test method listed as an entry point + its flow trace, bloating the output with scaffolding that is not part of the production architecture). Set true to include *.Tests/*.Spec projects in the graphs.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.5.46513
    • changedInput schema / properties / sessionId / description
      Previous value: -"The session_id returned by analyze_solution."New value: +"The session_id returned by analyze_solution. Also takes an absolute .sln/.slnx/.slnf path, analyzed on first use."
  2. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only establish readOnly/idempotent/non-destructive; the description adds substantial behavior the agent could not otherwise know: the leading <TRUNCATION> block semantics and its per-section '+N more' counterpart, the 80-entry section cap, the 2500-type layer-map ceiling, multi-TFM dedup keeping the newest TFM, and degraded output on recalled sessions (hotspot line counts unavailable). None of this contradicts the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The lead sentence is well front-loaded, but the body is a ~320-word wall of ALL-CAPS emphasis, dashes and parentheticals, and roughly a third of it re-explains parameters already fully documented in the schema. The truncation-block paragraph is placed ahead of the more decision-relevant capability summary, so an agent must read deeply before learning what the tool actually returns.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the burden of explaining the return value and does so thoroughly: the section inventory, truncation signalling, size bounds at scale, test exclusion, and session-type behavior. It also flags the fallback path when output would exceed the token cap, leaving no material gap for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each of the four parameters already carries a detailed default-plus-rationale entry, so the schema does the heavy lifting. The prose largely restates those entries (the includeTests and summaryOnly rationales are near-duplicates of the schema text) rather than adding new syntax, interaction, or edge-case meaning; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Orient on a whole solution', renders a structural macro/architecture overview) and enumerates exactly which sections are produced (layer map, dependency graphs, role graph, entry points, hotspots) and which are excluded (no per-type/per-file source blocks). It explicitly distinguishes itself from export_markdown ('27-29 MB firehose'), call_graph, explain_symbol and find_symbol, so an agent can pick it without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit ordering rule ('Use this FIRST ... then get_context / explain_symbol to drill into a symbol') plus named alternatives with the conditions that select them: export_markdown for the full set, find_symbol/call_graph/get_context to drill in, includeTests=true for test projects, summaryOnly for 200+ project monoliths. When-not guidance is present too (method-level call graphs deliberately omitted; tests excluded by default).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.