Developer platform
Build with Files2.AI
The same conversion engine that powers the Files2.AI workspace is available programmatically: a hosted REST API with a zero-retention contract, an open npm library with a CLI, and an MCP server for Claude, Cursor, and other agent tools.
Hosted convert API
Send a file, get back clean Markdown or plain text. Conversion runs in memory only — file bytes are never written to disk, a database, or logs.
curl -X POST https://files2.ai/api/convert \
-H "Authorization: Bearer f2a_live_..." \
-F "file=@report.pdf" \
-F "output=markdown" \
-F "normalize_whitespace=true"A successful response includes the converted content, extraction stats, and your remaining monthly quota:
{
"content": "# Extracted markdown…",
"format": "pdf",
"output": "markdown",
"stats": { "input_bytes": 182734, "characters": 15234, "words": 2450, "pages": 6 },
"warnings": [],
"quota": { "limit": 1000, "used": 43, "remaining": 957, "resets_at": "2026-08-01T00:00:00.000Z" },
"request_id": "9f1c…"
}- Launch formats: PDF, Word (.docx), Excel (.xlsx), CSV, JSON, Markdown, and plain text — with more formats rolling out.
- Options:
output(markdownortext) andnormalize_whitespace. Unknown options are rejected with a clear 400, never silently ignored. - Limits: files up to 4 MB per request; Pro plans include 1,000 conversions per month at 30 requests per minute. Watch the
X-RateLimit-*andx-quota-*response headers to self-throttle.
API keys
API access is included with Pro and Lifetime plans. Create and revoke keys in Account → API keys. The full key (f2a_live_…) is shown exactly once at creation and only a hash is stored server-side, so keep it somewhere safe. Keys can only call the conversion endpoint — they can never touch account, billing, or key management.
The privacy contract
The API keeps the same promise as the browser workspace. Every conversion response carries the header x-files2ai-retention: none: file bytes are processed in memory and never persisted, and error messages never include file content. API usage metadata is part of your GDPR export, and deletion cascades with your account.
Open-source library & CLI
@files2ai/convert-core is the open conversion core behind the hosted service: convert text-based files to LLM-ready output with PII redaction, whitespace normalization, and context-window chunking — entirely on your own machine, in Node 22+.
npm install @files2ai/convert-core
# or use the CLI ad hoc
npx @files2ai/convert-core notes.csv --format md --redactMCP server for Claude & Cursor
@files2ai/mcp-server gives Claude Desktop, Claude Code, Cursor, and any MCP client the ability to convert files into clean, LLM-ready text. It is local by default — nothing leaves your device — and uses the hosted API only when you opt in with an API key.
# Claude Code
claude mcp add files2ai -- npx -y @files2ai/mcp-server
# with hosted conversion (optional)
claude mcp add files2ai -e FILES2AI_API_KEY=f2a_live_... -- npx -y @files2ai/mcp-serverThe server exposes convert_file, convert_text, and list_supported_formats tools, with PII redaction always applied locally — including to text returned by the hosted API.
Get started
Upgrade to Pro or Lifetime to unlock API access, then create your first key in Account → API keys. Questions or higher-volume needs? Talk to us.