Skip to main content
Glama

Audit a .bib file

audit_bib
Read-onlyIdempotent

Audit a BibTeX (.bib) file: check every entry against Crossref, PubMed and OpenAlex, including retractions, and report the result per citation key. Each key gets one status: verified, verified_with_corrections (real paper, some fields wrong), likely_fabricated, not_found (could not be confirmed either way), retracted, or ambiguous. Also reports duplicate citation keys and the same DOI under two keys. Returns corrected_bib: the same file with confirmed field corrections applied and a % audit_bib comment above every entry that was not verified cleanly; keys and fields that were not wrong are left exactly as written, and an entry that could not be confirmed is never rewritten. At most 50 entries per call.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "bib": "<bib>"
    },
    "name": "audit_bib"
  }
}

Input Schema

NameRequiredDescriptionDefault
bibYesThe contents of the .bib file (BibTeX or BibLaTeX).

Output Schema

NameRequiredDescriptionDefault
quotaYes
entriesYes
skippedYesEntries with no citation key, which were not checked.
summaryYes
checked_atYes
corrected_bibYes
duplicate_doisYesA DOI cited under more than one key.
duplicate_keysYesCitation keys used by more than one entry.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior5/5

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

Annotations only declare read-only, idempotent, open-world behavior; the description adds real substance beyond that: the exact status vocabulary, duplicate-key and duplicate-DOI detection, retraction checking, and precise rules about what corrected_bib does and does not rewrite. The openWorldHint is also corroborated by the named external sources (Crossref, PubMed, OpenAlex).

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?

The paragraph is front-loaded with purpose, then status semantics, then output behavior, then the size cap, and every sentence adds usable information. The status enumeration is long but each value disambiguates a distinct outcome, so it is not padding.

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 one-input audit tool with an output schema and full annotations, the description covers the missing pieces an agent needs: the outcome vocabulary, what corrected_bib contains, the non-destructive rewrite guarantee, and the 50-entry limit that could otherwise cause silent failure.

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?

There is only one parameter and the schema documents it fully at 100% coverage, including length bounds, so the schema carries the load. The description adds no format or content guidance for the bib string beyond what the schema's 'contents of the .bib file (BibTeX or BibLaTeX)' already says.

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?

The description opens with a specific verb and resource ('Audit a BibTeX (.bib) file') and immediately enumerates the sources checked and the per-key status taxonomy, which is enough to distinguish it from siblings like verify_references and check_retractions without opening their schemas.

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?

Usage is implied by the batch framing ('check every entry') and bounded by 'At most 50 entries per call', but the description never names alternatives or states when to prefer this over single-reference verification tools. An agent must infer the division of labor from the sibling names alone.

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.