open-pdf
PDF parsing and extraction via MCP
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
PDF parsing and extraction via MCP
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Browser automation via Playwright MCP (official Microsoft headless browser)
Image generation and manipulation via MCP
Autonomous tool discovery, evaluation, and integration for agent self-enhancement
Route OpenOS tasks to the correct product skill.
Enrich CRM contacts with LinkedIn and décideur data.
CRM read + staged follow-up via orchestrator approval.
| name | open-pdf |
| description | PDF parsing and extraction via MCP |
| version | 1.0.0 |
| metadata | {"tags":["pdf","parsing","extraction","document","mcp"],"category":"document","related_skills":["open-code"]} |
Extract text, tables, and metadata from PDF documents using the PDF parsing MCP server.
docker-compose.mesh.yml includes pdf-mcp)http://pdf-mcp:3200document_processing capabilityOpenOrchestrator (plan with PDF step)
→ OpenAgents (document-analyst profile)
→ MCP call to pdf-mcp-server
→ PDF container (parsing engine)
→ Results → OpenRec (audit) → OpenBrain (observation)
pdf_parse(file_path: string)
Extract all text content from PDF.
Returns:
{
"text": "Full text content...",
"pages": 10,
"metadata": {
"title": "Document Title",
"author": "Author Name",
"creationDate": "2024-01-01"
}
}
pdf_extract_tables(file_path: string, page?: number)
Extract tables from PDF (specific page or all pages).
Returns:
{
"tables": [
{
"page": 1,
"headers": ["Column 1", "Column 2"],
"rows": [
["Value 1", "Value 2"],
["Value 3", "Value 4"]
]
}
]
}
pdf_get_metadata(file_path: string)
Extract PDF metadata only.
Returns:
{
"title": "Document Title",
"author": "Author Name",
"subject": "Document Subject",
"creator": "Creator Application",
"producer": "PDF Producer",
"creationDate": "2024-01-01T00:00:00Z",
"modificationDate": "2024-01-02T00:00:00Z",
"pageCount": 10
}
pdf_extract_page(file_path: string, page_number: number)
Extract text from specific page.
1. pdf_parse(file_path="/path/to/document.pdf")
2. Process extracted text
3. Store results in OpenBrain
1. pdf_extract_tables(file_path="/path/to/invoice.pdf")
2. Parse table structure
3. Convert to structured data (JSON/CSV)
4. Validate extracted data
1. pdf_get_metadata(file_path="/path/to/document.pdf")
2. Extract document properties
3. Use for categorization or routing
| Scenario | Action |
|---|---|
| Need full text extraction | Use pdf_parse |
| Need structured table data | Use pdf_extract_tables |
| Need document properties | Use pdf_get_metadata |
| Need specific page only | Use pdf_extract_page |
| PDF is scanned/image-based | Flag for OCR tool (not supported) |
| PDF is encrypted/password-protected | Request password from user |
docker ps | grep pdf-mcp)document_processing capability// OpenOrchestrator plan step
{
"goal": "Extract invoice data from PDF",
"required_skills": ["open-pdf"],
"approval_required": false
}
// OpenAgents dispatch
POST /v1/runs
{
"profile": "document-analyst",
"goal_id": "...",
"parameters": {
"file_path": "/data/invoices/INV-2024-001.pdf",
"extract_tables": true
}
}
// OpenRec audit
{
"type": "pdf.parsing.completed",
"payload": {
"file": "INV-2024-001.pdf",
"pages": 2,
"tables_extracted": 1,
"duration_ms": 450
}
}
open-code - Code execution for post-processingopen-browser - PDF generation from web pagesopen-toolbox - Discover additional document tools