Skip to main content
Glama

Get Architecture Rationale

get_architecture_rationale

Why is this module built this way? Aggregates all architectural decisions, active constraints, corrections, and skills for a domain into a coherent narrative. Use BEFORE refactoring or questioning a design choice — the answer is often 'it's that way because of compliance/performance/incident X'. Returns decisions sorted by recency, active constraints that still apply, and correction history showing what was tried and reverted.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax results per category (default 30)
sinceNoHow far back to search (ISO datetime, default 180 days)
domainYesDomain or module to explain (e.g. 'retrieval', 'auth', 'billing', 'infra')
includeNoWhich artefact types to include (default: all)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the burden of behavioral disclosure. It does so effectively by specifying return ordering ('sorted by recency'), filtering ('active constraints that still apply'), and the inclusion of 'correction history showing what was tried and reverted'. This goes beyond the schema and gives the agent useful expectations about output behavior.

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

Conciseness5/5

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

The description is two sentences plus a leading question, each earning its place. It opens with the core purpose, then the use case, then a high-level summary of returns. No fluff or repetition of schema details.

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?

Given that an output schema exists, the description need not enumerate return fields. It covers the 'why' (architecture rationale), 'when' (before refactoring), and 'what to expect' (decisions, active constraints, correction history). The tool has four parameters but only one required; the description provides enough context for an agent to invoke it correctly without missing critical information.

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?

All 4 parameters have descriptions in the schema (100% coverage), so the description adds limited parameter-specific value. It does implicitly explain the 'include' parameter by listing the artifact types, but the schema already enumerates them. The baseline of 3 is appropriate; the description does not compensate for any gaps because none exist.

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?

The description opens with a concrete question ('Why is this module built this way?') and states the verb 'Aggregates' with a clear resource: all architectural decisions, constraints, corrections, and skills for a domain. This clearly distinguishes it from sibling tools like get_decision_context, which focuses on a single decision, by emphasizing the synthesis into a 'coherent narrative'.

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

Usage Guidelines4/5

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

The description explicitly says 'Use BEFORE refactoring or questioning a design choice', giving a clear when-to-use directive. It also hints at the value (compliance/performance/incident history) but does not mention when not to use or potential alternatives among siblings, so it misses the top score.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

C2.8/5.0
Disambiguation2/5

Several tools have overlapping purposes: check_claim and memory_claim_check are the same function with different tiers, get_freshness_report and memory_freshness_report are duplicates, get_correction_chain and compare_versions both trace history, and investigate_question subsumes many other retrieval tools. This will cause agent misselection.

Naming Consistency4/5

Most tools follow a verb_noun pattern (get_constraints, declare_constraint, sync_pull, etc.). Exceptions like memory_claim_check, memory_freshness_report, session_debrief, and verify_before_acting deviate but are relatively few. Overall the naming is readable and mostly predictable.

Tool Count1/5

75 tools is excessive for a memory server. Many are highly niche or direct duplicates (e.g., paid/free versions of the same function). The count far exceeds typical well-scoped servers and introduces cognitive overhead without proportional value.

Completeness3/5

The server covers a wide array of memory, constraint, decision, skill, and sync operations, which is impressive. However, there are notable gaps: no direct delete or edit for memory facts (only corrections/versioning), and no bulk enumeration of all stored items. The redundancy in retrieval tools also suggests an incomplete design.

Resources