{"serverId":"mcp-registry/com.gotfreefax/mcp","tools":[{"name":"check_fax_status","fixed":{"name":"check_fax_status","description":"Check the delivery status of a previously sent fax using its job_id. No authentication required — the job_id is the unforgeable token.","inputSchema":{"type":"object","required":["job_id"],"properties":{"job_id":{"type":"string","description":"The job ID returned by send_fax"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":90,"tokensAfter":90},{"name":"get_account_balance","fixed":{"name":"get_account_balance","description":"Get the current page balance and dollar amount balance for the authenticated account.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":54,"tokensAfter":54},{"name":"list_sent_faxes","fixed":{"name":"list_sent_faxes","description":"List faxes previously sent by the authenticated account (most recent first). Includes faxes sent via MCP, REST API, and the prepaid web form. Free anonymous sends are not included.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"integer","description":"Max records to return (1-100, default 20)"},"offset":{"type":"integer","description":"Skip first N records for pagination (default 0)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":129,"tokensAfter":129},{"name":"list_supported_formats","fixed":{"name":"list_supported_formats","description":"List all supported file formats that can be faxed.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":45,"tokensAfter":45},{"name":"send_fax","fixed":{"name":"send_fax","description":"Send a fax to a US or Canada phone number. Accepts PDF, DOC, DOCX, JPG, JPEG, TXT files (max 10) as base64-encoded content.","inputSchema":{"type":"object","required":["fax_number","files"],"properties":{"files":{"type":"array","items":{"type":"object","required":["filename","content"],"properties":{"content":{"type":"string","description":"Base64-encoded file content"},"filename":{"type":"string","description":"File name with extension (e.g. document.pdf)"}}},"description":"Array of files to fax"},"fax_number":{"type":"string","description":"Destination fax number (10 digits, US or Canada)"},"notify_url":{"type":"string","description":"Optional URL to receive fax completion notification"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":205,"tokensAfter":205},{"name":"send_free_fax","fixed":{"name":"send_free_fax","description":"Send a free fax to a US or Canada number (no account required). Limited to 3 pages total and 2 sends per email/IP per day. Returns a job_id immediately, but the fax does NOT send until the sender clicks a confirmation link emailed to sender_email. The daily-limit check happens at click time, not at submission — a submitted fax may still be rejected if the limit is hit by then; the agent can detect this by calling check_fax_status after the user reports clicking the link. If the document exceeds ","inputSchema":{"type":"object","required":["fax_number","sender_name","sender_email","receiver_name"],"properties":{"text":{"type":"string","description":"Fax body text. Either text or files must be provided."},"files":{"type":"array","items":{"type":"object","required":["filename","content"],"properties":{"content":{"type":"string","description":"Base64-encoded file content"},"filename":{"type":"string"}}},"description":"Up to 3 files. Each must be base64-encoded. Free faxes are limited to 3 pages total across text + files."},"subject":{"type":"string","description":"Subject line (optional)."},"fax_number":{"type":"string","description":"Destination fax number (10 digits, US or Canada)."},"sender_fax":{"type":"string","description":"Sender's fax number (optional)."},"cover_sheet":{"type":"boolean","description":"Include cover sheet (default true)."},"sender_name":{"type":"string","description":"Sender's name (required)."},"sender_email":{"type":"string","description":"Sender's email address. A confirmation link will be sent here; the fax does NOT actually send until the user clicks that link."},"receiver_name":{"type":"string","description":"Receiver's name (required)."},"sender_company":{"type":"string","description":"Sender's company (optional)."},"receiver_company":{"type":"string","description":"Receiver's company (optional)."}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":528,"tokensAfter":528}],"toolsChanged":6,"tokensSaved":0,"todo":[],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}