DocImprint Document Intelligence
About
Verifiable document intelligence for AI agents.
Details
- Author
- sawftware-apps
- Categories
- Productivity
Jump to
Setup
Install DocImprint Document Intelligence in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/sawftware-apps/docimprint-sdk
Follow the installation instructions in the repository README, then restart your MCP client.
Verifiable document intelligence for AI agents.
Document memory agents can prove.
PDFs & URLs → cited answers · evidence bundles · on-chain attestation
- At a glance
- Choose your integration
- See what you get
- How it works
- Why not plain OCR or RAG?
- Use cases
- Install
- Quick start
- Examples
- Features
- Why DocImprint?
- Agent-native features
- CrewAI integration
- MCP server
- API reference
- Error handling
- Authentication
- TypeScript
- Pricing
- Community
- Links
DocImprint turns any PDF or URL into atamper-evident evidence bundle— structured data, AI-cited answers, and a cryptographic proof your agents can verify independently.
Every response includes a verifiable bundle ID, manifest hash, and cited answers tied to exact source quotes.
{ "bundle_id": "ev_01jqv8k3m2x", "manifest_sha256": "a3f2c1d8e9b0476f8a2b1c0d9e8f7a6b5c4d3e2f1a0b9c8d7e6f5a4b3c2d1e0f", "signature": { "signature": "0x8f4e2a1b9c3d5e7f0a2b4c6d8e0f1a3b5c7d9e1f3a5b7c9d1e3f5a7b9c1d3e5f71c", "signer_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0EbE", "algorithm": "secp256k1-eip191" }, "answer_cited": { "value": "Section 4.2 does not permit unilateral termination without 90 days written notice.", "citations": [ { "quote": "Neither party may terminate this Agreement unilaterally except upon ninety (90) days prior written notice to the other party.", "paragraphs": [42], "page": 4, "confidence": "high" } ] }, "artifacts": { "markdown": { "sha256": "b4e5f6a79876543210fedcba9876543210fedcba9876543210fedcba9876543210ab" }, "manifest": { "sha256": "a3f2c1d8e9b0476f8a2b1c0d9e8f7a6b5c4d3e2f1a0b9c8d7e6f5a4b3c2d1e0f" } } }
flowchart LR source[PDF or URL] --> extract[extract / qa / checkClaims] extract --> bundle[Evidence bundle ev_...] bundle --> artifacts[Artifacts + manifest SHA-256] bundle --> citations[Cited answers with quotes] artifacts --> verify[verify - free] verify --> notarize[notarize on Base L2 - optional]
npm install docimprint # TypeScript / Node.js
pip install docimprint # Python REST client pip install "docimprint[crewai]" # + 10 CrewAI tools & ProvenanceTracker
Python source lives inpython/. PyPI:docimprint.
Get an API key atdocimprint.com— free tier available, no credit card required.
import { DocImprintClient } from 'docimprint' const client = new DocImprintClient({ apiKey: 'dr_live_...' }) const result = await client.extract({ source: 'https://example.com/contract.pdf', include: ['markdown', 'summary'], }) console.log(result.bundle_id) // ev_01j... console.log(result.summary) // AI-generated summary console.log(result.manifest_sha256) // tamper-evident hash console.log(result.key_points_cited[0].citations[0].quote)
from docimprint import DocImprintClient client = DocImprintClient(api_key="dr_live_...") result = client.extract( url="https://example.com/contract.pdf", include=["markdown", "summary"], ) print(result["bundle_id"]) # ev_01j... print(result["summary"]) # AI-generated summary print(result["manifest_sha256"]) # tamper-evident hash
curl -X POST https://api.docimprint.com/v1/extract \ -H "Authorization: Bearer dr_live_..." \ -H "Content-Type: application/json" \ -d '{"source": "https://example.com/contract.pdf", "include": ["markdown", "summary"]}'
Runnable demos that show the full proof story — claim-check with citations, a stored evidence bundle, and a signed action receipt:
# Python cd examples/python pip install -e . cp .env.example .env # set DOCIMPRINT_API_KEY python -m docimprint_examples.prove_what_agent_read # TypeScript cd examples/typescript npm install cp .env.example .env # set DOCIMPRINT_API_KEY npm run prove
Seeexamples/README.mdfor both languages and what each artifact proves.
- 🔏Cryptographic provenance— every bundle is EIP-191 signed at creation; optionally notarized on Base L2 via EAS for an immutable on-chain audit trail
- 🤖Agent-native by design— async jobs, webhooks, idempotency keys, and legal hold built into every request, not bolted on
- 📎Beyond OCR— citations carry exact quotes, paragraph indices, and confidence scores (high/medium/low), not just raw text
- 🛠️10 CrewAI tools out of the box—research_tools(),legal_tools(),collection_tools()pre-grouped for common agent workflows
- ⚖️Compliance-ready—legal_hold, provenance logging, multi-agent handoff tracking, and on-chain notarization designed for legal and regulated industries
- 💳Flexible payment— monthly credit plans or pay-per-call USDC via x402, no account required
DocImprint is designed for autonomous agent workflows, not just synchronous API calls.
// Fire-and-forget async extraction — returns job_id immediately const job = await client.extract({ source: 'https://example.com/large-report.pdf', async: true, webhook: 'https://your-agent.io/callback', idempotency_key: 'report-2025-q4', legal_hold: true, }) const status = await client.getJob(job.job_id) // { status: 'complete', bundle_id: 'ev_...', progress_pct: 100 } // Monitor a URL for changes — get notified on diff await client.extract({ source: 'https://example.com/terms.html', monitor: { webhook: 'https://your-agent.io/changes', mode: 'diff' }, })
Python: provenance & multi-agent handoff tracking
client.log_provenance(bundle_id="ev_...", agent_id="agent-research", action="extracted") client.handoff(bundle_id="ev_...", from_agent="agent-research", to_agent="agent-legal", note="ready for claim check")
10 purpose-built tools for CrewAI agents, organized into preset groups.
from docimprint.crewai import DocImprintToolkit toolkit = DocImprintToolkit( api_key="dr_live_...", collection_id="col_...", # required for collection tools ) toolkit.research_tools() # extract, summarize, qa, check_claims toolkit.legal_tools() # check_claims, verify, notarize toolkit.collection_tools() # search, ask, add_to_collection toolkit.all_tools() # all 10 tools
ProvenanceTrackerwraps all tools to automatically log agent actions and bundle handoffs.
from docimprint.crewai import DocImprintToolkit, ProvenanceTracker tracker = ProvenanceTracker(client=toolkit.client) trackable = toolkit.trackable_tools()
DocImprintKnowledgeSourceintegrates with CrewAI's knowledge system for retrieval-augmented agents.
DocImprint exposes a native MCP server for use with Claude, Cursor, and any MCP-compatible client.
npx @smithery/cli install docimprint --client claude
{ "mcpServers": { "docimprint": { "type": "streamable-http", "url": "https://api.docimprint.com/mcp", "headers": { "Authorization": "Bearer dr_live_..." } } } }
Transport:streamable-http· Auth: Bearer token ·Listed on Smithery·Listed on Glama
URL tools— lean mode, no bundle stored:
Document tools— accepts base64 PDF or image:
Guided prompts:claim_check_workflow·invoice_intake
Resource:bundle://{bundle_id}— read bundle metadata directly
Full typed reference:docimprint.com/docs·OpenAPI
import { DocImprintClient, DocImprintError } from 'docimprint' try { const result = await client.extract({ source: 'https://example.com/doc.pdf' }) } catch (err) { if (err instanceof DocImprintError) { console.error(err.message) // human-readable error console.error(err.status) // HTTP status code console.error(err.requestId) // x-request-id for support } }
Monthly credits via Stripe — sign up atdocimprint.com, free tier available:
const client = new DocImprintClient({ apiKey: 'dr_live_...' })
DocImprint supports thex402 open standard— pay per call in USDC on Base, straight from any EVM wallet.No account. No sign-up. No API key.Your agent can call the API autonomously without any human-managed credentials.
The API is x402-native: it returns a standard402 Payment Requiredresponse with on-chain payment details, your client settles in USDC, and the request completes automatically. From $0.01 / call.
With@x402/fetch(automatic payment handling):
import { wrapFetchWithPayment } from '@x402/fetch' import { createWalletClient, http } from 'viem' import { privateKeyToAccount } from 'viem/accounts' import { base } from 'viem/chains' const account = privateKeyToAccount('0x...') const wallet = createWalletClient({ account, chain: base, transport: http() }) const fetchWithPayment = wrapFetchWithPayment(fetch, wallet) const res = await fetchWithPayment('https://api.docimprint.com/v1/summarize', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ source: 'https://example.com/report.pdf' }), }) const data = await res.json()
Identity on owner routes:ForGET/DELETEoperations that require ownership (e.g. fetching your bundle), pass thepayment-signatureheader from a prior payment response so the API can verify your wallet address without a separate login.
All request and response types are exported:
import type { ExtractRequest, ExtractResponse, Citation, CitedField, InvoiceResult, Job, Collection, SearchResult, } from 'docimprint'
Free tier available — no credit card required. Monthly credit plans via Stripe, or pay per call in USDC via x402.See pricing →
Questions, integrations, and announcements:GitHub Discussions.
- Documentation
- API Reference
- Python examples— prove what an agent read
- TypeScript examples— same demo in Node/TS
- Evidence bundles
- x402 payments
- Pricing
The 1Password MCP server creates a bridge that allows MCP clients such as Codex and Kiro to manage your 1Password Environments with secure authorization prompts.
This is the 1st, easiest, and cheapest PPT, slides, presentation AI generation MCP Server in the world.
Persistent memory for any AI assistant. Zero token cost until recall. Stores memories in local SQLite, ranks by 6-factor scoring, returns results 79% smaller than JSON. Works with Claude, ChatGPT, Grok, Cursor, Windsurf, and any MCP client.
A MCP server that enables AI assistants to interact with Anki, the spaced repetition flashcard application.
Enables LLM clients to interact with macOS applications through AppleScript. Built using the @beyondbetter/bb-mcp-server library, this server provides safe, controlled execution of predefined scripts with optional support for arbitrary script execution.
An MCP server for WordPress plugin audits
Turn your AI assistant into a digital marketing hub that creates, organizes, and analyzes links and QR Codes on demand.
Connect AI clients to Cal.com scheduling through the Model Context Protocol using the hosted server at mcp.cal.com or a local instance.
Sync Calendars, Scheduling Links, AI Executive Scheduling Assistant, Unified Calendar
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



