Skip to main content
Glama

Faxette

Check a fax in the account

get_fax
Read-onlyIdempotent

Use this for one fax from the person's Faxette account: its status, price, payment, documents' file names and history. Pass the id from get_faxes or create_fax. While a fax is sending, call it at most once a minute. Needs the person to sign in to Faxette; calling it while they aren't asks the app to sign them in. It changes nothing.

Input Schema

NameRequiredDescriptionDefault
idYesThe fax's id, from get_faxes or create_fax.

Output Schema

NameRequiredDescriptionDefault
idYesThe fax's id. Pass it to get_fax when the person is signed in.
priceYesBefore tax. Null until the pages are counted.
statusYesdraft: waiting for files, or for a file to be fixed. processing_documents: counting pages. documents_ready: ready to pay. awaiting_payment: the person is paying. scheduled: paid, about to dial. sending, delivered, failed. canceled: not paid in time.
attemptYesThe current attempt to dial the fax number.
historyYesWhat has happened to the fax, oldest first.
paymentYesThe person's payment once they start paying, by card or from their credit. amount_cents includes tax.
documentsYesThe documents' file names, in the order they're faxed. Empty once deleted.
failed_atYes
resend_byYesFor a failed fax: until when the person can correct the fax number on the status page and send it again.
created_atYes
fax_numberYes
page_countYesNull until the pages are counted.
status_urlYesThe page where the person checks the fax and pays. Give it to them.
credit_priceYesWhat send_fax takes from the credit for this fax. Null once it can no longer be paid for.
delivered_atYes
max_attemptsYes
failure_reasonYesFor a failed fax: temporary (busy or no answer on every attempt), wrong_number (no fax machine answered), or our_side.
status_messageYesWhere the fax is, in the words the fax page uses.
document_errorsYesFiles Faxette couldn't use. position is the file's number in the fax. The person fixes them on the status page.
next_attempt_atYesWhen the next attempt dials, if the line was busy or didn't answer.
checkout_availableYesTrue when the person can pay on the status page.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already declare readOnlyHint/idempotentHint, yet the description adds two non-obvious operational facts: a polling rate limit while a fax is sending, and the auth behavior that calling it while the user is signed out triggers a sign-in flow. 'It changes nothing' reinforces rather than contradicts the readOnly annotation.

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?

Three tight sentences, front-loaded with the purpose, then id provenance, then the two operational constraints. No filler and nothing repeated.

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?

An output schema exists, so the enumeration of returned fields is a bonus rather than a requirement. Auth requirements, rate limiting, id source, and the no-side-effect guarantee cover everything needed to invoke a single-parameter read tool correctly.

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 parameter's own description already says the id comes from get_faxes or create_fax, so the description's id guidance is essentially duplicative. Baseline 3 applies since the schema carries the parameter semantics.

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?

States a specific verb+resource and scope ('one fax from the person's Faxette account') and enumerates what comes back: status, price, payment, document file names, history. The singular 'one fax' implicitly separates it from get_faxes, but it never explicitly distinguishes itself from get_fax_status, which a reader could plausibly confuse it with.

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?

Gives clear usage context: call it for a single fax, pass the id obtained from get_faxes or create_fax, and throttle to once a minute while sending. It does not name get_fax_status as an alternative or say when that sibling is preferred, so the routing guidance is incomplete rather than absent.

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.