Skip to main content
Glama

Phở Research Tools

Format citations

format_citations
Read-onlyIdempotent

Format references in a citation style (APA 7, MLA 9, Chicago author-date, Harvard, Vancouver, IEEE, AMA) or export them as BibTeX, RIS or CSL-JSON. By default every reference is first verified against Crossref, PubMed and OpenAlex, and verified references are formatted from the database record, so wrong years, pages or author names in the input are corrected. References that could not be verified are formatted exactly as written and flagged in entries[].warnings. Returns the bibliography and, for text and html output, the matching in-text citation for each reference.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
styleNoCitation style: apa (APA 7), mla (MLA 9), chicago (Chicago author-date), harvard (Harvard), vancouver (Vancouver), ieee (IEEE), ama (AMA). Ignored for bibtex/ris/csl-json output.apa
outputNotext (plain bibliography), html, bibtex, ris or csl-json.text
verifyNoVerify each reference before formatting (recommended). When false, references are formatted exactly as given, without corrections.
referencesYesReferences in any form: a pasted list in any style, BibTeX, RIS, CSL-JSON, or DOIs one per line.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
quotaNo
styleYes
outputYes
contentYes
entriesYes
warningsYes
style_titleYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / verify / description
      Previous value: -"Verify each reference before formatting (recommended). Set false only for references already verified in this conversation; they are then formatted exactly as given."New value: +"Verify each reference before formatting (recommended). When false, references are formatted exactly as given, without corrections."
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the readOnly/idempotent/openWorld annotations: it discloses external lookups, that verified records override the user's input (correcting wrong years/pages/authors), and that unverified references are flagged in entries[].warnings. These are exactly the non-obvious traits an agent needs before calling.

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?

Three dense sentences that are front-loaded with capability, then default behavior, then return shape. Every sentence carries information, though the style list is long enough to make the opening slightly heavy.

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?

Given an output schema exists, the description need not restate return values, yet it usefully highlights the warnings field and the in-text citations returned for text/html. Combined with 100% schema coverage and annotations, nothing an agent needs to call correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning: the style names map to specific style editions, output formats are enumerated, and it notes style is ignored for bibtex/ris/csl-json. That said, the verify parameter's semantics are already fully documented in the schema, so gains are incremental.

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 specific verb (format) plus resource (references) and enumerates both the supported styles and export formats, so the agent knows exactly what it produces. It is clearly distinguishable from siblings like verify_references and search_papers.

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?

Explains the default behavior (verification against Crossref/PubMed/OpenAlex) and that verify=false formats input verbatim, which is clear guidance on when to use which mode. It stops short of explicitly routing the agent to sibling tools such as verify_references for a verification-only workflow.

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.

Resources