Skip to main content
Glama

Export race plan PDF

export_race_plan_pdf

Export a Hi-Fi PDF or standalone checkpoint card from an existing CRSProf artifact. The CRSProf supplies the course/profile/plan data; options are presentation-only overrides such as title, subtitle, metric/imperial unit system, format, and file name. Omit unit_system unless the user explicitly asks for metric or imperial.

Input Schema

NameRequiredDescriptionDefault
optionsNo
crsprof_artifact_idYesExisting CRSProf artifact ID containing the course/profile/plan data to render.

Output Schema

NameRequiredDescriptionDefault
errorsNo
job_idYesCourseProfiler job ID to poll with get_job.
statusYesJob status, e.g. queued, running, succeeded, or failed.
progressNo
warningsNo
created_atNoISO-8601 creation timestamp.
expires_atNoISO-8601 expiration timestamp.
started_atNoISO-8601 start timestamp, when available.
status_urlNoRelative API URL for polling this job.
completed_atNoISO-8601 completion timestamp, when available.
result_artifactsNoArtifacts produced by the job, including role metadata.
submission_request_idNoRequest ID that originally allocated this job; absent in legacy metadata.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedOutput schema / properties / submission_request_id
      Added value: +{
      +  "description": "Request ID that originally allocated this job; absent in legacy metadata.",
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • changedOutput schema / properties / result_artifacts / items / properties / download_url / description
      Previous value: -"Private short-lived download URL. Share only with the user."New value: +"Artifact download URLs are private and short-lived; share them only with the user, verbatim in a code block, not a clickable link. Ask the user to copy the entire URL into their browser address bar. Do not rewrite the URL or add tracking parameters such as utm_source: changes invalidate the signature. If expired, call get_artifact for a fresh URL. This applies only to artifact download_url values, not authorization or upload links."
  3. Changed1 schema field changed
    • addedInput schema / properties / options / properties / format
      Added value: +{
      +  "description": "Set to checkpoint_card for the standalone race-day checkpoint card; omit for the Hi-Fi course profile.",
      +  "enum": [
      +    "checkpoint_card"
      +  ],
      +  "type": "string"
      +}
  4. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false but destructiveHint=false, which alone could confuse an agent; the description resolves this by stating the CRSProf supplies all course/profile/plan data and options are presentation-only overrides, i.e. nothing in the plan is altered. It still says nothing about where the file is written, auth needs, or repeat-run behavior.

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 sentences, front-loaded with the action and source artifact, then the options contract, then the one explicit caution. The final sentence restates the schema's unit_system description, a small redundancy.

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?

An output schema exists, so return values need not be explained, and the description covers the two output modes and the source artifact. It leaves side-effect details (file destination, whether the exported artifact is retrievable) implicit for a write-flagged, open-world tool.

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 only 50% and the nested options object carries no top-level description, so the description does real work by framing every option as a presentation-only override and by giving the unit_system omission rule. It duplicates the schema's own enum hints for format/unit_system rather than adding new syntax detail.

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 (Export) and two concrete output resources (Hi-Fi PDF, standalone checkpoint card) plus the input source (an existing CRSProf artifact). No sibling tool produces a PDF, so an agent can route here unambiguously.

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 explicit conditional guidance: omit unit_system unless the user explicitly asks for metric/imperial, and format=checkpoint_card only for the race-day card. It does not name alternatives or exclusions, but there is no competing export sibling to route against.

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