Odel
EasyAccessPDF

EasyAccessPDF

@luotwoJavaScriptMITUpdated 1mo ago

PDF accessibility checks (veraPDF PDF/UA-1), auto-fix and Markdown conversion. EU-hosted.

Server endpointStreamable HTTPNo authProbed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

EasyAccessPDF — MCP Server Examples

English | Deutsch | Français | Español | 日本語

🌐 Official website: easyaccesspdf.com · Free PDF Checker · Pricing · MCP setup guide

Connect AI clients (Claude Code, Claude Desktop, Cursor, Codex) to the EasyAccessPDF MCP server: convert documents to Markdown, export PDFs to JSON/HTML/text, run veraPDF accessibility checks, and auto-fix PDF/UA issues — directly from your AI workflow.

  • Endpoint: https://easyaccesspdf.com/wp-json/easy/v1/mcp
  • Protocol: MCP over Streamable HTTP (JSON-RPC 2.0, protocol version 2025-03-26)
  • Auth: HTTP Basic — your EasyAccessPDF account email + a WordPress application password
  • Introspection: initialize, ping and tools/list answer without auth — only tools/call requires credentials
  • Site: https://easyaccesspdf.com/mcp/

Tools (5)

ToolWhat it doesCost
eap_convert_to_markdownDocument (PDF, DOCX, DOC, PPT, XLS, HTML, EPUB, RTF, ODT, TXT) → clean MarkdownIncluded with membership
eap_export_pdfPDF → json (structured tree), html, text, or annotated-pdf (layout visualization, 24h download URL)Included with membership
eap_check_pdfveraPDF PDF/UA-1 (ISO 14289-1) accessibility audit: pages, grade A/B/C/F, issue list, tag coverageIncluded with membership
eap_get_account_statusPlan, expiry, credit balance, current pricesIncluded with membership
eap_fix_pdfAuto-tag + metadata injection + veraPDF re-audit → 24h download URL for a zip (tagged PDF + report + manual-review checklist)1 credit per document — billed for members and non-members alike

All tools take a publicly accessible URL of the document (max 50MB). Documents are processed in the EU (Frankfurt) and not stored.

Input schemas (live from tools/list)

// eap_convert_to_markdown
{ "type": "object", "properties": { "url": { "type": "string" } }, "required": ["url"] }

// eap_export_pdf
{ "type": "object",
  "properties": {
    "url": { "type": "string" },
    "format": { "type": "string", "enum": ["json", "html", "text", "annotated-pdf"] } },
  "required": ["url", "format"] }

// eap_check_pdf
{ "type": "object", "properties": { "url": { "type": "string" } }, "required": ["url"] }

// eap_fix_pdf
{ "type": "object",
  "properties": { "url": { "type": "string" }, "title": { "type": "string" } },
  "required": ["url"] }

// eap_get_account_status
{ "type": "object", "properties": [] }

1. Get your credentials

  1. Create an account at https://easyaccesspdf.com/my-account/ and verify your email (6-digit code).
  2. Buy the MCP Membership ($19.90 / 32 days, no auto-renewal — purchases stack) or credit packs for eap_fix_pdf.
  3. In My Account → Profile → Application Passwords, create a new application password (e.g. named claude).
  4. Build the Basic token: base64( youremail@example.com : your-application-password ).
# Linux / macOS
printf 'you@example.com:xxxx xxxx xxxx xxxx xxxx xxxx' | base64
# Windows PowerShell
[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes('you@example.com:xxxx xxxx xxxx xxxx xxxx xxxx'))

Keep the token private — it can spend your credits. Revoke any time in your WP profile.

2. Client setup

Claude Code

claude mcp add --transport http easyaccesspdf \
  https://easyaccesspdf.com/wp-json/easy/v1/mcp \
  --header "Authorization: Basic <BASE64>"
claude mcp list   # should show easyaccesspdf with 5 tools

Claude Desktop

%APPDATA%\Claude\claude_desktop_config.json (Windows) / ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "easyaccesspdf": {
      "type": "http",
      "url": "https://easyaccesspdf.com/wp-json/easy/v1/mcp",
      "headers": { "Authorization": "Basic <BASE64>" }
    }
  }
}

Cursor

~/.cursor/mcp.json (or project .cursor/mcp.json):

{
  "mcpServers": {
    "easyaccesspdf": {
      "type": "streamable-http",
      "url": "https://easyaccesspdf.com/wp-json/easy/v1/mcp",
      "headers": { "Authorization": "Basic <BASE64>" }
    }
  }
}

Codex (OpenAI)

~/.codex/config.toml:

[mcp_servers.easyaccesspdf]
url = "https://easyaccesspdf.com/wp-json/easy/v1/mcp"
http_headers = { "Authorization" = "Basic <BASE64>" }

Verify with codex mcp list.

Any stdio-only client (bridge)

Clients that only speak stdio MCP can use bridge/eap-mcp-bridge.mjs — a zero-dependency Node 18+ script that forwards stdio JSON-RPC to the hosted endpoint. A Dockerfile is included for containerized runners.

{
  "mcpServers": {
    "easyaccesspdf": {
      "command": "node",
      "args": ["bridge/eap-mcp-bridge.mjs"],
      "env": { "EAP_TOKEN": "<BASE64>" }
    }
  }
}

Or with Docker: docker build -t eap-mcp-bridge . && docker run -i --rm -e EAP_TOKEN=<BASE64> eap-mcp-bridge. Without EAP_TOKEN the bridge still answers initialize / tools/list (introspection is open); tools/call then returns the upstream 401.

3. Minimal clients (no SDK)

See examples/python_client.py and examples/node_client.mjs — plain HTTP/JSON-RPC, no dependencies beyond requests / Node 18+.

python examples/python_client.py
node examples/node_client.mjs

Both run: initializetools/listeap_get_account_status and print the results.

Billing transparency

  • Membership ($19.90 / 32 days, stacking, no auto-renewal) includes unlimited conversions, exports, checks, and account status.
  • eap_fix_pdf always costs 1 remediation credit per document ($2.99 single-fix value; credit packs bring it to $0.67) — for members and non-members alike. Membership has no fix privilege.
  • Credits never expire. Pricing: https://easyaccesspdf.com/pricing/

License

MIT — see LICENSE. Examples only; EasyAccessPDF is a commercial service operated by HEPA Zweigniederlassung der RUBIX GmbH, Germany.