Skip to main content
Glama

Download document

billingo_download_document
Read-onlyIdempotent

Retrieve the PDF document linked to a Billingo document ID. Returns a shareable public URL by default, or raw PDF bytes when base64 format is explicitly requested.

Instructions

Gets the document PDF. By default returns a shareable public URL — this is what works in most MCP clients (including Claude Desktop, which rejects the base64 file attachment) and is what you want in almost every case. Pass format="base64" only when a caller specifically needs the raw PDF bytes: it costs a lot of context (base64 is ~1.33x the PDF size) and some clients cannot render the result at all.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesDocument id.
formatNo"url" returns a public link (default); "base64" returns the PDF bytes.
Install Server

TDQS

A4.6/5.0
Behavior5/5

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

With readOnly/idempotent annotations already present, the description adds valuable behavioral detail: default public URL behavior, Claude Desktop incompatibility with base64, ~1.33x context overhead, and rendering risks. No contradiction with annotations.

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 three sentences that front-load the behavior, then add only necessary caveats. Every sentence earns its place, and the cost/rendering warnings are compactly expressed.

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?

For a two-parameter read-only tool with no output schema, the description is complete: it states the return form, default behavior, when to override it, and the trade-offs. An agent has enough context to call it correctly and to interpret the result.

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

Parameters5/5

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

The schema already covers both parameters at 100%, so the baseline is 3, but the description adds significant meaning: it names 'url' as the default, instructs when to use base64, quantifies the context cost, and warns about client support. This exceeds schema-only information.

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

Purpose4/5

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

The description states a clear action and resource: 'Gets the document PDF' and identifies two return formats. It is not a tautology, but it does not explicitly distinguish itself from the sibling billingo_get_document_public_url even though both can yield a public URL.

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 gives explicit format-selection guidance: default URL is 'what you want in almost every case' and base64 should be used 'only when a caller specifically needs the raw PDF bytes.' It does not, however, mention sibling tools or say when to prefer this tool over get_document_public_url.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/octonull/billingo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server