Skip to main content
Glama
Cairnstew

paper-handler-mcp

by Cairnstew

paper_research_import

Scaffold a new paper from a researcher-python handoff bundle, wire its bibliographies, and preserve any manual references.bib file.

Instructions

Scaffold a paper from a researcher-python handoff bundle and wire its bibliographies. The manual references.bib is never overwritten.

Input Schema

NameRequiredDescriptionDefault
nameYesnew paper name
forceNo
titleNo
engineNo
handoffYesbundle directory or handoff.json
templateNoresearch-article

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It does add one genuinely useful safety fact — 'The manual references.bib is never overwritten' — which tells the agent the manual bibliography is preserved. But it omits what happens when the target paper already exists, what force actually does, whether other files can be clobbered, and what the tool returns, which are material gaps for a scaffolding/write operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the primary action, and the safety constraint is placed immediately after. Every sentence earns its place with no boilerplate.

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

Completeness2/5

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

A six-parameter, non-annotated, no-output-schema tool that scaffolds a project and mutates bibliographies needs more than two sentences. Missing is any account of the force/overwrite semantics, engine/template behavior, what the handoff bundle contains, what files are created, and how it relates to paper_new or paper_bib_init. The one safety note is not enough to make the definition callable with confidence.

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

Parameters2/5

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

Schema description coverage is only 33%: name and handoff have brief descriptions, while force, title, engine, and template are undocumented in both schema and description. The description adds no parameter meaning at all — it never explains that engine selects typst/latex/both, that template defaults to research-article, or that force controls overwriting. With low coverage the description needed to compensate and does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Scaffold a paper from a researcher-python handoff bundle and wire its bibliographies.' This is clearly distinct from generic creation siblings like paper_new or paper_init because it names an input artifact (handoff bundle) and a secondary effect (bibliography wiring). It stops short of 5 because 'researcher-python handoff bundle' is unexplained jargon and it never explicitly contrasts itself with paper_new/paper_init/paper_research_sync.

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 rather than stated: the agent can infer this tool is for the case where a handoff bundle exists. There is no explicit when-to-use vs. paper_new, paper_init, or paper_research_sync, and no when-not guidance (e.g., what to do if the paper name already exists).

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