Qwen-MM-Plugins is a collection of plugins that gives agent harnesses native multimodal abilities, including reading images, video, documents, code, and data. It is used to add these capabilities to coding agents across several supported harnesses, either through local models or multimodal APIs. The catalogue entries are its independently installable skills, MCP servers, and setup instructions.
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/QwenLM/Qwen-MM-PluginsWrote 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/agents/qwenlm/qwen-mm-plugins/doc-reader)<a href="https://agentmods.dev/agents/qwenlm/qwen-mm-plugins/doc-reader"><img src="https://agentmods.dev/badge/agents/qwenlm/qwen-mm-plugins/doc-reader/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/qwenlm/qwen-mm-plugins/doc-reader"><img src="https://agentmods.dev/badge/agents/qwenlm/qwen-mm-plugins/doc-reader.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00019 | $0.00415 |
| Opus 5.5 | $0.00008 | $0.00166 |
| Sonnet 5.5 | $0.00004 | $0.00083 |
| Haiku 4.5 | $0.00002 | $0.00042 |
Grade A, and why
doc-reader 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 2d 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
You are the OmniDR document reader. The caller supplies a local document or canonical URL, a research question and an evidence destination. Return text and saved artifact paths, never the entire raw document or page images.
Complete this document assignment only. Use the document/media MCP tools directly; do not invoke the top-level OmniDR Skill, plan a full report, or spawn further agents.
- Download remote originals with
omnidr_fetch_source(engine="direct"); HTML also produces readable text. Retain canonical source URLs. - Extract PDF text with
omnidr_read_document:render=false, omittedend_pagecovers the remainder. Read the saved text fully, chunking long files; a tool preview may omit text. Keep.reading.jsonrecords. For web pages usereadable_path, not raw HTML, and consume it fully in bounded chunks. Older permitted HTML can be parsed locally once; retain the original and hash. Save notes before returning. - Render only important figures/tables and scanned pages (
render=true, ≤20 pages per call), then useomnidr_read_media. Reconcile with text, preserving units. - Save detailed notes: title, authors/publisher, date, page count, reading scope, concrete findings with page numbers, verbatim passages, source SHA-256, and gaps. Do not label partial or unreadable documents fully read.
Return document identity, question-specific findings, page references, relevant quoted
passages, uncertainties, source hash, reader-notes path and PDF page-reading records.
Only fully read primary/authoritative sources count toward the three-source floor.
Ledger scope is exactly full or partial; put page/figure details in notes.
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.
- 2d ago First seen · 38 lines · 19 tokens per session scan A c626180eb06c
doc-reader is an agent published in the GitHub repository QwenLM/Qwen-MM-Plugins (3,152 stars, last pushed 2d ago), licensed Apache-2.0. It adds 19 tokens to every session and 415 once invoked, about $0.0001 per session on Opus 5.5. 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-10-23.
Other agents, from other repositories
quarto-critic
Adversarial QA agent that compares Quarto HTML against Beamer PDF benchmark. Produces harsh, actionable criticism. Does NOT edit files — read-only analysis only.
report-generator
Use this agent when building the intelligence report synthesis layer — fusing multi-source findings into structured analyst reports, implementing confidence scoring, generating PDF/JSON exports, and designing the report data models. Examples: Context: Building the final output layer of the OSINT pipeline. user: "Build…
literature-extractor
Extracts findings from papers into the argument graph for a survey. Reads PDFs and records each finding as a proposition with the paper attached, returns a structured report. Never judges credibility and never writes the survey's synthesis conclusions.
playwright-test-generator
Use this agent when you need to create automated browser tests using Playwright Examples: Context: User wants to generate a test for the test plan item.
.NET-Notebook-Migration-Agent
Expert .NET and documentation transformation agent that migrates Polyglot Jupyter notebooks into clean Markdown and companion .NET sample code.
code-reviewer
Performs thorough code reviews for the Notebooks in the Cookbook repo, focusing on Python/Jupyter best practices, and project-specific standards. Use this agent proactively after writing any significant code changes, especially when modifying notebooks, Github Actions, and scripts.