Skip to main content
Glama

Faxer — Send Faxes

Server Details

Send real faxes from AI assistants. Pay per fax ($1 + $0.25/page), no account or API key.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.

Claim Faxer — Send Faxes

Claiming proves that you control this connector and unlocks listing details, thumbnails, health checks, and analytics. It does not change or interrupt the running server.

Complete one method below. Compare the methods and read troubleshooting steps.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 4 of 4 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct stage of the fax workflow: quoting, paying, sending, and status checking. There is no meaningful overlap between their purposes, and the descriptions reinforce the boundaries clearly.

Naming Consistency4/5

The tools follow a consistent snake_case verb-first pattern: create_fax_payment, get_fax_quote, get_fax_status, and send_fax. The only minor deviation is that send_fax lacks an additional object noun, but it remains readable and predictable.

Tool Count5/5

Four tools is well-scoped for a fax-sending service: quote, payment, send, and status cover the essential user journey without unnecessary extras. Each tool has a clear role and earns its place.

Completeness5/5

The tool set covers the full faxing lifecycle from price estimation through payment and transmission to delivery status. There are no obvious dead ends; even the human-in-the-loop payment flow is handled with a dedicated payment tool.

Available Tools

4 tools
create_fax_paymentCreate a fax payment linkAInspect

Create a Stripe Checkout payment link for a fax. Returns payment_url — give this link to the human so they can pay in their browser (agents never handle card details) — and payment_id, which you pass to send_fax after the human has paid. The price is computed server-side from the document or text. The Checkout link expires (see expires_at, ~24h); create a fresh one if the human delays.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesRecipient fax number in international format, e.g. +15551234567.
pagesNoPage count, if pricing without the document. send_fax re-verifies against the real content.
cover_textNoPlain text to fax instead of a document.
document_urlNoPublic http(s) URL of the PDF to fax (same one you will pass to send_fax).
Behavior5/5

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

Annotations indicate readOnly=false, openWorld=true, and idempotent=false, and the description adds concrete side effects: a Stripe Checkout session is created, the link expires in ~24h, and agents never handle card details. It also clarifies pricing is computed server-side, which is non-obvious and prevents agents from trying to calculate prices themselves.

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 sentences front-load the action and return contract, then add exactly the operational details an agent needs: who pays, what to pass to send_fax, and expiry. There is no filler and no repetition of schema content.

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 no output schema, the description names the two key return values, payment_url and payment_id, and links them to the surrounding human-payment and send_fax flow. The expiry guidance and server-side pricing fill the practical gaps for a 4-parameter tool, making it complete enough to call 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?

All four parameters already have descriptive schema text (100% coverage), so the description need not repeat them. It adds only cross-cutting behavior such as server-side price computation and the expires_at signal, rather than per-parameter semantics, matching the baseline for fully covered schemas.

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 ('Create a Stripe Checkout payment link for a fax') and distinguishes itself from siblings by explaining that the returned payment_id is later passed to send_fax. It is unmistakably a payment-setup tool, not a quote, status, or send tool.

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 frames the exact workflow: give payment_url to the human, wait for payment, then pass payment_id to send_fax. It also advises creating a fresh link if the human delays because the link expires. It does not explicitly contrast with get_fax_quote, so exclusions are left implied rather than stated.

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

get_fax_quoteGet a fax price quoteA
Read-only
Inspect

Get the exact price to send a real fax to any US, Canadian, or international fax number via faxer.me. Call this first whenever a user wants to send, transmit, or fax a document or message. Provide document_url (a publicly downloadable PDF), cover_text (plain text that will be rendered onto fax pages), or pages (an estimated page count). Pricing is pay-per-fax ($1.00 first page + $0.25/page, returned in USD cents); no account or API key needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
pagesNoEstimated page count, if you only need a rough quote.
cover_textNoPlain text to fax instead of a document (rendered as PDF pages, ~3000 chars/page).
document_urlNoPublic http(s) URL of the PDF to fax. The server downloads it and counts real pages.
Behavior4/5

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

Annotations already mark the tool as readOnly and openWorld, so no mutation risk is implied. The description adds valuable behavioral context beyond annotations: no account or API key is needed, pricing is pay-per-fax with a specific formula, and quoted prices are returned in USD cents. This gives the agent useful expectations about cost and access.

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 dense and front-loaded with the core purpose, usage guidance, and pricing. It earns its length, though phrases like 'send, transmit, or fax' are slightly redundant. Overall it is concise for the amount of useful context it packs in.

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?

The tool has no output schema, so the description's statement that prices are 'returned in USD cents' partially fills that gap. It covers geography, input alternatives, pricing, authentication, and when to call the tool. It could be more explicit about the exact response shape, but for a simple quote tool the provided context is sufficient.

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 parameters are already well documented. The description renames the three parameter options and adds the 'publicly downloadable PDF' constraint, but this mostly overlaps with the schema's 'Public http(s) URL of the PDF to fax.' The description does not substantially exceed the schema's parameter explanations.

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 states a specific action and resource: 'Get the exact price to send a real fax to any US, Canadian, or international fax number via faxer.me.' It is clearly distinct from sibling tools like send_fax, create_fax_payment, and get_fax_status. The phrase 'Call this first' reinforces that this is the quote-before-send tool.

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 explicitly says to call this tool first whenever a user wants to send, transmit, or fax a document or message. This is a clear usage trigger. It does not explicitly name sibling alternatives or exclusion cases, but the 'call this first' guidance makes the intended workflow clear.

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

get_fax_statusCheck fax delivery statusA
Read-only
Inspect

Check the delivery status of a fax sent with send_fax. Status 'success' means the receiving fax machine confirmed the transmission; 'inprogress'/'queued' mean it is still sending; 'failure' means it could not be delivered. Delivery typically takes 1-5 minutes; poll roughly every 30 seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
fax_idYesThe fax_id returned by send_fax.
Behavior5/5

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

Beyond the readOnlyHint and openWorldHint annotations, the description explains the meaning of each status value and gives expected timing behavior. This is valuable operational context that helps the agent interpret results and decide how to poll.

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 compact and front-loaded, starting with the primary purpose before explaining statuses and polling. Every sentence earns its place, with no filler or redundancy.

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 single-parameter read-only status tool with no output schema, the description supplies all necessary operational details: status values, their meanings, expected timing, and polling guidance. An agent has enough information to call the tool and interpret the result 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?

The schema already fully describes fax_id as 'The fax_id returned by send_fax,' so the description adds little beyond reinforcing the link to send_fax. With 100% schema coverage, the baseline applies; no extra parameter semantics are needed.

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 clearly identifies the tool as checking fax delivery status and explicitly ties it to faxes sent via send_fax. It distinguishes this tool from siblings because it is the only one focused on status checking for already-sent faxes.

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 concrete usage context: it is for faxes sent with send_fax, and it even advises polling every 30 seconds with expected delivery times. It does not explicitly name alternatives or state when not to use it, but the context is clear enough for an agent to select this tool appropriately.

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

send_faxSend the faxAInspect

Transmit a fax. Two ways to pay: (1) human-in-the-loop — pass the payment_id from create_fax_payment after the human has paid the Stripe Checkout link; (2) autonomous machine payment (x402/MPP) — call WITHOUT payment_id and the server replies with a payment challenge (JSON-RPC error -32042) for USDC-on-Tempo or a Stripe Shared Payment Token; pay it and retry with the credential in _meta['org.paymentauth/credential']. Either way the server verifies the payment covers the server-computed price of the actual content before sending via a real fax carrier. One fax per payment; card/Checkout and Stripe machine payments are refunded automatically if the fax fails to send or deliver (on-chain payments are refunded manually).

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesRecipient fax number in international format, e.g. +15551234567.
cover_textNoPlain text to fax instead of a document.
payment_idNoThe payment_id from create_fax_payment (Stripe Checkout Session id). Omit to pay autonomously via an x402/MPP machine-payment challenge instead.
document_urlNoPublic http(s) URL of the PDF to fax.
cover_subjectNoOptional heading for a cover_text fax.
Behavior5/5

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

Annotations only state readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false. The description adds substantial behavioral context: the server verifies payment covers the actual content price, refund policies (automatic for card/Checkout and Stripe machine payments, manual for on-chain), the specific error code -32042 for payment challenge, and the use of a real fax carrier. These go far beyond what annotations 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 dense but well-organized: a single purpose sentence followed by a detailed explanation of payment methods, verification, and refunds. Every sentence contributes critical information; there is no fluff. The structure uses clear separation of the two payment paths, making it readable despite its length.

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 (5 params, two payment flows, error handling, refunds) and lack of output schema, the description covers all essential aspects an agent needs to call it correctly: how to initiate both payment methods, what the server checks, how refunds work, and the retry mechanism. It is complete for a fax-sending operation.

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 descriptions cover 100% of parameters, so the baseline is 3. The description adds extra semantics for payment_id ('Omit to pay autonomously', source from create_fax_payment, credential handling) and clarifies the distinction between cover_text and document_url ('cover_text to fax instead of a document'). This enriches understanding 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?

The description clearly states 'Transmit a fax' – a specific verb and resource. It distinguishes from siblings by describing the payment flow that ties to create_fax_payment and mentions the server's verification and refund behavior, which sets it apart from get_fax_quote and get_fax_status. The purpose is unambiguous.

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 guidance on how to use the tool: two payment methods (human-in-the-loop via payment_id and autonomous machine payment without it), with detailed instructions on how to handle the payment challenge and retry. It clearly references create_fax_payment as the source of payment_id, indicating the intended sequence. It does not explicitly mention alternative tools for exclusion, but the context is sufficient.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to send real faxes through the FaxDrop API. Provides safeguards including rate limiting, dry-run mode, and audit logging for secure fax operations.
    3
    22
    5
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Send, receive, and verify faxes from AI assistants and agents via the Model Context Protocol.
    50
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to send free and paid faxes to US and Canada numbers, check fax status, and purchase prepaid credits, all without leaving the chat.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Send real physical postcards worldwide via AI agents. Supports single and bulk send (up to 500 recipients), balance checking, delivery tracking, and volume pricing from $0.72/card.
    5
    17
    5
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources