Skip to main content
Glama

Roof plan as a PDF (solar roof check)

roof_report_pdf
Read-onlyIdempotent

The plan behind a solar roof check link as the one-page PDF report the solar roof check page prints, in German, for the person to keep or print: the 3D picture, key figures, the roof from above with its modules, the faces, kWh month by month, self-use with and without battery, the worst shade casters, and a QR code that opens the plan. The PDF comes back inside this answer as an embedded resource (application/pdf, base64); save it as a file. Nothing is stored on the server and no download link is made. This one-shot call waits at most 55 seconds for the page's own report and otherwise answers with a drawn version (same modules; the answer's page_report says why and where the time went); for the page's own report with more time use roof_report_pdf_start. An example, not a quote; the price guide in it is a rough guide, never an offer.

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": {
      "link": "<link>"
    },
    "name": "roof_report_pdf"
  }
}

Input Schema

NameRequiredDescriptionDefault
linkYesA solar roof check link (https://pv.skysolar.de/dachcheck/#d=…), as plan_roof, edit_roof or the solar roof check page gave it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / link / description
      Previous value: -"A Dachcheck link (https://pv.skysolar.de/dachcheck/#d=…), as plan_roof, edit_roof or the Dachcheck page gave it."New value: +"A solar roof check link (https://pv.skysolar.de/dachcheck/#d=…), as plan_roof, edit_roof or the solar roof check page gave it."
  2. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, non-destructive and open-world, and the description adds genuinely new behavior: the PDF arrives as an embedded base64 application/pdf resource, nothing is stored server-side and no download link is produced, there is a 55-second budget with a documented fallback to a drawn version flagged via page_report. The only soft spot is that page_report's exact shape and failure modes for a bad link are left implicit.

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?

Front-loaded with the outcome (one-page PDF) and the delivery mechanism, then the fallback, so the agent reads the important parts first. It is dense and somewhat run-on, and the closing caveat about the embedded example price guide is useful but tacked on.

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

Completeness4/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 still explains the return channel (embedded resource, base64), the fallback path, and non-persistence, which is what an agent needs to handle the result. Minor gaps remain around the page_report fields and invalid-link behavior, but the core is covered.

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 coverage is 100% and the single 'link' parameter is already documented in the schema with format and source tools. The description only restates that the link is a solar roof check link, adding no new syntax or validation meaning beyond the schema.

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 ('the plan ... as the one-page PDF report'), enumerates the report's contents, and names the sibling it differs from (roof_report_pdf_start). An agent can distinguish it from roof_report_pdf_start/file/status 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 decision rule: use this one-shot call when 55 seconds of waiting is acceptable, otherwise use roof_report_pdf_start for the page's own report with more time. It also tells the agent to save the returned resource as a file rather than treat it as inline data.

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.

Resources