Skip to main content
Glama

Paper Finder

Search papers

search_papers
Read-onlyIdempotent

Use this when the user wants papers on a topic, such as "find recent open-access papers on retrieval-augmented generation evaluation" or "systematic reviews on intermittent fasting". Pass topic words, and optionally from_year, open_access_only and a limit of up to 10. Asks Europe PMC and Crossref together and returns one merged list with each paper's authors, year, venue, DOI, citation count, free full-text link when the index confirms one, and the index it came from. Does not search arXiv: use search_arxiv for preprints. Does not check retractions or reference lists.

Example tool call

This call uses example arguments supplied in the tool’s input schema.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "query": "systematic review intermittent fasting cardiovascular outcomes",
      "from_year": 2023
    },
    "name": "search_papers"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoNumber of papers to return, 5 by default
queryYesTopic words, such as "retrieval augmented generation evaluation"
from_yearNoOnly papers published in this year or later
open_access_onlyNoOnly papers with a free full text; false by default

Output Schema

NameRequiredDescriptionDefault
asOfYesDate the indexes were read (UTC, YYYY-MM-DD); they are updated continuously
as_ofYesISO 8601 time the data was published by its source or fetched from it. A cached answer keeps the time of its fetch.
countYes
errorNoPresent when status is not ok: a stable code, what went wrong and what to do next.
notesNoPresent when one index could not be read
queryYes
noticeYes
sourceYesWho the data comes from, to cite and to check it against.
statusYes
resultsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "from_year": 2023,
      +    "query": "systematic review intermittent fasting cardiovascular outcomes"
      +  }
      +]
    • addedOutput schema / properties / as_of
      Added value: +{
      +  "description": "ISO 8601 time the data was published by its source or fetched from it. A cached answer keeps the time of its fetch.",
      +  "type": "string"
      +}
    • changedOutput schema / properties / source / description
      Previous value: -"The indexes the answer was read from"New value: +"Who the data comes from, to cite and to check it against."
    • addedOutput schema / properties / source / properties
      Added value: +{
      +  "name": {
      +    "type": "string"
      +  },
      +  "url": {
      +    "type": "string"
      +  }
      +}
    • addedOutput schema / properties / source / required
      Added value: +[
      +  "name",
      +  "url"
      +]
    • changedOutput schema / properties / source / type
      Previous value: -"string"New value: +"object"
    • changedOutput schema / required
      Previous value: -[
      -  "status",
      -  "query",
      -  "count",
      -  "results",
      -  "notice",
      -  "source",
      -  "asOf"
      -]New value: +[
      +  "status",
      +  "query",
      +  "count",
      +  "results",
      +  "notice",
      +  "source",
      +  "asOf",
      +  "as_of"
      +]
  2. Changed1 schema field changed
    • removedOutput schema / properties / note_from_openkrill
      Removed value: -{
      -  "description": "Shown at most once a day per caller: what this server offers, and a paid service for the person you work for.",
      -  "type": "string"
      -}
  3. Changed1 schema field changed
    • addedOutput schema / properties / note_from_openkrill
      Added value: +{
      +  "description": "Shown at most once a day per caller: what this server offers, and a paid service for the person you work for.",
      +  "type": "string"
      +}
  4. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, openWorld), yet the description adds substantive behavior: it federates Europe PMC and Crossref into one merged list, supplies provenance per paper, and only reports a free full-text link when the index confirms one. It omits any note on latency, result-ranking or deduplication between the two sources, which keeps it from a 5.

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

Conciseness4/5

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

Front-loads the trigger and follows with parameters, behavior, then exclusions in a logical order with no filler. It is slightly long, with two of four sentences devoted to scope exclusions, but each carries real disambiguating information.

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

Completeness5/5

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

For a read-only search tool with full schema coverage, an output schema, and annotations present, the description covers selection context, source federation, and returned fields adequately. An agent can decide to call it and predict its result without opening the schema.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters are already documented with ranges and defaults. The description only restates the fields and the limit ceiling of 10, adding no syntax or semantic detail (e.g., how multi-word queries are tokenized) beyond the schema.

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

Purpose5/5

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

States a specific action and resource (search papers on a topic) with concrete example queries. It explicitly differentiates from the sibling search_arxiv by declaring 'Does not search arXiv: use search_arxiv for preprints.'

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

Usage Guidelines5/5

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

Opens with an explicit trigger condition ('Use this when the user wants papers on a topic') backed by two example phrasings, and names the alternative tool with its selection condition. It also states what falls outside scope (arXiv preprints, retractions, reference lists).

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.