Task402 PDF Tools
Paid PDF generation and deterministic tools for search, citations, comparison, and page rendering.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"x402-docs": {
"url": "https://task402.xyz/mcp"
}
}
}Puntos de conexión remotos
https://task402.xyz/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (10)
🟡generate_pdf(title, markdown, idempotency_key)
Create a professionally formatted, paginated PDF from Markdown. Returns a short-lived download capability.
Esquema de entrada
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"markdown": {
"type": "string",
"minLength": 1,
"maxLength": 245760
},
"idempotency_key": {
"type": "string",
"minLength": 8,
"maxLength": 128
}
},
"required": [
"title",
"markdown",
"idempotency_key"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_pdf_job(job_id, capability)
Read the status for a PDF job using its unguessable capability.
Esquema de entrada
{
"type": "object",
"properties": {
"job_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
}
},
"required": [
"job_id",
"capability"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢inspect_pdf(document_id, capability)
Inspect a previously uploaded PDF using its document capability. Upload binary PDFs through POST /v1/documents; persist both the returned capability and recovery key securely.
Esquema de entrada
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
}
},
"required": [
"document_id",
"capability"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_document_map(document_id, capability, page)
Return page labels, sizes, native-text previews, bookmarks, and sparse-text warnings. Set page to include up to 500 positioned text blocks for that page.
Esquema de entrada
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"document_id",
"capability"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢search_document(document_id, capability, query, page, limit)
Find exact normalized text matches in native PDF text (no OCR). Results and excerpts are bounded.
Esquema de entrada
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
},
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"required": [
"document_id",
"capability",
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢read_document(document_id, capability, pages)
Read extractable native text from up to 10 selected pages. Output is limited to 32,000 characters; scanned pages need OCR, which is not provided.
Esquema de entrada
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
},
"pages": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
}
},
"required": [
"document_id",
"capability",
"pages"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢verify_document_citation(document_id, capability, page, quote)
Check that a quote of 5 to 500 characters appears on the stated page in extracted native text. This does not establish truth or visual reading order.
Esquema de entrada
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"quote": {
"type": "string",
"minLength": 5,
"maxLength": 500
}
},
"required": [
"document_id",
"capability",
"page",
"quote"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢compare_pdfs(left_document_id, left_capability, right_document_id, right_capability)
Compare page count and normalized native text between two separately authorized uploaded PDFs. Image-only and visual differences are not compared.
Esquema de entrada
{
"type": "object",
"properties": {
"left_document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"left_capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
},
"right_document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"right_capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
}
},
"required": [
"left_document_id",
"left_capability",
"right_document_id",
"right_capability"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢validate_pdf_text(document_id, capability, page_count, required_text)
Check that the PDF parses, has an optional expected page count, and contains required text. This does not perform PDF/A, signature, visual, or OCR validation.
Esquema de entrada
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
},
"page_count": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"required_text": {
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
}
},
"required": [
"document_id",
"capability"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢render_pdf_page_region(document_id, capability, page, x, y, ...)
Render one authorized PDF page crop as PNG. x/y/width/height are normalized 0-1 page fractions; output is bounded to four million pixels.
Esquema de entrada
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"capability": {
"type": "string",
"minLength": 40,
"maxLength": 64
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"width": {
"type": "number",
"minimum": 0.001,
"maximum": 1
},
"height": {
"type": "number",
"minimum": 0.001,
"maximum": 1
},
"scale": {
"type": "number",
"minimum": 0.5,
"maximum": 3
}
},
"required": [
"document_id",
"capability",
"page",
"x",
"y",
"width",
"height"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Comunidad
Evidencia