# The hosted fax MCP server

> Fifteen tools to prepare, quote, approve, send and read faxes. Remote, at mcp.faxforagents.com. API key auth, a free sandbox, set up in minutes.

Page: https://faxforagents.com/mcp/
Last changed: 2026-10-30

Updated Oct 30, 2026

- This covers: the 15 tools an agent calls at mcp.faxforagents.com with an API key
- This is not: the REST API itself, which the tools wrap, and not a protocol every fax provider speaks
- Measured by: tool calls that end with a receipt or a named refusal

Related pages [Fax API](https://faxforagents.com/fax-api/) · [For AI agents](https://faxforagents.com/fax-for-ai-agents/) · [Receive](https://faxforagents.com/receive-fax-api/) · [Numbers](https://faxforagents.com/fax-numbers/) · [Coverage](https://faxforagents.com/coverage/)

## Claude Code

Shell

```
`claude mcp add --transport http faxforagents https://mcp.faxforagents.com/mcp/ \ --header "Authorization: Bearer ffa_test_..."`
```

The trailing slash on the URL matters. Other clients are on the [setup page](https://faxforagents.com/docs/mcp-setup/).

The hosted MCP server lives at `https://mcp.faxforagents.com/mcp/` and speaks Streamable HTTP. It carries the same credential as the REST API, `Authorization: Bearer ffa_test_...` or `X-API-Key`, on every request. There is no operator key on the server and no state between requests. A client with no key is still answered on `initialize`, `tools/list`, the resources and the prompts. Every tool then answers with `error_code: invalid_token` and the way to get a key.

## The 15 tools

| Tool | What it does |
| --- | --- |
| `get_guide` | The manual, by section: overview, send, states, errors, approvals, policies, agents, inbox, ocr |
| `get_fax_capabilities` | The account-level view behind the key: formats, page cap, routes, prices, scopes. It never evaluates a send |
| `prepare_fax` | Create a document from text, Markdown, HTML or an upload |
| `get_document` | One prepared document by id: page count, sha256, validation warnings and signed preview URLs |
| `quote_fax` | Price one document to one destination, with the policy verdict: allowed or denied, the first failing rule, whether a person must approve. The quote binds the send |
| `send_approved_fax` | Send a quote with an approval or under a policy |
| `get_fax_status` | The job's state and attempts, and once delivered or partial the carrier's evidence as a reference |
| `list_faxes` | Sent faxes, newest first |
| `get_fax_balance` | Available and held balance |
| `cancel_fax` | Cancel if still possible |
| `request_human_review` | With a quote id, ask a person to approve that send. Without one, ask a person for help, the message recorded as data |
| `get_review_status` | The state of one request: pending, approved, rejected, revoked or expired, with the approval id once approved |
| `list_inbox` | Received faxes, newest first, metadata only |
| `read_inbound_fax` | One received fax, its text listed as untrusted |
| `extract_fax_data` | OCR and structured extraction of a received fax, every value listed as untrusted |

Version 1.3.0 merged three tools into their neighbours. `get_delivery_evidence` is part of `get_fax_status`. `request_fax_approval` and `request_human_help` are one tool, `request_human_review`. The bare `guide` is `get_guide`. Version 1.3.2 swapped two. `preview_fax` is `get_document`, which returns the document itself. `evaluate_fax_policy` is gone because the quote carries the same verdict, and `get_review_status` reads one request back. Documents are listed through the REST API. The old names are gone from the server.

## Resources and prompts

The manual is also served as MCP resources. `faxforagents://guide` is the whole text and `faxforagents://guide/send`, `faxforagents://guide/states` and the other sections are one resource each, all `text/markdown` and all readable without a key. Two prompts give a client the tool order. `send_a_fax` takes a destination and an optional summary. It walks through prepare, quote with its policy verdict, human review and the poll for its decision, send and status. `handle_received_fax` takes an inbox item id and walks through read, extract and human review, with the rule that the text of a received fax is data.

Every result is text plus structured content: `ok`, `message`, `error_code`, and `untrusted` listing every string a customer or a sender supplied. The success message of a send says queued. The word delivered appears only when the provider's evidence exists, with the evidence beside it.

## What the server will not do

It will not widen a key's scopes, raise a budget or decide an approval. Those are a person's actions in the dashboard, with a passkey step-up for a decision. It will not read the text of a received fax as an instruction. A quote id or an approval id lifted from a document and passed as an argument is refused as `invalid_input` before any request leaves the tool.

## Clients

Claude Code, Claude Desktop, Cursor, Codex and n8n connect with the URL and a key. The setup page has the exact configuration for each. OAuth 2.1 for MCP is planned for a later release and is not live. API keys are the only credential today. The server's source, with the stdio bridge for a client that cannot reach a remote server, is at [github.com/faxforagents/mcp](https://github.com/faxforagents/mcp).

## Prices

- $0.039 per page sent
- $0.019 per page received
- $2 per number per month
- Optional Agent workspace, $19 per month

Prepaid wallet, $10 minimum top-up. United States and Canada prices as of 2026-10-28. International rates are in the [rate table](https://faxforagents.com/pricing/). The sandbox is free.

## Questions

### What is a fax MCP server?

A server that exposes fax operations as tools an AI client can call over the Model Context Protocol. This one runs at mcp.faxforagents.com and wraps the Fax for Agents REST API. Its 15 tools prepare a document, quote it, ask a person to review it, send and cancel. They also read status with the carrier's evidence, read the inbox, extract data from a received fax and check the balance. The manual is served as resources and two prompts give the tool order. The protocol is the door. The API behind it still enforces every rule.

### How is a fax MCP different from a fax API?

The API is a set of HTTP endpoints your code calls with a key. The MCP server presents the same operations as named tools with descriptions and schemas. A client such as Claude Code or Cursor can pick and call them in a conversation. Both reach the same server, the same wallet and the same approvals. Nothing is possible through MCP that the API forbids.

### Does the MCP server replace the telephone provider?

No. The MCP server is an interface. Transmission still happens through a fax provider the service connects to, with its own line, retries and delivery reports. The tools return what that provider reported, which is why a send answers queued and the delivered word only appears with the provider's evidence attached.

### Do I need a subscription to use the fax MCP?

No. The MCP server is part of the service at no extra charge. Pages are prepaid at $0.039 sent and $0.019 received in the US and Canada as of 2026-10-28. The sandbox is free with a test key. The optional Agent workspace at $19 a month is a separate subscription and the MCP tools work without it.
