Open Source VoIP & ICT Solutions for Businesses Worldwide

Fax is not glamorous, but it is still how healthcare, legal and government move documents, and “fax this and tell me when it lands” turns out to be a clean job for an agent. ictfax-mcp is our open source server for exactly that. It connects an AI assistant to an ICTFax install so the assistant can list transmissions, check whether one delivered, and, when you allow it, send a fax. MIT licensed, on npm and in the MCP registry.

What the assistant can do

Two tools are read only and always on: list the fax transmissions on your server, and check the status of one to see whether it is processing, delivered or failed. Two more change things and stay off until you enable them: upload a document, and send a fax.

How ictfax-mcp connects an AI assistant to an ICTFax server, read-only by default with sending behind a switch

Sending is one call

Ask the assistant to fax a PDF and the server runs the whole chain for you. It uploads the file and gets a document id, creates the recipient, builds the transmission, and sends it. ICTFax converts the file and pushes it over T.38 underneath, and you poll the status tool to watch it deliver.

The four steps of sending a fax through the MCP server: upload the document, create the recipient, build the transmission, and send, then track the status

Read-only by default

Sending a fax dials a real number and can cost money, so the server ships read only. The two write tools are not registered unless you set ICTFAX_MCP_ALLOW_WRITE=true. Reading status and history needs no switch and never dials anyone. It signs in with your own account using the same JWT the web app uses, and your password stays on the machine you run it on.

Install it

With Node 18 or newer:

npx -y ictfax-mcp

Set your base URL, username and password, then add it to your MCP client. It works against any reachable ICTFax install, including the official Docker image. ICTFax is the free, open source fax server we maintain at ICT Innovations, and ictfax-mcp is one of several MCP servers we are opening up across our stack.

FAQ

Is it free? Yes, MIT licensed, source on GitHub, package on npm.

Can it send a fax without me knowing? No. Sending is opt-in through one environment variable. Leave it off and the server can only read status and history.

What can it fax? PDF is the common one. You upload a local file and ICTFax converts it for transmission.

Does it work with the Docker image? Yes, point it at any reachable ICTFax install.

Where do I report issues? On the GitHub repo.

If you run other parts of our stack, there are more of these out already, including servers for PBX, contact center and exams.