API & MCP
Everything a person can do on Rapport vCard Converter, a program or AI agent can do with the same inputs and get the identical result.
HTTP API
POST https://rapportvcardconvert.usefulweb.app/api/v1/calculate– run Rapport vCard ConverterGET https://rapportvcardconvert.usefulweb.app/api/v1/tool– inputs, output schema, examples- OpenAPI 3.1: /openapi.json · /openapi.yaml
- Errors:
application/problem+json;422includes per-fielderrors.
Rapport vCard Converter
Turns a .vcf file with one or many contact cards into a clean CSV with first name, last name, e-mail, phone, company, job title, address and tags — or a contacts CSV (Rapport, HubSpot, Pipedrive, Outlook-style headers) into vCards. Folded lines, escaped commas and old QUOTED-PRINTABLE phone exports are handled. Same converter as Rapport’s vCard import and export.
| Field | Type | Default | Description |
|---|---|---|---|
text | textarea | — | vCards or contacts CSV. Paste vCards (BEGIN:VCARD … END:VCARD) to get a CSV, or a CSV with a header row to get vCards. |
file | file | — | File (optional). Used instead of the pasted text when given. |
version | select (4.0, 3.0) | "4.0" | vCard version to write |
Example request
Three vCards (4.0, 3.0 with a folded note, 2.1 quoted-printable) to CSV
curl -X POST https://rapportvcardconvert.usefulweb.app/api/v1/calculate -H 'content-type: application/json' -d '{"text":"BEGIN:VCARD\r\nVERSION:4.0\r\nFN:Camille Rousseau\r\nN:Rousseau;Camille;;;\r\nORG:Atelier Rousseau SARL\r\nTITLE:Creative Director\r\nEMAIL;TYPE=work:camille@rousseau.example\r\nTEL;VALUE=uri;TYPE=work:tel:+33472000111\r\nADR;TYPE=work:;;12 rue de la République;Lyon;;69002;FR\r\nCATEGORIES:fashion,lead\r\nEND:VCARD\r\nBEGIN:VCARD\r\nVERSION:3.0\r\nFN:Tobias Krüger\r\nN:Krüger;Tobias;;;\r\nORG:Mediq Pharma Services\r\nTITLE:Communications Lead\r\nEMAIL;TYPE=INTERNET,WORK:tobias.krueger@mediq-pharma.example\r\nTEL;TYPE=CELL:+49 170 1234567\r\nNOTE:Met at the health-tech fair\\, interested in an intranet. Prefers calls in the\r\n morning.\r\nEND:VCARD\r\nBEGIN:VCARD\r\nVERSION:2.1\r\nN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:M=C3=BCller;J=C3=BCrgen;;;\r\nFN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:J=C3=BCrgen M=C3=BCller\r\nTEL;WORK;VOICE:+49 30 1234567\r\nEMAIL;INTERNET:juergen.mueller@example.org\r\nEND:VCARD\r\n"}'
Every result contains
inputs (normalised, defaults applied), summary, result (validated against the published schema), units, assumptions, sources, warnings, computedAt and links.
MCP (Model Context Protocol)
- Streamable HTTP endpoint:
https://rapportvcardconvert.usefulweb.app/mcp– protocol revisions 2026-07-28 (stateless) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize handshake). - Tools:
rapport_vcard_convert - Local stdio connector:
node src/mcp-stdio.ts --tool=rapport-vcard-convert
{
"mcpServers": {
"rapport-vcard-convert": { "type": "http", "url": "https://rapportvcardconvert.usefulweb.app/mcp" }
}
}