Walk a paper's citation graph
paper_graphTrace a paper's references and citing works to verify its status, uncover subsequent research, and build a reading list from one paper.
Instructions
Follow the citations of ONE paper, and check whether it still stands.
`search` finds papers that MENTION your words. This follows the edges
instead: what a specific paper built on, and what has built on it since.
Best for:
- Checking a citation before repeating it: is the DOI real, and has the
paper been retracted or corrected?
- "What happened after this result": citing works come back ordered by how
much the field cited them, so a 2019 paper leads to the current state of
the art rather than to the most recent preprint about it.
- Building a reading list backwards from one good paper.
Not recommended for:
- Finding papers by topic -> `search(category="paper")`, or a sub-group
like `"paper.biomed"` / `"paper.cs"` / `"paper.preprint"`.
- Reading the paper itself -> `read_doc` on the returned URL.
Returns:
- markdown (default): the paper with its retraction/correction notices,
then "References" and "Cited by" sections.
- json: {paper, references, citations, notes}, where `paper.crossref`
carries `registered` and every post-publication `notices` entry.
Common mistakes:
- Passing a topic instead of a paper. A title resolves to its single best
match; a phrase that names no specific paper resolves to the wrong one.
- Reading an empty `citations` list as "uncited" when `notes` says the
lookup was truncated.
Args:
paper: DOI (`10.1145/1571941.1572114`, or a doi.org URL), an OpenAlex
ID (`W2148972377`), or the paper's exact title.
direction: "both", "references" (what it cites) or "citations" (what
cites it).
limit: Max neighbours per direction, 1-50.
format: "markdown" or "json".
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| paper | Yes | ||
| format | No | markdown | |
| direction | No | both |