Skip to main content
Glama

list_articles

Read-onlyIdempotent

Retrieve articles from a medical literature review run with their screening decisions, fetch status, and wiki status to track progress and audit results.

Instructions

List a run's articles with their screening, fetch, and wiki status.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
run_idYesRun ID from start_search
decisionNo
wiki_statusNo
fetch_statusNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.1.5
    • changedInput schema / properties / fetch_status / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "pending",
      -      "full_text",
      -      "abstract_only",
      -      "failed"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "pending",
      +      "full_text",
      +      "abstract_only",
      +      "failed",
      +      "skipped"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. First observedv0.1.1

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered. The description usefully adds that returned rows carry screening, fetch, and wiki status, but says nothing about pagination behavior (limit/offset) or result ordering, which matters for a listing tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with zero filler. The scope (a run's articles) and payload (the three status domains) are stated immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is not required. However, with six parameters and only one documented, the description should at least signal that decision/wiki_status/fetch_status are filters and that limit/offset paginate; that omission leaves an agent guessing how to narrow results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%: run_id has a hint ('Run ID from start_search') and limit/offset have only defaults and bounds. The description's mention of screening/fetch/wiki status loosely maps to the decision, fetch_status, and wiki_status filters, but it never explains that these are filters, nor what their enum values mean, so it fails to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource: it lists a run's articles and enumerates the status domains (screening, fetch, wiki) covered. It is distinguishable from list_runs and get_run_status, but it never names a sibling or the alternative tool for a similar listing need.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use context, no prerequisites (e.g., that a valid run must exist), and no indication of when a filtered listing is preferable to next_screening_batch or get_run_status. Usage is entirely implied by the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.