Skip to main content
Glama

Small Business Intelligence by Brick & Mortar

Compose Report

compose_report
Read-onlyIdempotent

Returns a research framework, not the finished analysis: the procedure, output schema and quality rubric for assembling results already in the conversation into one client-ready report — section order, executive-summary rules, evidence-citation standards, and tone guidance matched to the audience. The calling model writes the report; this tool returns only the structure.. This tool fetches no data; the calling model runs the procedure with its own web search and produces the result.

Example invocations:

  • "I've run a teardown and a review-intelligence pass on this restaurant — compose it into a report for the owner"

  • "Assemble everything we've found on this brewery into a broker-facing diligence report"

  • "Turn the teardown and competitor landscape into a report I can hand an investor"

Input Schema

NameRequiredDescriptionDefault
audienceYesWho will read this report — drives section order, tone, and what gets emphasized vs. cut.
business_nameYesThe business the report is about.
completed_analysesYesThe completed write-ups from any prior tool calls this session, to be assembled — not re-researched.

Output Schema

NameRequiredDescriptionDefault
toolYes
noticeNoPresent ONLY when the request was denied by usage policy instead of executed. When present, every other field is an empty placeholder and must not be reported as a framework.
caveatsYes
subjectNo
frameworkYes
output_schemaYes
quality_rubricYes
research_procedureYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/non-open-world, so the safety profile is covered. The description adds the non-obvious behavioral trait that this tool is a pure structural no-op that fetches nothing and returns only a framework, with the calling model doing the actual writing — real context beyond the annotations. It omits auth/permission requirements, so not a 5.

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

Conciseness4/5

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

Purpose is front-loaded in the first clause and the example invocations are genuinely useful. However there is redundancy — 'the calling model writes the report; this tool returns only the structure' and 'This tool fetches no data; the calling model runs the procedure' restate the same point — plus a stray double period ('structure..').

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 an output schema present, return values need no explanation, and the description still covers what the tool is, what it does not do (fetch data), when to call it, and the audience-driven behavior. Nothing an agent needs in order to invoke it correctly is missing.

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%, so the schema already documents audience, business_name, and completed_analyses, including the 'not re-researched' note. The description reinforces intent ('results already in the conversation') but adds no format or syntax detail beyond what the schema provides, matching the baseline 3.

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+resource (compose a report) and precisely delimits it: 'Returns a research framework, not the finished analysis' and it 'returns only the structure.' It explicitly separates itself from the sibling analysis tools by declaring it fetches no data, so an agent can distinguish it from business_teardown, review_intelligence, etc.

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 three example invocations clearly show the intended usage context (assembling prior analyses for a specific audience), and the text states the inputs must be 'completed write-ups from any prior tool calls this session, to be assembled — not re-researched.' It implies the prerequisite (run the analyses first) but never names a specific alternative tool for the analysis step, so it stops short of explicit when-not/alternative routing.

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.