Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

com.docimprint/api

REMOTE · API.DOCIMPRINT.COM · SCANNED SEP 29

AI document intelligence: extract, summarize, claim-check, notarize, and signed action receipts.

0 this week 85 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security71
Transport & Reachability100
Schema Quality & AI Usability80
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 5274 tokens (~239/item across 22 items; 22 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 22 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 22 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the com.docimprint/api MCP server?

com.docimprint/api is a hosted endpoint at https://api.docimprint.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · api.docimprint.com

# add to Claude Code
claude mcp add --transport http com-docimprint-api 'https://api.docimprint.com/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "com-docimprint-api": {
      "url": "https://api.docimprint.com/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-docimprint-api": {
      "type": "http",
      "url": "https://api.docimprint.com/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.com-docimprint-api]
url = "https://api.docimprint.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-docimprint-api": {
      "type": "remote",
      "url": "https://api.docimprint.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-docimprint-api --url 'https://api.docimprint.com/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-docimprint-api:
    url: "https://api.docimprint.com/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-docimprint-api": {
      "Transport": "http",
      "Url": "https://api.docimprint.com/mcp"
    }
  }
}
# add to Vellum
assistant mcp add com-docimprint-api -t streamable-http -u 'https://api.docimprint.com/mcp'
// mcp.json
{
  "mcpServers": {
    "com-docimprint-api": {
      "type": "http",
      "url": "https://api.docimprint.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 28 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 25 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Aug 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 25 Aug 26 0
    • Stability: 0.97 → pass security
  • 11 Aug 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 31 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 27 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 29 Sept 2026 · Probed https://api.docimprint.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=docimprint.com CN=WE1,O=Google Trust Services,C=US 4 Aug 2026 2 Nov 2026 ECDSA 256 ECDSA-SHA256 6d6f56239400cb3d13b29a13bb768984
SANs: docimprint.com, api.docimprint.com, *.api.docimprint.com
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of api.docimprint.com. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
docimprint.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Challenged, unverified

The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.

Result Challenged, unverified
Enforced On tool calls
HTTP status 200

Protected resource metadata

Retrieved No
Problem no_resource_metadata

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://api.docimprint.com/mcp Verified 200
http (plaintext) http://api.docimprint.com/mcp Inconclusive 401
MCP tools · 22 exposed · ~5,274 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
account.quota ~132

Get current credit balance and plan details for your API key. Free — no credits consumed. Check this before running credit-consuming operations (extract, summarize, etc.) to avoid QUOTA_EXCEEDED errors. Returns plan tier, billing period, and usage breakdown. Returns: { plan_id, billing_period (YYYY-MM), credits_used, credits_limit, credits_remaining, status: "active"|"suspended" } Example prompts: - "How many credits do I have left this month?" - "Check my current quota and plan status." - "Am I going to hit my credit limit soon?"

Input schema present but exposes no named parameters.

NameTypeReqDescription
billing_periodstringyes–
credits_limitnumberyes–
credits_remainingnumberyes–
credits_usednumberyes–
plan_idstringyes–
statusstringyes–

No examples provided.

bundle.get ~279

Retrieve metadata for an evidence bundle (ev_...) owned by your API key. Free — no credits consumed. Use for quick status/metadata lookups such as checking if a bundle is complete, finding its notarization status, or viewing retention/legal hold info. For deep cryptographic integrity verification (hash + signature + artifact checks), use bundle.verify instead. Also returns a signed action receipt (rcpt_...) binding this lookup to the bundle manifest — list with receipt.list, verify with receipt.verify. Returns: { bundle_id, source_url, mode, status: "pending"|"complete"|"failed", manifest_sha256, manifest_signature, signer_address, attestation_tx, attestation_at, eas_uid, parent_bundle_id, superseded_by, legal_hold: boolean, retention_until, created_at, receipt: ActionReceipt|null } Example prompts: - "Show me the metadata for bundle ev_550e8400." - "Check the status and notarization info of my evidence bundle." - "Get me the details of bundle [ev_id] — is it complete?"

NameTypeReqDescription
bundle_idstringyesEvidence bundle ID (ev_...) returned by extract or bundle.notarize. Example: "ev_550e8400-e29b-41d4-a716-446655440000"
NameTypeReqDescription
attestation_at–yes–
attestation_tx–yes–
bundle_idstringyes–
created_atstringyes–
eas_uid–yes–
legal_holdbooleanyes–
manifest_sha256–yes–
manifest_signature–yes–
modestringyes–
parent_bundle_id–yes–
receipt–yes–
retention_until–yes–
signer_address–yes–
source_urlstringyes–
statusstringyes–
superseded_by–yes–

No examples provided.

bundle.notarize ~316

Notarize an evidence bundle on-chain by writing its manifest SHA-256 to the blockchain (Base/EVM). Creates a permanent, tamper-evident on-chain record of the document fingerprint. If the bundle is already notarized, returns the existing attestation immediately (idempotent). Use when you need an immutable on-chain timestamp proving a document existed at a point in time. For quick integrity checks without on-chain cost, use bundle.verify instead. Also returns a signed action receipt (rcpt_...) binding this notarize call to the bundle manifest — list with receipt.list, verify with receipt.verify. PREREQUISITE: Bundle status must be "complete". Check status with bundle.get first. NOTE: Costs gas (ETH). The on-chain record is permanent and cannot be deleted even if the bundle is later purged. Returns: { bundle_id, attestation: { tx_hash, network, attested_at, key_id, eas_uid?, schema_uid? }, receipt: ActionReceipt|null } Example prompts: - "Notarize bundle ev_550e8400 on-chain so I have a permanent record." - "Put the fingerprint of my evidence bundle on the blockchain." - "Create an on-chain timestamp for this document bundle."

NameTypeReqDescription
bundle_idstringyesEvidence bundle ID (ev_...) to notarize. Bundle must have status "complete". Example: "ev_550e8400-e29b-41d4-a716-446655440000"
NameTypeReqDescription
attestationobjectyes–
bundle_idstringyes–
receipt–yes–

No examples provided.

bundle.verify ~274

Verify the cryptographic integrity of an evidence bundle (ev_...) owned by your API key. Checks manifest hash, EIP-191 signature, and R2 artifact hashes. Free — no credits consumed. Use when you need to confirm a bundle has not been tampered with. For quick metadata lookups (without full crypto verification), use bundle.get instead. Also returns a signed action receipt (rcpt_...) binding this verify call to the bundle manifest — list with receipt.list, verify with receipt.verify. Returns: { valid: boolean, bundle_id, manifest_sha256, checks: { status, manifest_hash, signature, artifacts: [{ name, ok }] }, tampered: string[], signer_address: string|null, attestation_tx: string|null, url: string, captured_at: string, receipt: ActionReceipt|null } Example prompts: - "Verify the cryptographic integrity of bundle ev_550e8400." - "Is this evidence bundle still valid and untampered?" - "Deep-check the manifest hash and signature of my bundle."

NameTypeReqDescription
bundle_idstringyesEvidence bundle ID (ev_...) returned by extract or notarize. Example: "ev_550e8400-e29b-41d4-a716-446655440000"
NameTypeReqDescription
attestation_tx–––
bundle_idstringyes–
captured_atstring––
checksobjectyes–
manifest_sha256–yes–
receipt–yes–
signer_address–––
tamperedarrayyes–
urlstring––
validbooleanyes–

No examples provided.

collection.add_document ~320

Add an evidence bundle to a collection and trigger async vector indexing. Use after collection.create to populate a collection with documents. Once indexed, documents become searchable via collection.search and collection.ask. Indexing is async — poll job.status with the returned job_id until status is "complete". Also returns a signed action receipt (rcpt_...) binding this add call to the bundle manifest — list with receipt.list, verify with receipt.verify. PREREQUISITE: Bundle must have status "complete" (check with bundle.get). Collection must be owned by your API key. Returns: { collection_id, bundle_id, job_id (poll for indexing completion), receipt: ActionReceipt|null } Example prompts: - "Add my contract bundle ev_550e8400 to the Q4 Contracts collection." - "Put this evidence bundle into my Due Diligence Docs collection for search." - "Add document [bundle_id] to collection [col_id] with a title."

NameTypeReqDescription
bundle_idstringyesEvidence bundle ID (ev_...) to add. Bundle must have status "complete". Example: "ev_550e8400-e29b-41d4-a716-446655440000"
collection_idstringyesCollection ID (col_...) returned by collection.create. Example: "col_550e8400-e29b-41d4-a716-446655440000"
titlestring–Optional display title for the document in this collection. Example: "Q4 2025 Financial Report"
NameTypeReqDescription
bundle_idstringyes–
collection_idstringyes–
job_idstringyes–
receipt–yes–

No examples provided.

collection.ask ~272

Answer a question using RAG over a document collection. Retrieves relevant chunks then synthesizes a cited answer with source attribution. Use when you need a direct answer grounded in your collection documents. For raw matching chunks (without synthesis), use collection.search instead. For single-document Q&A, use url.qa instead. PREREQUISITE: Collection must be populated via collection.add_document and indexed before results appear. Returns: { answer: string, sources: [{ bundle_id, chunk_id }], retrieval: [{ bundle_id, chunk_id, text, score }] } Example prompts: - "What are the key terms of the service agreement in my collection?" - "Based on my due diligence docs, what are the main risks?" - "Answer this question using all documents in the Q4 Contracts collection."

NameTypeReqDescription
collection_idstringyesCollection ID (col_...) returned by collection.create. Example: "col_550e8400-e29b-41d4-a716-446655440000"
max_chunksnumber–Max chunks to retrieve for context (default 8). Increase for broad questions, decrease for precision. Example: 12
questionstringyesNatural language question to answer from collection documents. Example: "What are the key terms of the service agreement?"
NameTypeReqDescription
answerobjectyes–
retrievalarrayyes–
sourcesarrayyes–

No examples provided.

collection.create ~167

Create a named document collection for cross-document semantic search and RAG-based Q&A. Free — no credits consumed. Use when you want to group related evidence bundles for unified search (collection.search) or question answering (collection.ask). NOTE: Collections start empty. Add evidence bundles with collection.add_document. Indexing is async — once complete, use collection.search or collection.ask. Returns: { collection_id: string (col_...), name: string } Example prompts: - "Create a collection called Q4 Contracts for my quarterly reports." - "Set up a new document group named Due Diligence Docs." - "Make a collection to organize my vendor agreements."

NameTypeReqDescription
namestringyesHuman-readable collection name. Example: "Q4 Contracts" or "Due Diligence Docs"
NameTypeReqDescription
collection_idstringyes–
namestringyes–

No examples provided.

collection.list ~133

List all document collections owned by your API key. Free — no credits consumed. Use before collection.search or collection.ask when you need the collection ID. Supports pagination with limit and offset. Returns: { collections: [{ id, name, created_at }] } Example prompts: - "List all my document collections." - "Show me the collections I have created." - "What collections do I own? List them."

NameTypeReqDescription
limitnumber–Max collections to return (default 50, max 100). Example: 20
offsetnumber–Pagination offset (default 0). Example: 0
NameTypeReqDescription
collectionsarrayyes–

No examples provided.

collection.search ~244

Semantic (vector) search across documents in a collection. Returns ranked text chunks with relevance scores. Free — no credits consumed. Use when you need raw matching chunks from a collection. For a synthesized cited answer from the same context, use collection.ask instead. PREREQUISITE: Collection must be populated via collection.add_document and async indexing must complete (poll job.status) before results appear. Returns: { results: [{ bundle_id, chunk_id, text, score: number (0–1), title? }] } Example prompts: - "Search my Q4 Contracts collection for mentions of liability cap." - "Find the clause about data retention in my due diligence docs." - "Search for revenue numbers across my quarterly reports."

NameTypeReqDescription
collection_idstringyesCollection ID (col_...) returned by collection.create. Example: "col_550e8400-e29b-41d4-a716-446655440000"
limitnumber–Max chunks to return (default 10, max 50). Example: 5
querystringyesNatural language search query. Example: "What were the revenue numbers for Q4?"
NameTypeReqDescription
resultsarrayyes–

No examples provided.

document.check_claims ~300

Verify a list of factual claims against document text. Uses a quality AI model with citation-level evidence. Use after document.extract_text or url.extract when you need to validate specific factual assertions. For open-ended questions about a document, use url.qa instead. For multi-document investigation, use collection.ask. Typical workflow: document.extract_text/url.extract → document.check_claims. Returns: { claims: [{ claim, status: "supported"|"contradicted"|"not_found", evidence: { quote, paragraphs[] }, confidence: "high"|"medium"|"low" }], truncated: boolean } Example prompts: - "Check whether this contract mentions a liability cap of $1M." - "Verify these claims against the document: [claims list]." - "Does the report actually say revenue grew 23%?"

NameTypeReqDescription
claimsarrayyesFactual statements to verify. Each claim is checked independently against the text. Example: ["Founded in 2010", "Revenue exceeded $1M"]
max_tokensnumber–Input length cap (1 token ≈ 4 chars). Default ~3000 tokens. Truncates input text, not the output. Example: 4000
textstringyesDocument text to check claims against. Obtain via document.extract_text or url.extract. Example: "ACME Corp was founded in 2010. Revenue exceeded $1M in 2024."
NameTypeReqDescription
claimsarrayyes–
truncatedbooleanyes–

No examples provided.

document.extract_structured ~352

Extract typed fields from document text using a caller-defined schema. Uses a quality AI model with retry logic. Use when you need specific data points from a document rather than full text. For invoices with known fields, document.parse_invoice (prebuilt schema) may be simpler. For general summarization, use document.summarize instead. Schema format: { "field_name": "type hint or description" } — e.g. { "contract_date": "ISO date", "party_a": "string", "penalty_usd": "number" }. Returns: { data: { <field>: value }, data_cited: { <field>: { value, confidence: "high"|"medium"|"low", citations: [{ quote, paragraphs[] }] } } } Example prompts: - "Extract the contract date, parties, and penalty amount from this agreement." - "Pull the vendor name, PO number, and total from this document." - "Get me all named fields from this form using my custom schema."

NameTypeReqDescription
max_tokensnumber–Input length cap (1 token ≈ 4 chars). Default ~2500 tokens. Truncates input, not output. Example: 3000
schemaobjectyesField map: describe each field you want extracted with a type hint. Example: { "total_usd": "number", "vendor": "string", "invoice_date": "ISO date YYYY-MM-DD" }
textstringyesDocument text to extract from. Obtain via document.extract_text or url.extract. Example: "This Service Agreement is entered into on 2025-03-15 between ACME Corp and Beta Inc..."
NameTypeReqDescription
dataobjectyes–
data_citedobjectyes–

No examples provided.

document.extract_tables ~196

Extract tables and forms as Markdown from a PDF or image (base64-encoded). Use when the document contains structured tabular data such as financial statements, data sheets, or forms. For plain prose documents, use document.extract_text instead. Returns: { pages: number, text: string } — text contains Markdown-formatted tables. Example prompts: - "Extract the tables from this financial statement." - "Pull the data table from this PDF into Markdown format." - "Get the tabular data from this form document."

NameTypeReqDescription
document_base64stringyesBase64-encoded PDF or image bytes (max ~15 MB). Example: "JVBERi0xLjcNJeLjz9MNCj..." (truncated PDF base64)
mime_typestringyesMIME type of the document. Example: "application/pdf" for PDF bank statements, "image/jpeg" for photo of a form.
NameTypeReqDescription
pagesnumberyes–
textstringyes–

No examples provided.

document.extract_text ~192

Extract plain text from a PDF or image (base64-encoded). Use when you need raw text for downstream AI analysis (summarization, claim checking, structured extraction). For documents at a public URL, use url.extract instead (no base64 encoding needed). Returns: { pages: number, text: string } Example prompts: - "Extract the text from this scanned contract so I can search it." - "Give me the raw text from this PDF document." - "OCR this image and return the text content."

NameTypeReqDescription
document_base64stringyesBase64-encoded PDF or image bytes (max ~15 MB). Example: "JVBERi0xLjcNJeLjz9MNCj..." (truncated PDF base64)
mime_typestringyesMIME type of the document. Example: "application/pdf" for PDFs, "image/png" for PNG screenshots.
NameTypeReqDescription
pagesnumberyes–
textstringyes–

No examples provided.

document.parse_invoice ~240

Parse a receipt or invoice document into structured fields. Uses a quality AI model for accuracy. Use when you need to extract line items, totals, and merchant info from financial documents. For general document text, use document.extract_text instead. Returns: { invoice: { merchant, date (YYYY-MM-DD), line_items[], subtotal, tax, total }, cited: { <field>: { value, confidence: "high"|"medium"|"low", citations: [{ quote, paragraphs[] }] } } } Example prompts: - "Parse this invoice and give me the line items and total." - "Extract the merchant, date, and amounts from this receipt." - "Read this scanned invoice and return structured data."

NameTypeReqDescription
document_base64stringyesBase64-encoded PDF or image of the receipt/invoice (max ~15 MB). Example: "JVBERi0xLjcNJeLjz9MNCj..." (base64-encoded invoice PDF)
mime_typestringyesMIME type of the document. Example: "application/pdf" for scanned invoice PDF, "image/jpeg" for a receipt photo.
NameTypeReqDescription
citedobjectyes–
invoiceobjectyes–

No examples provided.

document.summarize ~265

Summarize document text into a prose summary and key points with citations. Use after document.extract_text or url.extract when you need a condensed understanding of a long document. For single-sentence Q&A, use url.qa instead. For extracting specific fields, use document.extract_structured. Typical workflow: document.extract_text/url.extract → document.summarize. Returns: { summary: string, key_points: string[], summary_cited: { value, confidence, citations[] }, key_points_cited: [{ text, citations[] }], truncated: boolean, strategy: "full"|"truncated"|"chunked" } Example prompts: - "Summarize this financial report and give me the key points." - "What are the main takeaways from this document?" - "Give me a concise summary of this 50-page report."

NameTypeReqDescription
max_tokensnumber–Input length cap (1 token ≈ 4 chars). Default ~3000 tokens. Truncates input, not output. Example: 4000
textstringyesDocument text to summarize. Obtain via document.extract_text or url.extract. Example: "The Q4 2025 financial report shows revenue growth of 23% year-over-year..."
NameTypeReqDescription
key_pointsarrayyes–
key_points_citedarrayyes–
strategystringyes–
summarystringyes–
summary_citedobjectyes–
truncatedbooleanyes–

No examples provided.

job.status ~262

Poll the status of an async job (extract, indexing, batch). Free — no credits consumed. Use after collection.add_document or async extract to check when processing completes. Poll this endpoint in a loop until status is "complete" or "failed". Completed jobs include the bundle_id or result_json in the response. Jobs are created when you POST /v1/extract with a webhook, or when collection.add_document triggers async indexing. Returns: { id, type: "extract"|"extract_batch"|"index_collection", status: "queued"|"processing"|"complete"|"failed"|"cancelled", progress_pct: number (0–100), progress_message, bundle_id (when complete), result_json (when complete), error (when failed), created_at, completed_at } Example prompts: - "Check the status of my indexing job job_550e8400." - "Is my async extract job done yet?" - "Poll job [job_id] — what is the current progress?"

NameTypeReqDescription
job_idstringyesJob ID (job_...) returned by async extract or collection.add_document. Example: "job_550e8400-e29b-41d4-a716-446655440000"
NameTypeReqDescription
bundle_id–yes–
collection_id–yes–
completed_at–yes–
created_atstringyes–
error–yes–
idstringyes–
progress_message–yes–
progress_pctnumberyes–
result_json–yes–
statusstringyes–
typestringyes–

No examples provided.

receipt.list ~259

List signed action receipts (rcpt_...) for an evidence bundle owned by your API key. Free — no credits consumed. Use after bundle.get, bundle.verify, bundle.notarize, or collection.add_document to audit which agent actions were bound to which manifest hash. Pass a receipt_id from the results to receipt.verify for independent signature + manifest-binding verification. Returns: { bundle_id, receipts: [{ receipt_id, bundle_id, agent_id, action, manifest_sha256, signed_at, signature, signer_address, key_id, algorithm }], limit, offset } Example prompts: - "List all signed action receipts for bundle ev_550e8400." - "What agent actions have been recorded against this evidence bundle?" - "Show me the receipts for [bundle_id] so I can verify one."

NameTypeReqDescription
bundle_idstringyesEvidence bundle ID (ev_...) to list receipts for. Example: "ev_550e8400-e29b-41d4-a716-446655440000"
limitnumber–Max receipts to return (default 50, max 200). Example: 50
offsetnumber–Pagination offset (default 0). Example: 0
NameTypeReqDescription
bundle_idstringyes–
limitnumberyes–
offsetnumberyes–
receiptsarrayyes–

No examples provided.

receipt.verify ~245

Independently verify a signed action receipt (rcpt_...) returned by bundle.get, bundle.verify, bundle.notarize, collection.add_document, or listed via receipt.list. Free — no credits consumed. Proves both that the receipt signature is authentic AND that the manifest_sha256 it was bound to still matches the bundle's current manifest — i.e. that the action was not performed against a stale or since-superseded document. Use for third-party audit of an agent's prior actions. Returns: { receipt_id, valid: boolean, signature_valid: boolean, manifest_matches_current: boolean, bundle_id, agent_id, action, manifest_sha256, signer_address, signed_at, tampered: string[] } Example prompts: - "Verify action receipt rcpt_550e8400 is authentic and still current." - "Was this receipt signed against the real document, or a stale copy?"

NameTypeReqDescription
receipt_idstringyesAction receipt ID (rcpt_...) returned in the receipt field of another tool's response. Example: "rcpt_550e8400-e29b-41d4-a716-446655440000"
NameTypeReqDescription
actionstringyes–
agent_idstringyes–
bundle_idstringyes–
manifest_matches_currentbooleanyes–
manifest_sha256stringyes–
receipt_idstringyes–
signature_validbooleanyes–
signed_atstringyes–
signer_addressstringyes–
tamperedarrayyes–
validbooleanyes–

No examples provided.

url.extract ~175

Fetch a public HTTPS URL and return extracted text and page metadata. Lean mode — no evidence bundle stored, no bundle_id returned. Use for raw text extraction from web pages and online documents. Use url.summarize for summaries, url.qa for Q&A, url.translate for translation, document.extract_text for base64 file uploads. Returns: { url, title, word_count, text, final_url (after redirects) } Example prompts: - "Extract the text from https://example.com/report.pdf for me." - "Get me the raw content of this web page: [URL]." - "Pull the text from this online article so I can analyze it."

NameTypeReqDescription
urlstringyesPublic HTTPS URL to fetch and extract. Example: "https://example.com/report.pdf" or "https://blog.example.com/article"
NameTypeReqDescription
final_urlstring––
textstringyes–
titlestring––
urlstringyes–
word_countnumber––

No examples provided.

url.qa ~232

Fetch a public HTTPS URL and answer a specific question about its content. Lean mode — no bundle stored. Use when you have a precise question about a web page. For a broad summary, use url.summarize. For multi-document Q&A, use collection.ask instead. Returns: { url, answer, answer_cited: { value, confidence, citations[] }, confidence: "high"|"medium"|"low", truncated } Example prompts: - "What is the refund policy at https://docs.example.com/policy?" - "Look at [URL] and tell me what the delivery terms are." - "Answer this question based on the content of [URL]: [question]."

NameTypeReqDescription
max_tokensnumber–Input length cap (1 token ≈ 4 chars). Truncates fetched page content, not the answer. Example: 4000
questionstringyesSpecific question to answer from the page content. Example: "What is the refund policy?"
urlstringyesPublic HTTPS URL to fetch and question. Example: "https://docs.example.com/policy"
NameTypeReqDescription
answerstring––
answer_citedobject––
confidencestring––
truncatedbooleanyes–
urlstringyes–

No examples provided.

url.summarize ~200

Fetch a public HTTPS URL and return a prose summary with key points. Lean mode — no bundle stored. Use when you need a condensed understanding of a web page. For raw text, use url.extract. For asking a specific question about a page, use url.qa. Returns: { url, summary, key_points: string[], truncated: boolean, word_count } Example prompts: - "Summarize https://en.wikipedia.org/wiki/Artificial_intelligence for me." - "Give me the key points from this blog post: [URL]." - "What is this article about? Summarize [URL]."

NameTypeReqDescription
max_tokensnumber–Input length cap (1 token ≈ 4 chars). Truncates fetched page content, not the output summary. Example: 4000
urlstringyesPublic HTTPS URL to fetch and summarize. Example: "https://en.wikipedia.org/wiki/Artificial_intelligence"
NameTypeReqDescription
key_pointsarray––
summarystring––
truncatedbooleanyes–
urlstringyes–
word_countnumber––

No examples provided.

url.translate ~219

Fetch a public HTTPS URL and return its content translated into a target language. Lean mode — no bundle stored. Use when you need to understand web content in a different language. For extracting raw untranslated text, use url.extract instead. Returns: { url, translated_text, target_lang, truncated } Example prompts: - "Translate https://example.de/artikel into English for me." - "Translate this German article into Spanish: [URL]." - "Fetch [URL] and give me the French translation."

NameTypeReqDescription
max_tokensnumber–Input length cap (1 token ≈ 4 chars). Truncates fetched page content before translation. Example: 4000
target_langstringyesISO 639-1 language code for the target language. Example: "es" for Spanish, "fr" for French, "de" for German, "ja" for Japanese, "zh" for Chinese
urlstringyesPublic HTTPS URL to fetch and translate. Example: "https://example.de/artikel"
NameTypeReqDescription
target_langstringyes–
translated_textstring––
truncatedbooleanyes–
urlstringyes–

No examples provided.

Common questions

What is the com.docimprint/api MCP server?

com.docimprint/api is an MCP server listed in the public MCP registry as com.docimprint/api. AI document intelligence: extract, summarize, claim-check, notarize, and signed action receipts. This page covers its hosted endpoint (https://api.docimprint.com/mcp).

Is the com.docimprint/api MCP server safe to use?

com.docimprint/api scores 85 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the com.docimprint/api MCP server expose?

com.docimprint/api exposes 22 tools: document.extract_text, document.extract_tables, document.parse_invoice, document.check_claims, document.extract_structured, and 17 more. Their descriptions and schemas cost roughly 5,274 tokens of context every time the server is loaded.

Does the com.docimprint/api MCP server require authentication?

Yes. com.docimprint/api asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

Is the com.docimprint/api MCP server still maintained?

com.docimprint/api is still listed as active in the MCP registry. We last reached this channel on 29 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.