Claix
Claix turns unstructured documents into typed JSON and queryable memory for AI agents. Extract PDF, Excel, Word, images, and text; ask persisted documents by document_id; reason across a knowledge space with space_id.
AgentCard object — a capabilities object, a declared protocolVersion, and a well-formed skills array.
An A2A client finds this agent by fetching the well-known path on the provider's own host. That is what makes an agent card different from every other agent artifact in this catalog: it is provider-published by construction — it cannot be derived, generated, or reconstructed on a provider's behalf.
https://www.claix.dev/a2a
· transport
· protocol JSONRPC
non-standard supportedInterfaces
https://www.claix.dev/a2a
· transport
· protocol JSONRPC
non-standard supportedInterfaces
Convert an Excel or CSV file to JSON using a schema extract-excel
Convert an Excel or CSV file to JSON using a schema. Accepts an .xlsx or .csv file and a schema_id, and returns transformed JSON whose keys match the schema properties exactly. If the workbook has multiple sheets, only the first sheet is processed. Max file size follows the REST /excel-json limits. A2A skill id: extract-excel. REST: POST /excel-json. JSON DataPart must include "skill": "extract-excel". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. multipart/form-data equivalent: schema_id + file_base64 or file_path in the DataPart JSON. Optional space_id groups the persisted document. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
extractexcelcsvjsonConvert JSON documents to an Excel file convert-json-to-excel
Convert JSON documents to an Excel file. Accepts JSON data and a schema_id, and returns a binary .xlsx whose columns follow the schema order and names. In A2A send schema_id plus data (array or object). Aliases records and json_data are normalized to data. A2A skill id: convert-json-to-excel. REST: POST /json-excel. JSON DataPart must include "skill": "convert-json-to-excel". Required A2A parameters: skill. Body JSON fields: schema_id, data. JSON body: schema_id (required) and data (array or object). Aliases records/json_data also map to data. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
convertexceljsonExtract structured data from a PDF using a schema extract-pdf
Extract structured data from a PDF using a schema. Accepts a .pdf (selectable text or scanned) and a schema_id, and returns a single JSON object for the whole document. Response data always contains exactly one record. Max file size: 15 MB. A2A skill id: extract-pdf. REST: POST /pdf-json. JSON DataPart must include "skill": "extract-pdf". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. schema_id + file_base64 or file_path in the DataPart JSON. Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
extractpdfjsonExtract structured data from a text document using a schema extract-doc
Extract structured data from a text document using a schema. Accepts .docx, .txt, .md, or .rtf plus a schema_id, and returns a single JSON object for the whole document. Legacy .doc (Word 97-2003) is not supported. Max file size: 10 MB; extracted text max 300,000 characters. A2A skill id: extract-doc. REST: POST /doc-json. JSON DataPart must include "skill": "extract-doc". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. schema_id + file_base64 or file_path (.docx, .txt, .md, .rtf). Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
extractdocxjsonExtract structured data from an image using a schema extract-img
Extract structured data from an image using a schema. Accepts .jpeg, .jpg, .png, .webp, .heic, or .heif plus a schema_id, and returns a single JSON object from the visible content. Unreadable images return HTTP 422. Max file size: 15 MB. A2A skill id: extract-img. REST: POST /img-json. JSON DataPart must include "skill": "extract-img". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. schema_id + file_base64 or file_path (.jpeg, .png, .webp, .heic). Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
extractimagejsonExtract structured data from plain text, HTML, or XML using a schema extract-txt
Extract structured data from plain text, HTML, or XML using a schema. Accepts a content string (plain text, HTML, or XML) and a txt-json schema_id. No file upload. Max 300,000 characters. A2A skill id: extract-txt. REST: POST /txt-json. JSON DataPart must include "skill": "extract-txt". Required A2A parameters: skill, content, schema_id. Form/DataPart fields: schema_id, content, space_id. schema_id + content (plain text/HTML/XML string, not a file). Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
extracttexthtmlxmlReturn the raw content of a persisted document get-document
Return the raw content of a persisted document. Read-only. document_id is a path parameter only (no body). Returns markdown/text and metadata for a document created by an extraction with window_context enabled. Free call. A2A skill id: get-document. REST: GET /get-document/{document_id}. JSON DataPart must include "skill": "get-document". Required A2A parameters: skill, document_id. Path params: document_id. document_id is a path parameter only. No body and no questions. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
contextdocumentAnswer questions about a persisted document query-document
Answer questions about a persisted document. document_id goes in the URL path. questions (1–5 strings, max 400 chars each) go in the JSON body only — never embed document_id inside a question. Returns { user_ask, ia_response } aligned 1:1; ia_response items are null when the answer is not in the document. A2A skill id: query-document. REST: POST /document-context/{document_id}. JSON DataPart must include "skill": "query-document". Required A2A parameters: skill, document_id, questions. Path params: document_id. Body JSON fields: questions. document_id goes in the URL path. questions[] (1–5 strings, max 400 chars each) goes in the JSON body only — never inside the question text. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
contextqadocumentAnswer questions across every document in a knowledge space query-space
Answer questions across every document in a knowledge space. space_id goes in the URL path. questions (1–5 strings, max 400 chars each) go in the JSON body only — never embed space_id inside a question. Cross-references up to 50 active documents in the space. Returns { user_ask, ia_response }; null means no evidence in any document. A2A skill id: query-space. REST: POST /space-context/{space_id}. JSON DataPart must include "skill": "query-space". Required A2A parameters: skill, space_id, questions. Path params: space_id. Body JSON fields: questions. space_id goes in the URL path. questions[] (1–5 strings, max 400 chars each) goes in the JSON body only — never inside the question text. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
contextqaspaceCreate a knowledge space for the API key account create-space
Create a knowledge space for the API key account. Creates an empty knowledge space. Required JSON body field: name (max 200 chars). Returns space_id for use as optional space_id on extractions and for query-space. Free call. A2A skill id: create-space. REST: POST /create-space. JSON DataPart must include "skill": "create-space". Required A2A parameters: skill, name. Body JSON fields: name. JSON body with name (string, max 200 chars). Returns space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
spacesDelete a knowledge space delete-space
Delete a knowledge space. space_id is a path parameter only (no body). Deletes the space owned by the API key account. Free call. A2A skill id: delete-space. REST: DELETE /delete-space/{space_id}. JSON DataPart must include "skill": "delete-space". Required A2A parameters: skill, space_id. Path params: space_id. space_id is a path parameter only. No body. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
spacesDelete a persisted document delete-document
Delete a persisted document. document_id is a path parameter only (no body). Deletes the document owned by the API key account. Free call. A2A skill id: delete-document. REST: DELETE /delete-document/{document_id}. JSON DataPart must include "skill": "delete-document". Required A2A parameters: skill, document_id. Path params: document_id. document_id is a path parameter only. No body. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
contextdocumentExcel/CSV to JSON with Agent Mode reasoning agent-extract-excel
Excel/CSV to JSON with Agent Mode reasoning. Same inputs as extract-excel, but the schema must have is_agent_mode enabled. Returns extraction data plus agent_data from agent_definition. A2A skill id: agent-extract-excel. REST: POST /agent/excel-json. JSON DataPart must include "skill": "agent-extract-excel". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-excel but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
agentexcelPDF to JSON with Agent Mode reasoning agent-extract-pdf
PDF to JSON with Agent Mode reasoning. Same inputs as extract-pdf, but the schema must have is_agent_mode enabled. Returns data[] plus typed agent_data. Max PDF size: 15 MB. A2A skill id: agent-extract-pdf. REST: POST /agent/pdf-json. JSON DataPart must include "skill": "agent-extract-pdf". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-pdf but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
agentpdfDocument to JSON with Agent Mode reasoning agent-extract-doc
Document to JSON with Agent Mode reasoning. Same inputs as extract-doc, but the schema must have is_agent_mode enabled. Formats: .docx, .txt, .md, .rtf. A2A skill id: agent-extract-doc. REST: POST /agent/doc-json. JSON DataPart must include "skill": "agent-extract-doc". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-doc but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
agentdocxImage to JSON with Agent Mode reasoning agent-extract-img
Image to JSON with Agent Mode reasoning. Same inputs as extract-img, but the schema must have is_agent_mode enabled. Formats: JPEG, PNG, WebP, HEIC/HEIF. A2A skill id: agent-extract-img. REST: POST /agent/img-json. JSON DataPart must include "skill": "agent-extract-img". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-img but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
agentimageText/HTML/XML to JSON with Agent Mode reasoning agent-extract-txt
Text/HTML/XML to JSON with Agent Mode reasoning. Same inputs as extract-txt, but the schema must have is_agent_mode enabled. content string + schema_id; returns data[] and agent_data. A2A skill id: agent-extract-txt. REST: POST /agent/txt-json. JSON DataPart must include "skill": "agent-extract-txt". Required A2A parameters: skill, content, schema_id. Form/DataPart fields: schema_id, content, space_id. Same as extract-txt but schema must have is_agent_mode. schema_id + content string. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
agenttextList every schema for the API key account list-schemas
List every schema for the API key account. No parameters. Returns all schemas owned by the API key account (id, name, type, definition), newest first. Free call. A2A skill id: list-schemas. REST: GET /schemas. JSON DataPart must include "skill": "list-schemas". Required A2A parameters: skill. No parameters. Returns every schema in the account. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
schemasCreate a schema for the API key account create-schema
Create a schema for the API key account. JSON body: name, type (excel-json | json-excel | pdf-json | doc-json | img-json | txt-json), and schema_definition (object). Optional is_agent_mode, agent_definition, resumen_agent, window_context, window_time. Free call. A2A skill id: create-schema. REST: POST /create-schema. JSON DataPart must include "skill": "create-schema". Required A2A parameters: skill, name, type, schema_definition. Body JSON fields: name, type, schema_definition, is_agent_mode, agent_definition, resumen_agent, window_context, window_time. JSON body: name, type (excel-json|pdf-json|doc-json|img-json|txt-json|json-excel), schema_definition (object). Optional is_agent_mode, agent_definition, window_context, window_time. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
schemasDelete a schema from the API key account delete-schema
Delete a schema from the API key account. JSON body with schema_id (UUID). Deletes the schema if it belongs to the API key account. Free call. A2A skill id: delete-schema. REST: POST /delete-schema. JSON DataPart must include "skill": "delete-schema". Required A2A parameters: skill, schema_id. Body JSON fields: schema_id. JSON body with schema_id (UUID). Query ?schema_id= also accepted by REST. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.
schemas2026-09-19 from https://www.claix.dev/.well-known/agent-card.json,
HTTP 200. The body was saved verbatim and is the sole source for
everything on this page — no field is inferred.
View the captured card.
Providers change what they serve; if this card has moved or changed shape,
the provider profile carries the
current state as of the last build.
Work with this as data
Every agent card here is available over the APIs.io API and to AI agents over MCP. A2A Agent Cards is not yet its own endpoint on the v1 API. Reach it through catalog search and the tag graph, or the MCP server.