Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/imiraoui/pennyocr-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/mcp/imiraoui/pennyocr-mcp/ocr)<a href="https://agentmods.dev/mcp/imiraoui/pennyocr-mcp/ocr"><img src="https://agentmods.dev/badge/mcp/imiraoui/pennyocr-mcp/ocr.svg" alt="Measured on agentmods" height="20"></a>Grade A, and why
ocr scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
{ "ocr": { "url": "https://mcp.pennyocr.com", "type": "streamable-http" } }
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 6 lines scan A cc13cee998b6
ocr is an MCP server published in the GitHub repository imiraoui/pennyocr-mcp (0 stars, last pushed 7d ago), licensed MIT. Its token cost is not measured: an MCP server costs its tool schemas, not its config file. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other mcp servers, from other repositories
pdfmux
Self-healing PDF extraction for RAG — #2 of 8 engines on opendataloader-bench (0.903). Flags pages it can't read instead of dropping them, and certifies any extractor's output for silent drops. Verify signed manifests offline, free. Per-page confidence, 7-tool MCP server, LangChain/LlamaIndex loaders. LlamaParse…
optical-context-mcp
MCP server that compresses OCR-heavy PDFs into dense packed images for AI agent workflows. Runs locally from the optical-context-mcp Python package.
mistral-ocr
A tool for OCR using Mistral. Ensure your MISTRALAPIKEY is exported or in /.zshrc or /.bashrc. Runs locally from the mistral-ocr Python package.
pdf-dashboard-with-mcp
MCP server "pdf-dashboard-with-mcp" as configured in dakshp26/PDFDashboardWithMCP. Runs locally from the pdf-dashboard-with-mcp Python package.
mistral-ocr-mcp
MCP server for extracting text and images from documents using Mistral OCR API. Runs locally from the mistral-ocr-mcp Python package.
nutrient-dws-mcp-server
Nutrient Processor + Data Extraction MCP: convert, OCR, sign, redact, and extract PDFs/Office docs. Runs locally from the @nutrient-sdk/dws-mcp-server npm package. Needs 5 environment variables to run.