Skip to main content
Glama

Export House Project as Editable DOCX or XLSX

project_export
Read-onlyIdempotent

Export the same house-flagship content palette_pdf renders as a genuinely editable Word document or Excel workbook -- for a client who needs to annotate the scheme, or a contractor building a materials/procurement schedule from it. Accepts exactly one of house, house_ref, or project_id (same resolution and ownership rules as palette_pdf: an authenticated project_id or house_ref requires its owner; an anonymous temporary house_ref works bearer-only). Never calls house_specify, never re-runs reasoning or re-matches archives -- it renders exactly what was already resolved and stored. DOCX mirrors the PDF flagship's structure (title page, house thesis, whole-house progression, one section per room, implementation details with the same historical/digital-estimate/commercial-candidate distinction, and a deduplicated source appendix) as real editable paragraphs and tables, never images. XLSX produces three sheets: Finishes Schedule (one row per room-surface-colour assignment), Evidence Register (one row per unique colour, the full citation/claim-strength/do_not_say trail), and Paint Procurement (one row per unique paint product, deduplicated for ordering). Every field left blank where the underlying stored data doesn't have it -- nothing is invented. delivery="url" (default) gives a signed R2 download link; delivery="base64" returns the file inline unless the encoded result is too large, in which case it fails closed with OUTPUT_TOO_LARGE_FOR_INLINE_DELIVERY and a repair instruction to use delivery="url" instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
houseNohouse_specify's full response object, unmodified -- alternative to house_ref/project_id. PREFER house_ref or project_id when available.
formatYesWhich editable format to produce.
deliveryNo'url' (default): signed, time-limited R2 download link. 'base64': file bytes returned inline as file_base64, unless too large -- see OUTPUT_TOO_LARGE_FOR_INLINE_DELIVERY.url
house_refNoThe house_ref string house_specify returns. For a durable (authenticated) project this also requires the same API key that created it.
project_idNoThe project_id returned by house_specify for an authenticated (keyed) call. Requires the same API key that created the project.
project_versionNoUsed with either house_ref or project_id -- export this specific immutable version instead of the project's current version. Omit to export the current version.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.8/5.0
Behavior5/5

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

The description discloses critical behaviors beyond the readOnly/idempotent hints: it 'never re-runs reasoning or re-matches archives', renders only stored data, leaves blank fields where data is missing, and fails closed with OUTPUT_TOO_LARGE_FOR_INLINE_DELIVERY. This is rich behavioral context that annotations alone do not provide.

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?

The description is a long paragraph, but each sentence adds unique value (purpose, resolution rules, DOCX structure, XLSX sheets, data fidelity, delivery options). It is verbose yet well-structured; it could be tighter but remains efficient for the tool's complexity.

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 the tool's complexity (6 params, nested objects, output schema), the description is remarkably complete: it explains ownership rules, both format layouts, failure modes, and data-source behavior. The output schema covers return specifics, so the description needn't detail them, and it leaves no major gaps.

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

Parameters4/5

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

Schema covers 100% of parameters, so baseline is 3. The description adds mutual exclusivity of house/house_ref/project_id and explains delivery failure behavior, but it does not elaborate on project_version or the house object structure beyond the schema, so it adds meaningful but not exhaustive extra value.

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 explicitly states it exports the house project as an editable DOCX or XLSX, with the specific verb 'Export' and clear resource. It distinguishes from the sibling palette_pdf by contrasting with 'palette_pdf renders' and clarifying it produces editable formats, not PDFs.

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?

It gives concrete use cases ('a client who needs to annotate the scheme, or a contractor building a materials/procurement schedule') and references palette_pdf for resolution/ownership rules, implying when to use the PDF alternative. It also clarifies that it never calls house_specify, guiding the agent to use prior resolved 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.

TDQS

A3.6/5.0
Disambiguation2/5

Several tool clusters perform near-identical functions: extract_image_colours, image_palette and palette_extract all extract dominant colours from images; colour_passport, colour_dna, colour_metrics and colour_cultural_risk all profile a single hex; and at least six compound 'complete package' tools (agent_brief, archive_report_brief, brand_report, design_session, image_brief, session_brief) overlap heavily in scope. The descriptions try to differentiate -- some even point to tool_guide for routing -- but the volume and similarity of clusters makes misselection likely.

Naming Consistency4/5

The vast majority of tools follow a clear domain_prefix_suffix pattern (colour_, palette_, archive_, brand_, accessibility_, project_) and within families naming is very disciplined (brand_guideline_specify/select/pdf/claims/status, project_get/list/versions/delete). However, a handful of outliers invert the order (extract_image_colours, ingest_image, render_colour_result, query_hex) and some descriptions reference tools that don't exist as endpoints (palette_from_concept, match_paint_system, get_colour_metrics).

Tool Count1/5

88 tools is far beyond any reasonable single-server surface, even for a platform spanning archives, branding, interiors and accessibility. The sheer number forces agents into a massive decision space, and many tools exist purely as convenience wrappers that replace chains of 3-6 other tools, suggesting aggressive consolidation was needed.

Completeness4/5

The surface covers an unusually broad domain -- archive search, colour science, palettes, branding, interiors, accessibility, image extraction, projects, and PDF/Word/Excel exports -- with very few dead ends for end-user workflows. Minor gaps: several compound-tool descriptions reference tools that no longer exist, and valid archive names are only discoverable via error messages rather than a dedicated listing endpoint.

Resources