Skip to main content
Glama
Firecrawl MCP Server

Firecrawl MCP Server

Firecrawl read research paper

firecrawl_research_read_paper
Read-only

Retrieve passages from one indexed paper's full text that answer a specific question; set k to control how many relevant passages are returned.

Instructions

Retrieve in-body passages from one paper that are relevant to a specific question. Full text is available only for indexed papers; k controls the number of passages.

Returns matching passages or a notice when full text is unavailable.

Input Schema

NameRequiredDescriptionDefault
kNoNumber of passages to return (default 4).
paperIdYesCanonical paperId or primaryId such as `arxiv:1706.03762`, `pmcid:PMC12530322`, `pmid:40953549`, or `doi:10.1016/j.neunet.2025.108095`.
questionYes

Output Schema

NameRequiredDescriptionDefault
passagesYesIn-body passages relevant to the question; empty when no full text is indexed.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.0.2
    • changedInput schema / $schema
      Previous value: -"https://json-schema.org/draft/2020-12/schema"New value: +"http://json-schema.org/draft-07/schema#"
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "description": "Full-text passages from one paper.",
      +  "properties": {
      +    "passages": {
      +      "description": "In-body passages relevant to the question; empty when no full text is indexed.",
      +      "items": {
      +        "additionalProperties": {},
      +        "properties": {
      +          "text": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ],
      +            "description": "Passage text."
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "passages"
      +  ],
      +  "type": "object"
      +}
  2. First observedv1.0.1

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnly and non-destructive, and the description goes beyond them by disclosing the indexing precondition and the failure mode ('a notice when full text is unavailable'). It does not cover rate limits or what an empty/low-relevance result looks like, but the fallback disclosure is the substantive addition an agent needs.

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?

Two short sentences, front-loaded with the core action and scope. The second sentence slightly overlaps the first by restating the return of matching passages, but there is no filler.

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 values need not be spelled out. However, for a retrieval tool gated on an 'indexed papers' precondition, the description never tells the agent how to establish index status or what to do otherwise — a meaningful gap given the research_* sibling set.

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 coverage is 67% with well-documented paperId (formats) and k (range, default 4); only `question` lacks a schema description. The description's 'relevant to a specific question' and 'k controls the number of passages' largely restate the schema rather than adding format or quality guidance for the question phrasing.

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?

States a specific verb and resource: retrieve in-body passages from one paper, targeted at a question. That distinguishes it from the metadata-oriented siblings (research_inspect_paper, research_search_papers), though it never names those siblings explicitly, leaving the agent to infer the boundary from tool names.

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

Usage Guidelines3/5

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

Adds one real usage condition — full text is available only for indexed papers — but does not say how to check whether a paper is indexed, nor when to prefer inspect_paper or search_papers instead. Usage is implied by the name and sentence, not routed.

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