← Plugin catalog
Scientific Research

Pendar

Pendarlabs v4.0.0

The bigger picture of research

Create a free account to save this plugin.

From the developer

Cost & access

Pendar sells nothing inside ChatGPT. Each tool call uses credits from the user's Pendar account; new accounts start with free credits, and further credits are bought on pendar.ai.

Declared limitations

  • Explain how a method works. No lookup is needed.
  • Reformat a reference into a citation style. The task is formatting, not checking the citation.
  • Draft a cover letter. The task is writing, not a literature lookup.

Not specified in the available declarations: capabilities.

Onboarding example

Where does my research stand in its field, and which growing areas nearby am I missing?
Sources & dates

Developer declarations; not independently tested. Listing last checked Nov 12, 2026. Package observed Nov 11, 2026.

View package source →

Description

From the marketplace listing

Go beyond finding papers. Discover how research fields are structured, how ideas connect, and where science is heading. Pendar helps you explore and analyze scientific research using evidence from the published literature—not guesses or generic AI summaries. Understand your research. Tell Pendar the name you publish under and uncover promising areas you haven't explored yet. Discover your main research themes, see how they are evolving and identify the fields building on your work. Explore a research field. See how a field is organized into different themes, how those themes connect to neighboring disciplines, and which areas are growing or gaining momentum. Measure the size and direction of a field. Find out how many papers have been published, whether research activity is growing or declining, which subfields are advancing fastest, who funds the work, and which papers are worth reading first. Trace the influence of a paper. See which research areas have built on a publication, how its ideas have spread, and whether its citation activity is increasing over time. Discover journals and researchers. Find journals publishing in a particular research area and explore the work of colleagues, potential collaborators, or prospective advisors. Verify your references. Paste a bibliography to check each reference against the published record. Identify incorrect citations and retracted papers. Pendar verifies the references you provide rather than silently substituting similar-looking publications. Designed for graduate students, postdocs, professors, and researchers planning their next paper, grant, collaboration, or career move. Grounded in published research. Figures are counted across the indexed literature rather than estimated from a small sample. Explore more at pendar.ai, including deep research and comprehensive research analysis.

Language: English · Automatically detected from descriptions.

Matches for “map”

Exact text from the indicated source. A mention alone does not establish support for your task.

No matching text in the current listing or research.

What changed

· 6 observations

Capabilities & instructions

Full description changed from “cited papers actually exist, are described correctly, and have not been retracted. Use when the user pastes a bibliography, reference list, or citations from...” to “a cited paper actually exists, is described correctly, and has not been retracted. Use when the user asks whether a...

View comparison →
Pricing references

Full description changed from “Trace who has built on a specific paper — whether its citations are accelerating or fading, which research fields picked it up, whether universities or...” to “Measure a paper's scholarly impact — whether its citations are accelerating or fading, which research fields adopted it, and...

View comparison →
Pricing references

Full description changed from “and disciplines it divides into, which countries and institutions produce” to “are growing fastest, which disciplines, countries, and sectors produce it, who funds”. Supporting files updated; open the comparison for details. Skill instructions changed from “and disciplines it divides...

View comparison →
Capabilities & instructions

App-6a8399a0bccc819185d57048383c915c updated; open the comparison for details. Pendar updated; open the comparison for details. Full description changed from “Pendar gives you the shape of a research field, not a summary of it. Point it at a topic and it reports how many papers exist, whether output is growing...

View comparison →
Capabilities & instructions

App-6a8399a0bccc819185d57048383c915c updated; open the comparison for details. Pendar updated; open the comparison for details. Full description changed from “Pendar gives you the shape of a research field, not a summary of it. Point it at a topic and it reports how many papers exist, whether output is growing...

View comparison →

Technical updates · 1

Package or technical metadata updated

View technical comparison →

Files & skills

File archives

Plugin package28 files · 307 KBBrowse files →
Skill instructions
audit-a-bibliography4.17 KB

View saved version →

---
name: audit-a-bibliography
description: Check a whole reference list in one pass — which entries are real, which are retracted, which are ambiguous, and which cannot be confirmed. Use when the user pastes a bibliography, a reference list from a draft or a published paper, or a set of sources from an AI-generated answer and wants them checked before relying on them.
metadata:
  short-description: Check every reference in a list at once
---

# Audit a bibliography

Check every entry of a reference list against the published record in one call.
`audit_bibliography` takes up to 25 citations and returns a verdict for each, in
the order given, plus a tally.

An entry that cannot be confirmed is reported as unconfirmed. Never substitute
the closest real paper, and never supply a missing title, page, year, venue, or
DOI from memory — that is how fabricated references end up looking real.

## Quick start

1. Split the list into individual references, one string each. Keep each
   reference exactly as written, in whatever style it uses (author-year, numbered
   physics style, quoted titles). Abbreviated journal references such as
   `Phys. Rev. Lett. 103, 086001 (2009)`, DOIs, and arXiv or PubMed IDs are all
   supported and should not be expanded first.
2. Set `context`:
   - `draft` — the user's own manuscript, or sources from an AI answer.
   - `published` — the reference list of a paper that is already published.
3. Call `audit_bibliography` with up to 25 references. For a longer list, send
   the next 25 in a second call.
4. If any entries come back `not_checked`, call again with only those entries.

## Reading the result

Each entry in `entries` has a `verdict`:

- `verified` — the paper exists and matches. `resolved_by` says how (`doi`,
  `paper_id`, `title_search`, or `biblio` for an abbreviated reference matched on
  its journal locator). All of these are verifications. Quote the canonical title
  from `paper.title`. When `match_confidence` is below 0.8, show the canonical
  title next to the reference as written so the user can confirm it is the same
  paper. `matched_on_fields` lists what agreed with the record; `first_author`
  there means the cited author settled a choice between papers sharing a title.
- `retracted` — the paper exists and is retracted. Lead with that.
- `ambiguous` — several papers match about equally. List the `candidates` and
  ask which was meant.
- `metadata_mismatch` — a paper matches part of the citation, but a detail
  disagrees with the record. Two forms:
  - with `paper` — the paper exists and was found at the cited journal, volume
    and page, by the cited first author, but the cited title differs. `reason`
    quotes the record's title; report the published title as the fix.
  - without `paper` — the year, first author or journal disagrees. Show both,
    and the `candidates` when present.
- `not_found` — nothing in the index matches. Quote `reason`.
- `not_checked` — not a verdict. Either the call ran out of time before reaching
  this entry, or the paper index did not respond for it ("The lookup failed").
  It was not charged; send it again in a second call.

`tally` counts each verdict. `notes` carries caveats; repeat the ones that bear on
what you claim.

## Never

- Fill in or correct a reference from memory. If an entry is `not_found`, the
  answer is that it could not be confirmed.
- Treat `not_found` as proof of fabrication. It is strong evidence for a
  mainstream journal article and weak evidence for a book, chapter, thesis,
  report, or very recent preprint. Say which case the entry looks like.
- Report `not_checked` entries as missing.

## Reporting

1. A table or list in the user's order: the reference as given, the verdict, and
   for verified entries the canonical title, year, venue, and DOI.
2. The tally.
3. For `draft`: say that retracted, mismatched, and unconfirmed references need
   attention before submission. For `published`: say that unconfirmed lines could
   not be 

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 2 — file references are metadata, not package contents.

choose-a-venue2.94 KB

View saved version →

---
name: choose-a-venue
description: Find the journals and venues that actually publish a topic — ranked by how much of the literature they carry, whether that share is growing, and facts about each venue such as open access, publication fees, and citation statistics. Use when the user asks where work on a topic gets published, which journals to consider for a paper, or which open-access venues cover a subject.
metadata:
  short-description: Find the venues that publish a topic
---

# Choose a venue

Show where the literature on a topic is published. `find_venues` counts every
paper matching the topic by venue, so the ranking reflects what each journal
actually publishes rather than its reputation.

This informs a choice; it does not make it. Report facts about each venue and
leave the judgement to the user.

## Quick start

1. Reduce the user's topic to a **short noun phrase of two to six words**, as for
   `survey-a-research-field`.
2. Call `find_venues` once. Add `year_from` if the user cares only about recent
   publishing.
3. Filter the returned venues by what the user asked for — open access, fee
   ceiling, excluding preprint servers — using the fields below.

## Reading the result

Each entry in `venues`:

- `papers` and `share_pct` — how much of the topic's literature appears there.
- `recent_papers`, `prior_papers`, `trend` — whether the venue is publishing more
  or less on the topic than three years earlier.
- `venue_type` — `journal`, `repository`, `conference`, and so on. Repositories
  and preprint servers are not peer-reviewed venues; say so if one ranks high.
- `is_oa`, `is_in_doaj`, `apc_usd` — whether the venue is fully open access,
  whether it is listed in the open-access journal directory, and its listed
  article processing charge in US dollars, when known.
- `publisher`, `issn` — identifying facts.
- `mean_citedness_2yr` and `h_index` — citation statistics for the venue as a
  whole. `mean_citedness_2yr` is the average citations per paper over two years.
  It is **not** the Journal Impact Factor; never call it that.

`notes` carries caveats about the corpus and the venue data; repeat the relevant
ones.

## Never

- Call any number here an impact factor, or rank venues by prestige.
- Call a venue predatory or low quality. If `is_in_doaj` is false for an
  open-access journal, report that fact and let the user weigh it.
- Predict acceptance chances or review times — the result says nothing about
  either.
- Add venues from memory that are not in the result.

## Reporting

1. The corpus size behind the ranking, and what it was matched on.
2. The top venues with papers, share, and trend.
3. The facts relevant to the user's constraints — open access, fees, peer review.
4. Caveats from `notes`.

## Related workflows

- To size the field itself, use `survey-a-research-field`.
- To see the neighbouring fields around the topic, use `map-a-field`.
- To check references before submitting, use `audit-a-bibliography`.

Referenced files: 2 — file references are metadata, not package contents.

map-a-field4.43 KB

View saved version →

---
name: map-a-field
description: Map the themes a research field is made of and the neighbouring fields around it — which neighbours are growing, which the field is moving toward, and which are fading. Use when the user asks which fields are adjacent to a topic, where a field is heading, which nearby areas are growing, or wants to explore around a theme from an earlier map.
metadata:
  short-description: Map a field's themes and its growing neighbours
---

# Map a field

Show what a research field is made of and what lies around it. `field_map` finds
the core themes of a topic, then the neighbouring themes that share papers with
them, and says for each whether it is growing, fading, or one the field is moving
toward. Every theme comes with a position to plot it at.

After the first step the field is its core themes, not the phrase the user typed,
so the map holds up even when the wording is loose.

## Quick start

1. Give exactly one of:
   - `topic` — a **short noun phrase of two to six words**, as for a survey:
     "Which fields are next to solid-state battery electrolytes?" becomes
     `solid state battery electrolytes`;
   - `theme_id` — a theme from an earlier `my_position` or `field_map` result, to
     explore around it.
2. Call `field_map` once.
3. Read `field.core_coverage_pct` before describing the field (see below).
4. Draw the map when you can (see Drawing), then report.

## Reading the result

- `field` — what was searched (`searched_for`, `matched_on`), how many papers
  matched (`corpus_papers`), and `core_coverage_pct`: the share of those papers
  the core themes cover. Low coverage means the phrase spans several fields; say
  so, and offer to map a narrower phrase or one of the core themes.
- `themes[].role` — `core` (the field itself) or `neighbour`.
- `themes[].status`:
  - `core` — a core theme. A `slowing` tag means it is declining.
  - `converging` — a close neighbour that is growing and taking a larger share of
    the field's papers: the field is moving toward it.
  - `growing_neighbour` — a neighbour with `accelerating` momentum.
  - `fading_neighbour` — a neighbour with `declining` momentum.
  - `neighbour` — everything else.
- `share_of_field_pct` — for a core theme, its share of the field's papers; for a
  neighbour, the share of core papers also tagged with it.
  `prior_share_of_field_pct` is the same for the earlier window.
- `drift` — `gaining`, `losing`, `steady` or `new`: whether the field's papers are
  moving toward a neighbour, between the two windows of `segment_window`.
- `similar`, `momentum`, `momentum_vs_area` and `why` read as in
  `map-my-research`: `similar` means "tagged on the same papers", `unknown`
  momentum means too few papers to say, and `why` is the rule and its numbers in
  words.
- `areas` — the surrounding areas, how many themes each holds, and how many of
  those are growing.
- `links` — from each neighbour's closest core theme; `strength` repeats
  `similar`.
- `notes` — caveats; repeat the ones that bear on what you say.

## Drawing

Draw the map by default when you can: an artifact or code in Claude, the Python
tool in ChatGPT. When you cannot draw, give a table instead.

- **Position:** the given `x` and `y`. Never recompute or move a theme.
- **Bubble size:** `papers_recent`, on a log scale.
- **Fill:** `momentum` in three steps (accelerating, steady, declining); grey for
  `unknown` and `too_new`.
- **Outline:** thick for `core`, dashed for `converging`.
- **Sticks:** `links`, thicker for a higher `strength`.
- **Labels:** core and converging themes only; list the rest in a legend or table.

Never draw a value that is not in the response.

## Reporting

1. **What the field is made of** — the core themes, their shares and momentum,
   and the coverage.
2. **Where it is heading** — the `converging` neighbours, each with its `why`.
3. **Other growing neighbours.**
4. **Fading neighbours.**
5. **The areas around it** — from `areas`.
6. **Caveats** — from `notes`.

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 2 — file references are metadata, not package contents.

map-my-research5.53 KB

View saved version →

---
name: map-my-research
description: Show where a researcher's published work sits among the themes around it — their home themes and whether those are growing, which fields build on their work, close and growing themes they have not published in (blind spots), and nearby areas they could contribute to. Use when the user asks where their research stands, what they might be missing, which growing areas are close to their work, or how their work connects to other fields.
metadata:
  short-description: Map where your research stands and its blind spots
---

# Map my research

Place a researcher's published work on a map of the themes around it.
`my_position` returns every theme near their work with a status (home, blind
spot, audience, and so on), the counts behind that status, whether the theme is
growing, and a position to plot it at. The answer is a picture of where the work
stands, drawn from the published record.

The blind spots are usually what the user came for: close, growing themes where
they have not published. Present them as a description of the landscape, never
as advice on what to work on next.

## Quick start

1. Ask for the name they publish under **and** their institution, or an ORCID.
   A name alone often matches several people.
2. Call `my_position` once.
3. If `found` is false and `candidates` came back, list them — name,
   affiliation, main topic, number of works — and ask which one is right. Never
   pick one silently. Then call again with the chosen `author_id`.
4. If the user says their work is split across records (another spelling, a
   former name), pass the other records' ids from `candidates` as
   `extra_author_ids`.
5. Draw the map when you can (see Drawing), then report.

## Reading the result

- `researcher` — the record that was mapped: name, current affiliations, how many
  papers were placed (`placed_papers`, since `placed_since`), and how many records
  were merged. Say which record you mapped.
- `themes[].status`:
  - `home` — where they publish most. A `slowing` tag means the theme itself is
    declining, not their work.
  - `secondary` — a smaller theme they publish in regularly.
  - `blind_spot` — close to their home themes, growing, and they have at most one
    paper there and few citation links either way.
  - `under_connected` — very close but not growing, with no papers there.
  - `audience` — they do not publish there, but papers there cite their work.
  - `draws_on` — their papers cite work there, but they do not publish there.
  - `other` — everything else on the map.
- `why` — the rule and its numbers in words. Quote it rather than restating the
  numbers yourself.
- `similar` (`low` / `medium` / `high`) — how often the theme is tagged on the same
  papers as their home themes. It means "tagged together", not "the same subject".
- `your_link` — a personal measure: how much citing runs between their papers and
  the theme, for its size. It is about this researcher, not about how the two
  fields relate.
- `momentum` — `accelerating`, `steady` or `declining` over `segment_window`;
  `too_new` means not enough history and `unknown` means too few papers to say.
  `momentum_vs_area` says whether the theme grows `faster` or `slower` than its
  own area.
- `yours`, `yours_recent`, `cites_you`, `you_cite` — their papers in the theme,
  citing papers from it, and papers in it they cite.
- `reach` — how many papers cite their work (`citing_papers`, since `since`), the
  share from outside their home areas (`outside_home_areas_pct`), and the areas
  citing them most (`top_citing_areas`).
- `notes` — caveats. Repeat the ones that bear on what you say: themes are broad,
  automatically assigned tags; blind spots are not advice; an author record can
  merge two people or split one.

## Drawing

Draw the map by default when you can: an artifact or code in Claude, the Python
tool in ChatGPT. When you cannot draw, give a table instead.

- **Position:** the given `x` and `y`. Never recompute 

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 2 — file references are metadata, not package contents.

profile-a-researcher3.94 KB

View saved version →

---
name: profile-a-researcher
description: Summarise a researcher's published work from the public publication record — what they publish on, how their topics have shifted, where they publish, their output and citations over time, and their frequent co-authors. Use when the user asks what a named researcher works on, how their research focus has changed, or wants an overview of someone's publications before reading or citing their work — a collaborator, a reviewer, or a prospective advisor. For the user's own work and where it stands among the themes around it, use map-my-research instead.
metadata:
  short-description: Summarise a researcher's published work
---

# Profile a researcher

Describe a researcher's published work using only the public publication record.
`profile_researcher` resolves a name, ORCID, or author id to one author record
and returns counts over everything that author has published.

This is about the work, not the person. Report what the publication record
shows; do not add biographical details, personal characteristics, or opinions
about the researcher.

Use it for **another** researcher: a possible collaborator, a reviewer, a
prospective advisor. When the user asks about their own work, where it stands,
or what they might be missing, use `map-my-research`, which places the work among
the themes around it.

## Quick start

1. Call `profile_researcher` with the name as the user gave it. Add
   `institution` when the user mentioned one — it is the most reliable way to
   pick the right person among namesakes. An ORCID resolves exactly.
2. If `found` is false and `candidates` is non-empty, list them with their
   affiliation, main topic, and number of works, and ask which one was meant.
   Never pick one silently.
3. If `found` is false and there are no candidates, say the researcher could not
   be found and quote `reason`.

## Reading the result

- `profile.topics` — what the researcher publishes on, with `recent_papers`,
  `prior_papers`, and a `trend` per topic over the windows named in
  `profile.segment_window`. Topics that are `accelerating` or `too_new` (present
  only in the recent window) show where their work is heading; that answers
  "has their focus shifted". `unknown` means too few papers in both windows to
  call a trend — often a topic they worked on earlier in their career.
- `profile.output_by_year` — papers and citations per year.
- `profile.venues` — where they publish most.
- `profile.affiliations` — institutions on their papers, with the years each
  appears. Affiliation data comes from paper metadata and can lag real moves.
- `profile.top_coauthors` — the authors they share the most papers with.
- `profile.h_index`, `profile.i10_index`, `profile.works_count`,
  `profile.cited_by_count` — standard counts. Author records are assembled
  automatically and can merge two people with the same name or split one person
  into several records; `notes` flags when that looks likely.

## Never

- Rank, rate, or judge a researcher, or compare people by h-index. The counts
  depend on field, career length, and record quality.
- Add contact details, personal information, or anything not in the result.
- Infer someone's opinions, plans, or current employment from their papers.
- Present a candidate as the requested person without the user confirming it.

## Reporting

1. **Who** — the resolved name, current affiliation as recorded, and ORCID if
   present.
2. **What they work on** — the main topics, and which are growing.
3. **Output** — papers and citations over time, and where they publish.
4. **Collaboration** — frequent co-authors.
5. **Caveats** — anything in `notes` about record quality.

## Related workflows

- To place the user's own work among the themes around it, use
  `map-my-research`.
- To map the field around this researcher's work, use `map-a-field`.
- To see the field around their work, use `survey-a-research-field`.
- To look at one of their papers in depth, use `trace-citation-

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 2 — file references are metadata, not package contents.

survey-a-research-field7.52 KB

View saved version →

---
name: survey-a-research-field
description: Size and characterise a research area from exact publication counts — how many papers exist, whether output is growing or fading, which sub-areas are growing fastest, which disciplines, countries, and sectors produce it, who funds it, where it is published, and what to read first. Use when the user asks how large, how active, or how crowded a field is, wants an overview of a topic's literature, or is deciding whether to enter an area.
metadata:
  short-description: Measure a research field by exact publication counts
---

# Survey a research field

Describe a body of literature by counting it. `survey_literature` returns exact
counts over every paper matching the topic — not a sample — so the answer can
state how many papers exist, how that number moved year by year, and who
produced them.

The counts are the substance here. A list of relevant papers comes back too, but
it is the smaller half of the answer, and leading with it wastes what the tool is
for.

## Quick start

1. Reduce the user's question to a **short noun phrase of two to six words**.
   "How much work has been done on solid-state electrolytes for lithium metal
   batteries?" becomes `solid state electrolytes lithium metal`.
2. Call `survey_literature` once. Add `year_from` or `year_to` only if the user
   asked about a period.
3. Read `corpus.total_papers` together with `corpus.matched_on` before saying
   anything about size — the second changes what the first means.
4. Lead with size and trend, then composition, then the reading list.
5. Repeat every caveat in `notes` that bears on what you claim.

## Choosing the query

The search requires **every** word to appear, so each extra word shrinks the
corpus, and question words are stripped before searching.

- Drop question framing, verbs, and articles: keep the subject.
- Keep the phrase specific enough to mean one field and no more.
- If `total_papers` is 0 or in the low single digits, the terms were too narrow.
  Retry once with the two or three most central words, and tell the user you
  broadened it and to what.
- If the number looks implausibly large for the subject, the terms were too
  generic. Retry with the distinguishing term restored.

Never present a retry as a different question. State which phrase produced the
numbers you are reporting; `corpus.searched_for` shows what was actually
searched after stripping.

When the question is how big a field is, one phrasing gives one count, and a
field rarely has one name. Try two or three common phrasings and report the
range, with the phrase behind each number.

## Reading the result

- `corpus.total_papers` with `corpus.matched_on`:
  - `title_and_abstract` — a conservative count. Papers that mention the topic
    only in passing are excluded.
  - `full_text` — too few papers had the topic in title or abstract, so the
    corpus was widened to anything whose full text mentions it. Report the total
    as an **upper bound**, because passing mentions are now included.
- `corpus.trend` — `interpretation` is already written from the exact per-year
  counts; use it rather than recomputing a trend from `papers_by_year`. Treat
  `too_new` as insufficient history, not as a lack of growth. `unknown` means too
  few papers, or a year range too short, to call a direction; quote the
  interpretation rather than guessing one. The current year is partial, so never
  describe a field as declining on the strength of the latest bar alone.
- `corpus.topics` versus `corpus.disciplines` — topics are the **sub-areas the
  work divides into**; disciplines are the **fields whose researchers produce
  it**. Keep them apart. A topic list answers "what is this field about", and a
  discipline list answers "which disciplines work on it". Sub-area labels are
  tags assigned automatically, so read them as broad pointers, not exact fields.
- Segment trends — `topics`, `disciplines`, and `venues` segments carry
  `recent_papers` (last three co

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 2 — file references are metadata, not package contents.

trace-citation-impact6.36 KB

View saved version →

---
name: trace-citation-impact
description: Measure a paper's scholarly impact — whether its citations are accelerating or fading, which research fields adopted it, and what kinds of institutions cite it. Use when the user asks how influential a paper is, whether it is still relevant, where a method spread, or what it was built on.
metadata:
  short-description: Measure a paper's impact and where it spread
---

# Trace citation impact

Take one paper and report how the literature has used it: the per-year citation
history, the research fields of the citing papers, the kinds of institution the
citing papers come from, and how that mix is shifting. `graph_hopper` resolves
the paper, looks one step forward to the papers citing it and one step back to
its references, and returns exact counts over the whole citing set.

The value is in the composition of the citing literature, not the total. A
citation count is available anywhere; the mix of fields and institution types is
what shows whether a method travelled beyond its home field. Describe the result
as how one paper connects to the field around it: which areas picked it up, and
which it was built on.

## Quick start

1. Call `graph_hopper` with the paper as a DOI, title, or full citation string.
   A `paper_id` from an earlier Pendar result also works and resolves exactly.
2. Leave `direction` as `both` unless the user asked only about influence
   (`forward`) or only about foundations (`backward`).
3. Keep `papers_per_direction` small — 10 is usually enough. The breakdowns
   already cover every citing paper.
4. Set `include_graph: true` **only** when the user wants a diagram of the
   neighbourhood. It is large and adds nothing the breakdowns do not cover.

If `found` is false, present `candidates` and ask which paper was meant. Do not
analyse a paper the user did not ask about.

## Reading the result

- `momentum.trend` is one of `accelerating`, `steady`, `declining`, `too_new`,
  `unreliable`, or `unknown`.
  - **`unreliable` means report no trend at all.** The paper's per-year history
    contradicts itself, which happens when duplicate records of one paper are
    merged or split. Say the citation record appears damaged and a trend cannot
    be read from it. Do not describe such a paper as declining.
  - `too_new` means too little history, not lack of impact.
  - Use `momentum.interpretation` as written. `recent_3y_citations` against
    `prior_3y_citations` is the evidence behind it.
- `breakdowns_exact` — when true, `field_mix`, `institution_mix`,
  `top_citing_venues`, `citing_work_types`, and `citing_funders` are counted over
  all `citing_papers_total` citing papers, not a sample. When false, they cover
  `citer_sample_size` papers; say so whenever you quote a percentage.
- `field_mix` — the research areas of the citing papers, from a standard
  discipline taxonomy. Name both `subfield` and `field`. Subfields far from the
  paper's own are where the work crossed over. Do not reduce this to a single
  "interdisciplinarity" figure; field boundaries are administrative.
- `field_drift` — each subfield's share of the citing papers in the last three
  complete years against the three before (`drift_window` names the years),
  with a `share_trend` of `gaining`, `steady`, `losing`, or `new`. This is where
  the paper is being picked up now, as opposed to where it was picked up first.
  All `steady` is a finding too: the audience has not shifted.
- `institution_mix` — the share of citing papers with at least one author at a
  university, company, hospital, government lab, and so on. Shares overlap,
  because one paper can have authors in several sectors. A company or hospital
  share is the signal that research moved into practice.
- `citing_work_types` — articles, preprints, reviews, and so on. A large preprint
  share means the uptake is recent and not yet peer reviewed.
- `citing_funders` — funders acknowledged by the citing papers. Only papers that
  report funding are c

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 2 — file references are metadata, not package contents.

verify-citations5.37 KB

View saved version →

---
name: verify-citations
description: Check whether a cited paper actually exists, is described correctly, and has not been retracted. Use when the user asks whether a specific paper is real, pastes one or two references, or wants a citation from an AI-generated answer checked before relying on it. For a whole reference list, use audit-a-bibliography.
metadata:
  short-description: Confirm a paper exists, matches its citation, and is not retracted
---

# Verify citations

Confirm a cited paper exists in the published record, that the citation
describes it accurately, and that it has not been retracted.

A citation that cannot be found is the finding. Report it as unverified and stop
there — never substitute the closest real paper, and never supply a title, page,
year, venue, or DOI from memory. A confidently wrong reference is worse than an
acknowledged gap.

Check the citation even when the paper is familiar. The user is asking what the
record says, and a well-known paper can still be cited with the wrong year,
venue, or authors, or have been retracted since.

## Quick start

1. One `verify_paper` call per citation. For more than two or three, use
   `audit_bibliography` instead (see `audit-a-bibliography`).
2. Pass whatever the user gave, exactly as written: a DOI, an arXiv or PubMed ID,
   a bare title, a full citation string in any common style, or a journal-style
   abbreviated reference such as
   `E. Brown and H. M. Jaeger, Phys. Rev. Lett. 103, 086001 (2009).` Do not tidy
   it up first; a `paper_id` from an earlier Pendar result also resolves exactly.
3. Classify the result — verified, ambiguous, retracted, mismatch, or not found —
   using the rules below.
4. If the call returns an error saying the paper index did not respond, the
   citation was **not checked**. Try once more; if it fails again, say it could
   not be checked right now. Never report it as not found.

## Reading the result

- `found: true` — verified, unless `metadata_mismatch` is also true (below).
  `resolved_by` says how:
  - `doi`, `paper_id` or `pmid` — exact identifier match. An arXiv ID resolves
    as `doi`.
  - `title_search` — the title matched; check `match_confidence`.
  - `biblio` — an abbreviated reference with no title, matched on its journal
    locator. `matched_on_fields` lists what agreed (year, volume, page, first
    author or journal). This is a full verification. The canonical title is the
    one in `paper.title`; quote that, not a title recalled from memory.
- `found: true` with `metadata_mismatch: true` — the paper exists, but the cited
  title differs from the record: found at the journal, volume and page given, by
  the cited first author. `reason` quotes the record's title. Report it as a
  citation to correct, with the published title.
- `match_confidence` below about 0.8 — uncertain even though a paper came back.
  Show the resolved `title`, `year`, and `authors` next to what the user wrote.
- `candidates` non-empty — too ambiguous to resolve. List the candidates with
  year, venue, and author, and ask which one was meant.
- `found: false` — quote `reason`. Do not offer a different paper as though it
  were the one cited, and do not fill in missing details yourself.
- `retraction_warning` non-empty, or `paper.is_retracted: true` — lead with the
  retraction and advise against citing it as standing evidence.
- `paper.work_type` of `preprint` — flag that it has not been peer reviewed.
- `is_paratext: true` — the record is an erratum, correction notice, or similar,
  not the research article itself. Say so.
- `venue` — facts about the journal: whether it is open access, listed in the
  open-access journal directory, and has an ISSN and a publisher. Report these as
  facts. Do not call a journal predatory or low quality.
- `paper.impact_percentile` — where the paper's citation count sits among papers
  published the same year. Say "among papers from the same year".
- Metadata that disagrees with the citation — a different

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 2 — file references are metadata, not package contents.

Release notes

4.0.0 maps research. Two new tools: my_position places a researcher's published work among the themes around it, with home themes and their momentum, who builds on the work, and blind spots (close, growing themes they have not published in); field_map maps a field's core themes and its neighbours, with which are growing and which the field is moving toward. Two new skills, map-my-research and map-a-field, read and draw these maps. Citation checking stays: verify_paper and audit_bibliography read more citation styles, accept arXiv and PubMed IDs, report a cited title that differs from the published one, and say when a lookup could not be completed instead of calling a paper missing.

Declared in the saved package. Remote tools may change independently.

Package details

Publisher declarations from the archived package. These are separate from our research and the live service's terms.

Package author
Pendarlabs
Commerce declaration
Does not support commerceThis does not establish whether access is free or paid.
Review scenarios
5 positive · 3 negativeScenario counts, not test results.

Package observed Nov 11, 2026.

Technical details
First seen
Sep 30, 2026 · 22:02 UTC
Last seen
Nov 12, 2026 · 12:00 UTC
Latest observed change
Nov 9, 2026 · 00:17 UTC
Collection status
Collected

plugin_asdk_app_6a8399a0bccc819185d57048383c915c

Download plugin data (JSON)

Plugin details: freshly prepared. Prepared . Refreshed when plugin data changes or after 6 hours. Your account and Follow status are live.