Send a burofax or certified letter to a Spanish address, with proof of delivery and content.
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.
Use this when the user gives a recipient (or sender) postal address in Spain, before creating a burofax, to catch mistakes that would stop delivery. Checks offline: required fields (name, street, postcode, city), the 5-digit código postal in range 01000–52999, and that the province matches the postcode's first two digits. Returns normalised fields (with the official province) and a list of problems with messages for the user. It does not confirm that the street or person exists. Do not use for addresses outside Spain.
Town or city.
Recipient's full name or company name.
Street, number, floor and door.
Province, if the user gave one.
Código postal, 5 digits.
Use this when the user gives a recipient (or sender) postal address in Spain, before creating a burofax, to catch mistakes that would stop delivery. Checks offline: required fields (name, street, postcode, city), the 5-digit código postal in range 01000–52999, and that the province matches the postcode's first two digits. Returns normalised fields (with the official province) and a list of problems with messages for the user. It does not confirm that the street or person exists. Do not use for addresses outside Spain.
| Argument | Type | Description |
|---|---|---|
| city | string | Town or city. |
| name | string | Recipient's full name or company name. |
| street | string | Street, number, floor and door. |
| province | string | Province, if the user gave one. |
| postal_code | string | Código postal, 5 digits. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"maxLength": 120,
"description": "Town or city."
},
"name": {
"type": "string",
"maxLength": 200,
"description": "Recipient's full name or company name."
},
"street": {
"type": "string",
"maxLength": 300,
"description": "Street, number, floor and door."
},
"province": {
"type": "string",
"maxLength": 80,
"description": "Province, if the user gave one."
},
"postal_code": {
"type": "string",
"maxLength": 20,
"description": "Código postal, 5 digits."
}
}
}Use this when the user has approved the final text of a letter to send as a burofax to an address in Spain and has given both postal addresses. The user writes or approves the text; this service does not give legal advice, so pass the body exactly as approved, without adding legal claims. Show the full text to the user and get approval before calling. Renders the exact A4 letter (sender, recipient, place and date, subject, body, signature line) as a PDF in Spanish, stores it as a draft and returns the page count, the price of each option and a review_url. Nothing is sent and nothing is charged by this tool: after calling it, show the review_url and tell the user that the letter goes out only after they pay on that page. Never ask for or include DNI/NIE/NIF or other ID numbers. Do not use to check prices (use quote_burofax) or to track a paid letter (use get_burofax_status).
| Argument | Type | Description |
|---|---|---|
| body* | string | The full letter body exactly as the user approved it, in Spanish (or bilingual). Separate paragraphs with a blank line. No address blocks, date or signature: those are added automatically. |
| city | string | City for the dateline "En <city>, a <date>". Defaults to the sender's city. |
| option | string | Delivery option: "correos" (Burofax de Correos) or "notificados" (certified notification by a trusted third party, not Correos). Use the user's choice; if they have none, use "correos". They can switch on the review page. |
| sender* | object | Who sends the letter. Printed top left and on the signature line. |
| subject* |
Use this when the user asks whether their burofax was paid, sent or delivered, or wants the certificate. Takes the reference the user has: the order reference (BFX-XXXX-XXXX-XXXX-XXXX, from the receipt email) or the draft reference / review link returned by create_burofax_draft. Returns the current status and a dated timeline (draft created, paid, accepted by the operator, delivered, certificate available) and a link to the status page. Read-only. Do not use to create or change a letter.
| Argument | Type | Description |
|---|---|---|
| reference* | string | Order reference (BFX-…) or draft reference, or the full review/status link. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"reference"
],
"properties": {
"reference": {
"type": "string",
"maxLength": 200,
"minLength": 6,
"description": "Order reference (BFX-…) or draft reference, or the full review/status link."
}
}
}Use this when the user asks how much it costs to send a burofax or a certified letter to an address in Spain, or wants to compare delivery options before writing it. Returns the all-in price in EUR of both options for the given length, and what each includes: (1) Burofax de Correos with acuse de recibo and copia certificada; (2) a certified notification by Notificados, a trusted third party (tercero de confianza) that is NOT a Correos burofax. Always pass that distinction on to the user. Give pages if known, otherwise text_length (characters of the letter body) for an estimate; with neither, quotes one page. Does not send or reserve anything. Do not use it to create the letter; use create_burofax_draft once the text and addresses are approved.
| Argument | Type | Description |
|---|---|---|
| pages | integer | Number of A4 pages, 1–10, if already known. |
| option | string | Option the user asked about, if any. Both options are always returned. |
| text_length | integer | Length of the letter body in characters, to estimate pages when the page count is unknown. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"pages": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Number of A4 pages, 1–10, if already known."
},
"option": {
"enum": [
"correos",
"notificados"
],
"type": "string",
"description": "Option the user asked about, if any. Both options are always returned."
},
"text_length": {
"type": "integer",
"maximum": 100000,
"minimum": 0,
"description": "Length of the letter body in characters, to estimate pages when the page count is unknown."
}
}
}| string |
| Short subject line, in Spanish, printed as "Asunto: …", e.g. "Reclamación de la fianza del contrato de alquiler". |
| recipient* | object | Who receives it. Must be a postal address in Spain. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sender",
"recipient",
"subject",
"body"
],
"properties": {
"body": {
"type": "string",
"maxLength": 40000,
"minLength": 1,
"description": "The full letter body exactly as the user approved it, in Spanish (or bilingual). Separate paragraphs with a blank line. No address blocks, date or signature: those are added automatically."
},
"city": {
"type": "string",
"maxLength": 80,
"description": "City for the dateline \"En <city>, a <date>\". Defaults to the sender's city."
},
"option": {
"enum": [
"correos",
"notificados"
],
"type": "string",
"default": "correos",
"description": "Delivery option: \"correos\" (Burofax de Correos) or \"notificados\" (certified notification by a trusted third party, not Correos). Use the user's choice; if they have none, use \"correos\". They can switch on the review page."
},
"sender": {
"type": "object",
"required": [
"name",
"street",
"postal_code",
"city"
],
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"description": "Town or city (localidad), e.g. \"Madrid\"."
},
"name": {
"type": "string",
"maxLength": 120,
"description": "Full name of the person or company, as it should appear on the letter."
},
"email": {
"type": "string",
"maxLength": 254,
"description": "Sender's email for the receipt and tracking, optional. Not printed on the letter."
},
"street": {
"type": "string",
"maxLength": 160,
"description": "Street, number, floor and door, e.g. \"Calle Mayor 12, 3º B\"."
},
"country": {
"type": "string",
"maxLength": 60,
"description": "Only if the sender lives outside Spain, e.g. \"United Kingdom\". Omit for Spain."
},
"province": {
"type": "string",
"maxLength": 60,
"description": "Province, optional. Checked against the postcode when given."
},
"postal_code": {
"type": "string",
"maxLength": 10,
"description": "Spanish 5-digit postcode (código postal), e.g. \"28013\"."
}
},
"description": "Who sends the letter. Printed top left and on the signature line."
},
"subject": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Short subject line, in Spanish, printed as \"Asunto: …\", e.g. \"Reclamación de la fianza del contrato de alquiler\"."
},
"recipient": {
"type": "object",
"required": [
"name",
"street",
"postal_code",
"city"
],
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"description": "Town or city (localidad), e.g. \"Madrid\"."
},
"name": {
"type": "string",
"maxLength": 120,
"description": "Full name of the person or company, as it should appear on the letter."
},
"street": {
"type": "string",
"maxLength": 160,
"description": "Street, number, floor and door, e.g. \"Calle Mayor 12, 3º B\"."
},
"province": {
"type": "string",
"maxLength": 60,
"description": "Province, optional. Checked against the postcode when given."
},
"postal_code": {
"type": "string",
"maxLength": 10,
"description": "Spanish 5-digit postcode (código postal), e.g. \"28013\"."
}
},
"description": "Who receives it. Must be a postal address in Spain."
}
}
}