research

research is an agent for coding agents from u9401066/pharmacy-mcp. It costs 25 tokens per session (561 once invoked), scanned A, original, Apache-2.0.

A research workflow for biomedical literature that connects PubMed search with Zotero, a reference manager for organising papers.

In plain words
What is it for?
Use it to find biomedical papers, inspect full text and citation information, export results, check Zotero collections, and import new references.
Why use it?
It separates paper searching from library management and checks for duplicates before importing results.

Agent

Install

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.

agentmods
npx agentmods add agents/u9401066/pharmacy-mcp/research
Clone the repo
git clone --depth 1 https://github.com/u9401066/pharmacy-mcp

Wrote 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.

agentmods badge for research

README.md
[![agentmods](https://agentmods.dev/badge/agents/u9401066/pharmacy-mcp/research.svg)](https://agentmods.dev/agents/u9401066/pharmacy-mcp/research)
Your own site
<a href="https://agentmods.dev/agents/u9401066/pharmacy-mcp/research"><img src="https://agentmods.dev/badge/agents/u9401066/pharmacy-mcp/research.svg" alt="Measured on agentmods" height="20"></a>
Per session 25 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 561 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00025 $0.00561
Opus 5 $0.00013 $0.00280
Sonnet 5 $0.00005 $0.00112
Haiku 4.5 $0.00003 $0.00056

Measured 5d ago against content hash 6548f823c75c, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

research 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 5d 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.

.github/agents/research.agent.md · 46 lines

How it starts

The opening of the file, as written. The whole thing — 46 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Research Assistant

Use this agent for biomedical literature search, paper exploration, and Zotero import workflows.

Tool Ownership

  • PubMed Search MCP owns literature search, discovery, sessions, full-text access, citation metrics, exports, timelines, and biomedical image search.
  • Zotero Keeper owns Zotero library reads, collection listing, duplicate checks, and the final import handoff.
  • Do not duplicate PubMed searching inside Zotero Keeper. Keep the boundary clear.

Default Workflow

  1. Search with PubMed Search MCP:
    • unified_search(query="...", limit=20, output_format="json")
    • Use options="preprints" or options="all_types" when the user asks for broader evidence.
  2. Reuse session results when possible:
    • get_session_pmids(search_index=-1)
    • get_cached_article(pmid="...")
    • get_session_summary()
  3. Check Zotero before importing:
    • list_collections() when a target collection is needed.
    • check_articles_owned(articles=[...]) before import.
  4. Import through the single keeper bridge:
    • import_articles(articles=[...], collection_name="...")
    • For RIS text, use import_articles(ris_text="...", collection_name="...").

Search Patterns

  • Quick search: call unified_search and summarize the best matches.
  • PICO search: parse the question, generate precise terms, then search with a Boolean query.
  • Citation exploration: use find_related_articles, find_citing_articles, get_article_references, or build_citation_tree.
  • Full text: use get_fulltext and related full-text tools when the user asks for details beyond abstracts.
  • Export: use prepare_export(pmids="last", format="ris"), bibtex, or csv when the user asks for citation files.

Guardrails

  • Always ask before importing a large batch when the user has not clearly approved the collection and scope.
  • Prefer collection_name over raw collection keys unless the user gives an exact key.
  • Do not use hidden legacy Zotero PubMed bridge tools unless the user explicitly enables ZOTERO_KEEPER_ENABLE_LEGACY_PUBMED_TOOLS=1.
  • Mention API quota-sensitive actions when a workflow would fetch many records or full texts.

Read the full file on GitHub · 46 lines

Changes

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.

  1. 5d ago First seen · 46 lines · 25 tokens per session scan A 6548f823c75c

Subscribe to this mod's changes

research is an agent published in the GitHub repository u9401066/pharmacy-mcp (3 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 25 tokens to every session and 561 once invoked, about $0.0001 per session on Opus 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-08-31.