biomedical-paper-triage
Use when turning a raw list of biomedical papers into a ranked, access-tagged shortlist graded T1-T4 by human/animal/in-vitro evidence strength via Scholarly Access MCP ; do NOT use for generic literature metadata or citation graphs (use scholarly-literature-review) ; returns defensible ranked shortlist with evidence grades.
- License 许可
- MIT
- 最近更新
- 2026-11-02
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- biomedical-paper-triage
- description
- Use when turning a raw list of biomedical papers into a ranked, access-tagged shortlist graded T1-T4 by human/animal/in-vitro evidence strength via Scholarly Access MCP ; do NOT use for generic literature metadata or citation graphs (use scholarly-literature-review) ; returns defensible ranked shortlist with evidence grades.
03 SKILL.md 正文
Biomedical Paper Triage
Turn a raw list of biomedical papers (DOIs, PMIDs, arXiv ids, or titles) into a defensible, ranked shortlist. Pairs with the consensus-tooluniverse-research evidence-grading scheme (T1-T4 x human / animal / in-vitro) so the shortlist carries both a triage rank and an evidence tier.
When to use
- You ran a search (PubMed, Consensus, a colleague's bibliography) and got back 20-200 candidate papers and need to decide which 10-20 to actually read.
- You must justify inclusion/exclusion for a mini-review or grant background and want recency, study-type, citation-signal, and access reasons recorded per paper.
- You want to avoid wasting time queuing papers that turn out to be paywalled, retracted, or non-redistributable.
- You need an access-honest list to hand to the
consensus-tooluniverse-researchworkflow for evidence grading and download.
The MCP tools it uses
It primarily uses three tools (spec dot-name -> MCP underscore-name):
paper.batch_resolve->paper_batch_resolve(identifiers[]): resolve a whole list at once into a table of canonical metadata, normalized ids (doi, pmid, arxiv, openalex), access status, OA links, and a list of unresolved items. This is the workhorse for the first pass.paper.access_status->paper_access_status(identifier|doi|arxiv): confirm or refine the honest access category for a single paper when the batch result isunknownor you need provenance.paper.citation_graph->paper_citation_graph(identifier|doi, limit): pull references and citing works from Semantic Scholar / OpenAlex to derive a citation signal and to discover high-impact neighbors worth adding to the pool.
Supporting tools when you need them: paper.resolve (single id sanity check), paper.fetch_metadata (abstract + references for closer study-type reading), paper.find_oa_pdf and paper.download_oa_pdf (only after triage, only for oa_pdf items at allowlisted hosts), and paper.summarize (structured digest from legally-available metadata).
Access categories (honest)
oa_pdf: downloadable OA at a legit source.subscription: paywalled. Cite only.unavailable: no available full text exists.unknown: access could not be determined; runpaper_access_statusto refine.
Workflow steps
- Gather the candidate identifiers into a single list (DOIs, PMIDs, arXiv ids, or titles). Deduplicate obvious repeats.
- Run
paper_batch_resolve(identifiers)to get one table: canonical title, year, normalized ids, access status, OA link, and the unresolved set. - For any item with status
unknown, callpaper_access_statuson its best id to get an honest category and provenance. Triage unresolved items separately (often title typos or non-indexed preprints). - Derive a citation signal: for the top candidates by relevance/recency, call
paper_citation_graph(doi, limit)and record citing-work count plus any high-impact neighbors that should join the pool. - Infer study type from metadata/abstract (
paper_fetch_metadatawhen the title is ambiguous) and map it to an evidence tier using the pairedconsensus-tooluniverse-researchT1-T4 x human / animal / in-vitro scheme (e.g. RCT / systematic review = higher human-tier; cell-line only = in-vitro tier). - Score and rank each paper across five axes: relevance to the question, recency, study-type strength, citation signal, and availability. Keep availability as a tag, not a hard filter, unless the user wants only readable papers.
- Produce the ranked, access-tagged shortlist (rank, title, year, ids, study type, evidence tier, citation signal, access category, one-line reason). Hand
oa_pdfitems to download only after the shortlist is approved.
Concrete examples
- Resolve a known landmark:
paper_resolve("10.1371/journal.pmed.0020124")returns the resolved record titled "Why Most Published Research Findings Are False". - Confirm openly downloadable:
paper_access_status(doi="10.1371/journal.pone.0000308")returnsoa_pdfwith a PLOS OA url, so this paper sits high on the availability axis. - Citation neighbors:
paper_citation_graph(doi="10.1371/journal.pmed.0020124", limit=25)returns references and citing works to compute citation signal and surface high-impact additions.
Limitations
- Triage scores are heuristic; a low rank is a reading-priority signal, not a quality verdict. A human reviews the final shortlist.
- Citation counts depend on Semantic Scholar / OpenAlex coverage and lag for very recent or niche work.
- Study-type inference from titles/abstracts can be wrong; verify before assigning a high evidence tier.
unknownandunavailableitems are surfaced, not silently dropped; decide their fate explicitly.
Tested invocation
paper_batch_resolve(["10.1371/journal.pmed.0020124", "10.1371/journal.pone.0000308", "10.1056/NEJMoa2034577"])
# -> table: each id resolved with canonical title, normalized ids, and access status
# (PLOS Medicine + PLOS ONE = oa_pdf; NEJM = subscription / free_to_read_not_redistributable)
paper_access_status(doi="10.1371/journal.pone.0000308")
# -> { category: "oa_pdf", oa_url: "<PLOS OA url>", provenance: ... }
paper_citation_graph(doi="10.1371/journal.pmed.0020124", limit=25)
# -> references + citing works for the citation-signal axis
04 同仓库更多 Skills
clarify-requirements
Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.
openmm-md
Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein / protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.
visual-review
Take screenshots of web pages and UI using Playwright for visual review and iteration
status
Diagnostic status report — shows metaswarm installation state, project setup, and potential issues
start
Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work
setup
Interactive project setup — detects your project, configures metaswarm, writes project-local files