Document Integrity Validator
RemoteAbout Document Integrity Validator
Document Integrity Validator is an MCP server for checking documents against known international standards. It returns structured verdicts for individual documents and can cross-check related document packages for inconsistencies.
Key features
- 01Check consistency and completeness against standards
- 02Accept document text or base64 images
- 03Return a structured verdict and agent action
- 04Cross-check packages of related documents
Use cases
- 01Review a passport against ICAO Document 9303
- 02Check trade or shipping documents for anomalies
- 03Compare quantities, parties, and dates across a document package
MCP support
Exposes `check_document` and `check_document_package` tools to MCP clients. The tools assess documents against supported standards and return machine-readable results, including an action for the agent.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://document-integrity-validator-mcp-production.up.railway.app/mcpclaude mcp add --transport http ojaskord-document-integrity-validator https://document-integrity-validator-mcp-production.up.railway.app/mcp{"mcpServers":{"ojaskord-document-integrity-validator":{"type":"http","url":"https://document-integrity-validator-mcp-production.up.railway.app/mcp"}}}Open in Cursor{"servers":{"ojaskord-document-integrity-validator":{"type":"http","url":"https://document-integrity-validator-mcp-production.up.railway.app/mcp"}}}Open in VS Code{"mcpServers":{"ojaskord-document-integrity-validator":{"type":"http","url":"https://document-integrity-validator-mcp-production.up.railway.app/mcp"}}}{"mcpServers":{"ojaskord-document-integrity-validator":{"serverUrl":"https://document-integrity-validator-mcp-production.up.railway.app/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
2| Parameter | Type | Required | Description |
|---|---|---|---|
| document_text | string | No | Extracted text content from the document. Provide this or document_image or both. |
| document_image | string | No | Base64 encoded document image. Accepts raw base64 or a data URL (data:image/jpeg;base64,...). Supported types: JPEG, PNG, GIF, WEBP. |
| document_type_hint | string | No | What the calling agent believes the document type is, e.g. "bill_of_lading", "passport", "certificate_of_origin". Optional -- the validator identifies the type independently. |
| issuing_jurisdiction | string | No | Country or issuing body, e.g. "Singapore", "ICAO", "United Kingdom". Narrows jurisdiction-specific standard selection. |
Details
From the project READMEDocument Integrity Validator MCP
Before your agent accepts, processes, or acts on any document received from an external party -- verify it is internally consistent and matches the known standard for its type. One call. Any document. Machine-readable verdict.
What it does
Checks any document for internal consistency, completeness, and anomalies against the known international standard for that document type. Accepts base64 image or extracted text. Returns a structured verdict with a machine-readable agent_action field.
Supported standards include: ICAO Document 9303 (passports), Hague-Visby Rules 1968 (bills of lading), UCP 600 (trade finance documents), ISPM 12/IPPC/FAO (phytosanitary certificates), Vienna Convention on Road Traffic 1968 (driving licences), and more.
Returns UNKNOWN_DOCUMENT_TYPE rather than guessing on unfamiliar documents -- refusal is correct behaviour, not a failure.
AI-powered reasoning -- NOT a database lookup.
Tools
check_document (Free tier: 10 calls/month)
Checks a single document against its international standard.
Input:
document_text(string, optional) -- extracted text from the documentdocument_image(string, optional) -- base64 encoded image (raw base64 or data URL)document_type_hint(string, optional) -- agent belief about document typeissuing_jurisdiction(string, optional) -- country or issuing body
At least one of document_text or document_image is required.
Response:
{
"agent_action": "PROCEED",
"verdict": "PASS",
"confidence": "HIGH",
"document_type_identified": "Bill of Lading",
"assessed_against": "Hague-Visby Rules 1968",
"known_issuing_standard": "IMO",
"flags": [],
"reason": "Document is internally consistent and compliant with Hague-Visby Rules 1968.",
"analysis_type": "AI-powered reasoning -- NOT a database lookup",
"checked_at": "2026-05-06T10:00:00.000Z",
"_disclaimer": "..."
}
agent_action values:
PROCEED-- document passedVERIFY_MANUALLY-- flags found, agent should flag for human reviewHOLD-- document failed, do not proceedREFER_TO_HUMAN-- document type unknown, refer for manual assessment
check_document_package (Paid tier only)
Checks 2-20 related documents individually then cross-checks all for consistency conflicts.
Input:
documents(array, min 2, max 20) -- each item has:label(required),document_text,document_image,document_type_hint,issuing_jurisdiction
Cross-checks performed: weights/quantities/amounts, party names, reference numbers, dates, commodity descriptions, port references.
Pricing
| Tier | Calls | Price |
|---|---|---|
| Free | 10/month per IP | No API key required |
| Trial extension | +10 one-time | POST /trial-extension |
| Pro | 500/month | $29/month |
| Enterprise | 5,000/month | $199/month |
Overage: $0.05 per call above monthly cap.
Subscribe at kordagencies.com.
Harness Integration
Claude Code / Claude Desktop (.mcp.json)
{
"mcpServers": {
"document-integrity-validator": {
"type": "http",
"url": "https://document-integrity-validator-mcp-production.up.railway.app/mcp"
}
}
}
LangChain / LangGraph (Python)
from langchain_mcp_adapters.client import MultiServerMCPClient
client = MultiServerMCPClient({
"document-integrity-validator": {
"url": "https://document-integrity-validator-mcp-production.up.railway.app/mcp",
"transport": "http"
}
})
tools = await client.get_tools()
OpenAI Agents SDK (Python)
from agents import Agent, HostedMCPTool
agent = Agent(
name="Assistant",
tools=[HostedMCPTool(tool_config={
"type": "mcp",
"server_label": "document-integrity-validator",
"server_url": "https://document-integrity-validator-mcp-production.up.railway.app/mcp",
"require_approval": "never"
})]
)
Self-hosted (stdio)
npm install -g document-integrity-validator-mcp
ANTHROPIC_API_KEY=sk-ant-... TRANSPORT=stdio document-integrity-validator-mcp
Add to Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"document-integrity-validator": {
"command": "document-integrity-validator-mcp",
"env": { "ANTHROPIC_API_KEY": "sk-ant-..." }
}
}
}
Trial Extension
If you have reached the 10 call/month free limit, request 10 extra calls:
curl -X POST https://document-integrity-validator-mcp-production.up.railway.app/trial-extension \
-H "Content-Type: application/json" \
-d '{"name":"Your Name","email":"[email protected]","use_case":"Brief description"}'
One extension per email address.
Legal
AI-powered document consistency assessment. Results are for informational purposes only and do not constitute legal, compliance, or authentication advice. We do not log or store your document content. Full terms: kordagencies.com/terms.html
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.