Skip to main content
Glama

FaxFair

Server Details

Fax API and MCP server for AI agents. Fax US and Canada, pay per request with x402. No account.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL
ChatGPT
–
Claude
–

TDQS

A4.1/5.0

Scored across 3 tools

Disambiguation5/5

Each tool maps to a distinct step in the fax lifecycle: quote (price), send (dispatch), and get_fax_status (read). The descriptions explicitly disambiguate by clarifying that quote and status do not send or charge, while send is the only charging action.

Naming Consistency5/5

All three tools follow a clean snake_case verb_noun pattern (get_fax_status, quote_fax, send_fax) with the fax resource consistently named. The one deviation is the extra 'status' noun in get_fax_status, but it remains predictable and readable.

Tool Count5/5

Three tools is a tightly scoped set that maps exactly to the core workflow of pricing, sending, and tracking a fax, with no redundancy. Each tool clearly earns its place and there is no surface bloat.

Completeness4/5

The core create-read-price lifecycle is covered, but there is no way to list past faxes or cancel a queued/sending fax, which are common operational needs. Agents can work around these by retaining fax ids from send_fax and polling get_fax_status, so the gaps are minor.

Available Tools

3 tools
get_fax_statusAInspect

Read one fax by id. Status is queued, sending, delivered or failed. Does not charge.

NameRequiredDescriptionDefault
fax_idYesThe id returned by send_fax.

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the burden, and it does disclose the four possible status values and the important fact that the call is free — useful behavioral context. It omits whether status is eventually consistent or should be polled, what happens for an unknown id, and any rate-limit or permission notes.

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 very short sentences, front-loaded with the action, followed by the return-value enumeration and the cost note. Nothing is padded or redundant.

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?

For a single-parameter read tool with no output schema, the description covers the action, the possible return states, and the cost behavior. Only minor gaps remain, such as error handling for unknown ids and whether repeated polling is the intended pattern.

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 schema already explains fax_id as 'The id returned by send_fax'; the description's 'by id' adds no meaning beyond that. Baseline 3 is appropriate since the schema does the heavy lifting.

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 and resource ('Read one fax by id'), which is clearly distinguishable from the sibling send_fax (which creates) and quote_fax (which prices). The 'Does not charge' clause further signals it is the non-mutating lookup, though it never names the siblings explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: look up a fax when you have an id from send_fax, without incurring cost. There is no explicit when-to-use vs when-not-to-use guidance, no mention of polling for in-progress status, and no exclusions relative to quote_fax or send_fax.

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

quote_faxAInspect

Price one fax to a US or Canadian number before sending it. Returns both tiers: standard and priority, in cents and in USDC atomic units. Does not send the fax and does not charge.

NameRequiredDescriptionDefault
toYesFax number in the United States or Canada.
pagesYesHow many pages the PDF has.
payerNoWallet address, if it has credit from a failed fax.
priorityNotrue to price the priority tier. The reply always lists both tiers.

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and does well: it discloses that nothing is sent and nothing is charged, and that both pricing tiers are returned in two units (cents and USDC atomic units). It does not cover failure modes (e.g., an unpriceable or invalid number) or auth/payer-credit behavior, which keeps it short of 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.

Conciseness5/5

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

Three short sentences, front-loaded with the action and scope, followed by the return shape, then the non-side-effect guarantee. No filler.

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?

For a read-only pricing tool with no output schema, the description adequately specifies both the input scope and the shape of the response (two tiers, two unit representations). Minor gap: it does not say what happens for unsupported numbers or how the optional payer credit affects the quote.

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%, so the schema already documents all four parameters including the note that the reply always lists both tiers. The description only reinforces the 'to' geography and the dual-tier return, adding little meaning beyond the structured fields; baseline 3 applies.

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 ('Price one fax') with explicit geographic scope (US or Canadian number), and the sentence 'Does not send the fax' distinguishes it from the send_fax sibling without the agent needing to open either schema.

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?

'before sending it' establishes the workflow position (a pre-flight estimate ahead of send_fax) and the negation rules out using it as a send action. It does not explicitly name send_fax or get_fax_status as alternatives, so the routing is implied rather than spelled out.

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

send_faxAInspect

Send a PDF to a US or Canadian fax number. Pass an https pdf_url. Pay with Authorization: Bearer and a prepaid API key, or with the x402 PAYMENT-SIGNATURE header. priority true uses the priority price and is sent before other agent faxes. A website or app fax is still sent first. If neither payment is present the call answers 402 with both prices.

NameRequiredDescriptionDefault
toYesFax number in the United States or Canada.
pdf_urlYeshttps link to the PDF.
priorityNotrue: priority price, sent before other agent faxes. Omit for the standard price.
idempotency_keyNo8 to 64 letters, digits, hyphens or underscores. Retries return the same fax.

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations supplied, the description carries the full behavioral burden and does substantial work: it discloses the two payment paths, the 402 response with both prices, and queue ordering (priority faxes go ahead of other agent faxes, but website/app faxes still go first). Gaps remain on rate limits and, most importantly, what a successful call returns and whether sending is synchronous or queued.

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 core action is front-loaded in sentence one and the payment mechanics follow. Sentences are dense but each carries information; the payment sentence is packed tightly but not padded.

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

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a side-effecting send tool with no annotations and no output schema, the description covers payment and priority well but omits the response shape, so an agent cannot tell how to obtain the fax identifier needed to chain into get_fax_status. It also omits failure modes beyond the 402 case.

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 all four parameters. The description largely restates the schema (https pdf_url, priority meaning) rather than adding new semantics such as accepted number formats or how the priority price differs. Baseline 3 applies.

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 first sentence states a specific verb and resource with scope: "Send a PDF to a US or Canadian fax number." That is clearly distinguishable from get_fax_status and quote_fax by action alone, but the description never names or contrasts those siblings, so it stops short of a 5.

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?

It gives concrete usage conditions: pass an https pdf_url, pay via Bearer API key or the x402 PAYMENT-SIGNATURE header, and set priority true for priority pricing. The 402 fallback is described, which tells the agent what happens if it calls without payment. It does not, however, tell the agent when to call quote_fax first instead.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • First observedget_fax_status
    • First observedquote_fax
    • First observedsend_fax

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources