Test fax numbers for AI agents. Send a test fax or scan-to-email, then read what Faxbeep received.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get one test fax by its slug (fax_ and 8 characters from 0-9 and a-f, for example fax_1a2b3c4d) or by the URL of its page on faxbeep.com (view_url, with or without a language prefix such as /de). The result is the fax object, the same as an item of list_test_faxes. A fax that is not found gives an error result: a new fax can take a while to appear, and a fax that is still processing is not found yet. A fax that was removed, by request or after 30 days, gives the error result "This fax was removed, or it is older than 30 days." Its files are deleted, so it cannot be read again. For a sample answer, use fax_example (a published sample fax) or fax_example_removed (the answer for a removed fax).
The slug of the fax (for example fax_1a2b3c4d), or the URL of its page on faxbeep.com (view_url).
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http faxbeep https://faxbeep.com/mcp
Get one test fax by its slug (fax_ and 8 characters from 0-9 and a-f, for example fax_1a2b3c4d) or by the URL of its page on faxbeep.com (view_url, with or without a language prefix such as /de). The result is the fax object, the same as an item of list_test_faxes. A fax that is not found gives an error result: a new fax can take a while to appear, and a fax that is still processing is not found yet. A fax that was removed, by request or after 30 days, gives the error result "This fax was removed, or it is older than 30 days." Its files are deleted, so it cannot be read again. For a sample answer, use fax_example (a published sample fax) or fax_example_removed (the answer for a removed fax).
| Argument | Type | Description |
|---|---|---|
| fax* | string | The slug of the fax (for example fax_1a2b3c4d), or the URL of its page on faxbeep.com (view_url). |
{
"type": "object",
"required": [
"fax"
],
"properties": {
"fax": {
"type": "string",
"description": "The slug of the fax (for example fax_1a2b3c4d), or the URL of its page on faxbeep.com (view_url)."
}
}
}Get the Faxbeep test fax numbers, the test email addresses and the limits. Call this first, before the person sends a test. Each item of "numbers" is a test fax number: "local_format" is the number to dial inside its country, "international_format" from any other country. The person sends a fax to it from a fax machine or a fax service. Each item of "email_addresses" takes an email with one PDF, TIFF or JPEG attachment, for a scan-to-email or Internet fax test. "email_addresses" is left out while the email test is off. Every test that Faxbeep receives is public on faxbeep.com for 30 days. Tell the person not to send a private document. "limits" has the limits of the email test: "email_max_message_bytes" is the size of the whole email, and email encoding adds about a third, so the attachment can be about three quarters of it. "troubleshooting_url" is the docs page with each refusal message of the email test and its fix. "now" is the server time. Use it as "since" of list_test_faxes: call this tool, or take "now" from your last result, just before the person sends the test. Do not use your own clock.
No arguments.
{
"type": "object",
"properties": {}
}List the test faxes that Faxbeep received and published, newest first. The list is public and holds the tests of everyone. Each item of "faxes" is a fax object: slug, source ("phone" or "email"), from (the sender, masked as on faxbeep.com, or null), received_at, page_count, file_size, pdf_url, thumbnail_url and view_url (the page of the fax on faxbeep.com). In the result, "since" is the start time that was used, and "now" is the server time. The result holds at most "limit" faxes (20 when not given), newest first, with no paging. When "faxes" has "limit" items, there can be more: narrow the list with from, page_count or a since closer to the test. Set "since" to the "now" value that get_test_numbers or list_test_faxes returned just before the person sent the test, and keep it fixed while you poll. Do not use your own clock. Do not move since to the newest received_at: a long fax can appear after a newer, shorter one. Without "since", the list covers the last 24 hours. A match by time, sender or page count narrows the candidates. It does not prove that a fax is the person's, because other people send tests at the same time. Show the person the view_url so they can check the page. An empty list is a normal answer while a fax is on its way. A new fax usually appears within a minute after the call ends or the email is sent; a few take longer. Wait about 30 seconds between calls, and stop after about 10 minutes. A fax is public for 30 days, then it is removed. For a sample answer, set from to FAXBEEP-EXAMPLE: the result is the sample fax fax_example, whatever since says. The sample has a fixed date in the past, older than 30 days, and it stays available.
| Argument | Type | Description |
|---|---|---|
| from | string | null | Only faxes from this sender: the full fax number (for example +15555550123) or station ID of the sending machine, or the sender address of an email test. Not the masked value of a result. The whole value must match; case does not matter. |
| limit |
We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 5, 2026.
| integer | null |
| The most faxes to return, from 1 to 100. Default: 20. |
| since | string | null | Only faxes received after this time, in ISO 8601 with an offset. Use the "now" value of get_test_numbers or of a list_test_faxes result, taken just before the person sends the test, not your own clock. Default: 24 hours ago. A fax older than 30 days is not in the list. |
| page_count | integer | null | Only faxes with this number of pages. |
{
"type": "object",
"properties": {
"from": {
"type": [
"string",
"null"
],
"description": "Only faxes from this sender: the full fax number (for example +15555550123) or station ID of the sending machine, or the sender address of an email test. Not the masked value of a result. The whole value must match; case does not matter."
},
"limit": {
"type": [
"integer",
"null"
],
"maximum": 100,
"minimum": 1,
"description": "The most faxes to return, from 1 to 100. Default: 20."
},
"since": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "Only faxes received after this time, in ISO 8601 with an offset. Use the \"now\" value of get_test_numbers or of a list_test_faxes result, taken just before the person sends the test, not your own clock. Default: 24 hours ago. A fax older than 30 days is not in the list."
},
"page_count": {
"type": [
"integer",
"null"
],
"minimum": 1,
"description": "Only faxes with this number of pages."
}
}
}