Skip to main content
Glama
amos689

paper-preflight

Get verified BibTeX

preflight_bib_lookup
Read-onlyIdempotent

Look up BibTeX entries for DOIs, arXiv IDs, or titles from registry records, not memory, to ensure references exist and metadata matches.

Instructions

Get a BibTeX entry for a DOI, an arXiv ID or a title, built from the registry record instead of written from memory. Give identifier, or title (with author and year when you know them).

status is "found" (use bibtex as is), "ambiguous" (several works match: pick from candidates with the user, or retry with author/year), "not_found" (ask the user for the source; do not invent one) or "unavailable" (a source did not answer; retry later). A published preprint comes back as its published version with the eprint kept; status_flags lists notices such as "retracted".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
yearNo
titleNo
authorNo
preferNopublished
offlineNo
identifierNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/openWorld, but the description goes well beyond them: it enumerates the four status values with their meanings, warns that a published preprint resolves to the published version with the eprint retained, and notes that status_flags can carry notices such as 'retracted'. These are exactly the edge behaviors an agent needs and cannot get from structured fields.

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 core action and how to invoke it, then groups the outcome semantics into one tight paragraph. Dense but every clause carries information; no filler sentences.

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

Completeness4/5

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

Given an output schema exists, status/candidates/status_flags need not be re-explained, yet the description does so helpfully for the retraction and preprint-versioning cases. The only real omission is guidance on `prefer` and `offline`, which leaves an agent guessing about preprint preference and offline behavior.

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 0%, so the description must carry the full burden. It explains identifier, title, author, and year, but leaves `prefer` (published/preprint enum) and `offline` entirely unaddressed, so two of six parameters remain opaque. Partial compensation only.

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 concrete verb (get a BibTeX entry) and scope (for a DOI, arXiv ID, or title) and emphasizes it is built from the registry record rather than from memory. This is distinctive against siblings like preflight_bib_fix, which implies fixing an existing entry, so an agent can pick this one for retrieval.

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

Usage Guidelines4/5

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

Gives clear invocation guidance ('Give `identifier`, or `title` (with `author` and `year` when you know them)') and prescribes the action for each outcome: use bibtex when found, disambiguate with the user or retry with author/year, and explicitly not to invent a source on not_found. It does not name sibling tools as alternatives, so it falls short of the full 5.

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