EasyAccessPDF
PDF accessibility checks (veraPDF PDF/UA-1), auto-fix and Markdown conversion. EU-hosted.
Open source Repository Open in the app JSON README (API)
About
PDF accessibility checks (veraPDF PDF/UA-1), auto-fix and Markdown conversion. EU-hosted.
Details
- Kind
- MCP servers
- Topic
- Files & documents
- Publisher
- luotwo
- Origin
- official
- Category
- ferramentas
- Transport
- http
- Version
- 1.0.0
- Last push
- 2026-07-22T02:30:02Z
- Repository state
- ativo
- Language
- JavaScript
- License
- MIT
- Added
- 2026-08-29 04:00:26
- Updated
- 2026-08-29 04:00:26
- Origin id
io.github.luotwo/easyaccesspdf-mcp
README
# EasyAccessPDF — MCP Server Examples
**[English](README.md) | [Deutsch](README.de.md) | [Français](README.fr.md) | [Español](README.es.md) | [日本語](README.ja.md)**
> 🌐 **Official website: [easyaccesspdf.com](https://easyaccesspdf.com/)** · [Free PDF Checker](https://easyaccesspdf.com/checker/) · [Pricing](https://easyaccesspdf.com/pricing/) · [MCP setup guide](https://easyaccesspdf.com/mcp/)
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)
| Tool | What it does | Cost |
|---|---|---|
| `eap_convert_to_markdown` | Document (PDF, DOCX, DOC, PPT, XLS, HTML, EPUB, RTF, ODT, TXT) → clean Markdown | Included with membership |
| `eap_export_pdf` | PDF → `json` (structured tree), `html`, `text`, or `annotated-pdf` (layout visualization, 24h download URL) | Included with membership |
| `eap_check_pdf` | veraPDF PDF/UA-1 (ISO 14289-1) accessibility audit: pages, grade A/B/C/F, issue list, tag coverage | Included with membership |
| `eap_get_account_status` | Plan, expiry, credit balance, current prices | Included with membership |
| `eap_fix_pdf` | Auto-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`)
```jsonc
// 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 )`.
```bash
# 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
```bash
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):
```json
{
"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`):
```json
{
"mcpServers": {
"easyaccesspdf": {
"type": "streamable-http",
"url": "https://easyaccesspdf.com/wp-json/easy/v1/mcp",
"headers": { "Authorization": "Basic <BASE64>" }
}
}
}
```
### Codex (OpenAI)
`~/.codex/config.toml`:
```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`](bridge/eap-mcp-bridge.mjs) — a zero-dependency Node 18+ script that forwards stdio JSON-RPC to the hosted endpoint. A [`Dockerfile`](Dockerfile) is included for containerized runners.
```json
{
"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`](examples/python_client.py) and [`examples/node_client.mjs`](examples/node_client.mjs) — plain HTTP/JSON-RPC, no dependencies beyond `requests` / Node 18+.
```bash
python examples/python_client.py
node examples/node_client.mjs
```
Both run: `initialize` → `tools/list` → `eap_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](LICENSE). Examples only; EasyAccessPDF is a commercial service operated by HEPA Zweigniederlassung der RUBIX GmbH, Germany.