# DocuPipe — how to use (mcp.ai)

Connect your DocuPipe account and use 13 tools for document data extraction straight from your AI agent. Connect with your own API key. DocuPipe provides document parsing, structured data extraction, classification, analysis, review, workflow, and export APIs.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_docupipe?ms=1787295780000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `docupipe_create_schema`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/docupipe`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/docupipe/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/docupipe/create/schema` — Create a reusable extraction schema from a valid JSON Schema and optional extraction guidelines.
  - body: { guidelines?: string, json_schema: object, schema_name: string }
- `POST https://api.mcp.ai/api/docupipe/delete/document` — Permanently delete one previously submitted DocuPipe document by ID. This destructive operation cannot be undone.
  - body: { document_id: string }
- `POST https://api.mcp.ai/api/docupipe/delete/documents` — Permanently delete multiple previously submitted DocuPipe documents by ID in one batch. This destructive operation cannot be undone.
  - body: { document_ids: string[] }
- `POST https://api.mcp.ai/api/docupipe/find/documents` — Browse documents by dataset and creation time, or search filenames and document IDs when query is provided. Returns one page and a continuation cursor.
  - body: { limit?: integer, query?: string, dataset?: string, next_cursor?: string, to_timestamp?: string, from_timestamp?: string, exclude_payload?: boolean }
- `POST https://api.mcp.ai/api/docupipe/find/jobs` — Retrieve one asynchronous job by ID, or list and filter jobs when job_id is omitted. Job details expose status, progress, errors, outputs, and credit use.
  - body: { limit?: integer, job_id?: string, status?: string, end_date?: string, job_type?: string, schema_id?: string, start_date?: string, document_id?: string, next_cursor?: string, new_document_id?: string }
- `POST https://api.mcp.ai/api/docupipe/get/account/usage` — Return current plan and credit state together with job counts and credits consumed by job type, optionally including daily usage.
  - body: { include_daily_usage?: boolean }
- `POST https://api.mcp.ai/api/docupipe/get/document` — Retrieve a processed document, including processing state, parsed content, page count, metadata, and file details.
  - body: { document_id: string }
- `POST https://api.mcp.ai/api/docupipe/get/schema` — Retrieve one extraction schema and its full JSON Schema definition by ID.
  - body: { schema_id: string }
- `POST https://api.mcp.ai/api/docupipe/get/standardization` — Retrieve one completed standardization as structured JSON, including extraction data and field metadata.
  - body: { standardization_id: string }
- `POST https://api.mcp.ai/api/docupipe/list/schemas` — List extraction schemas available to the connected workspace, optionally including each full JSON Schema payload. Returns one page and an opaque continuation cursor.
  - body: { limit?: integer, next_cursor?: string, exclude_payload?: boolean }
- `POST https://api.mcp.ai/api/docupipe/list/standardizations` — List structured extraction results, filtered by schema, document, or up to 1000 known standardization IDs. Returns one page and a continuation cursor.
  - body: { limit?: integer, schema_id?: string, document_id?: string, next_cursor?: string, exclude_payload?: boolean, standardization_ids?: string[] }
- `POST https://api.mcp.ai/api/docupipe/standardize/document` — Start V3 agentic structured extraction for one processed document and return the job and standardization IDs. Standard effort costs 2 credits per page; high effort costs 4 credits per page. Omitting s
  - body: { pages?: integer[], timeout?: integer, schema_id?: string, guidelines?: string, document_id: string, effort_level?: string, use_metadata?: boolean }
- `POST https://api.mcp.ai/api/docupipe/upload/document` — Submit one local file or remote file URL for asynchronous parsing. Returns the document and job IDs used to track processing. When workflow_id is provided, also run that existing workflow after parsin
  - body: { url?: string, file?: object, pages?: integer[], dataset?: string, timeout?: integer, filename?: string, metadata?: object, file_type?: string, workflow_id?: string, parse_version?: integer, file_extension?: string, processing_method?: string }

## Example prompts
- "What can I do in DocuPipe?"
- "Show me a summary of my DocuPipe account"

## More
- Page: https://mcp.ai/docupipe
- Agent spec (llms.txt): https://mcp.ai/docupipe/llms.txt
- Postman collection: https://mcp.ai/docupipe/postman.json
