Skip to main content
Glama

create_document

Store a document (passport, insurance, certificate, warranty, license, other) with its reference number, issuing authority, fee and notes. Returns the new id, which an appliance, vehicle or pet can link to.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
feeNoCost, e.g. a renewal or issuance fee.
notesNoFree-text notes.
titleNoCustom title. Defaults to type plus number, e.g. 'Passport - 512345678'.
documentTypeYesKind of document.
documentNumberNoReference or serial number, e.g. a passport or policy number.
issuingAuthorityNoWho issued it.
renewalCronExpressionNoAccepted but not yet stored or acted on; has no effect.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsYes
titleNo
messageNo
variantNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • changedInput schema / properties / fee / properties / currencyCode / description
      Previous value: -"ISO 4217 code, three letters."New value: +"Uppercase ISO 4217 code, e.g. USD, GBP, JPY."
    • changedInput schema / properties / fee / properties / currencyCode / examples
      Previous value: -[
      -  "GBP"
      -]New value: +[
      +  "USD"
      +]
    • addedInput schema / properties / fee / properties / currencyCode / pattern
      Added value: +"^[A-Z]{3}$"
    • changedInput schema / properties / fee / properties / value / description
      Previous value: -"Amount in minor units, e.g. pence."New value: +"Amount in the currency's minor units. Most currencies have 2 decimal places (1599 = 15.99 USD), but some have none (1500 = 1500 JPY) and a few have 3 (12345 = 12.345 KWD)."
    • changedInput schema / properties / fee / properties / value / examples
      Previous value: -[
      -  8250
      -]New value: +[
      +  1599
      +]
  2. Changed11 schema fields changed
    • changedInput schema / properties / documentNumber / description
      Previous value: -"The document's reference or serial number, e.g. a passport number or insurance policy number."New value: +"Reference or serial number, e.g. a passport or policy number."
    • changedInput schema / properties / documentType / description
      Previous value: -"The kind of document being stored."New value: +"Kind of document."
    • changedInput schema / properties / fee / description
      Previous value: -"The cost associated with the document, e.g. a renewal or issuance fee."New value: +"Cost, e.g. a renewal or issuance fee."
    • changedInput schema / properties / fee / properties / currencyCode / description
      Previous value: -"ISO 4217 code"New value: +"ISO 4217 code, three letters."
    • changedInput schema / properties / fee / properties / value / description
      Previous value: -"Amount in smallest currency unit"New value: +"Amount in minor units, e.g. pence."
    • changedInput schema / properties / issuingAuthority / description
      Previous value: -"The organization or authority that issued the document."New value: +"Who issued it."
    • changedInput schema / properties / notes / description
      Previous value: -"Free-text notes about the document."New value: +"Free-text notes."
    • addedInput schema / properties / notes / examples
      Added value: +[
      +  "Renew before the next family trip."
      +]
    • changedInput schema / properties / renewalCronExpression / description
      Previous value: -"Reserved for a future renewal-reminder schedule. Currently accepted but not persisted or acted on by document creation — has no effect yet."New value: +"Accepted but not yet stored or acted on; has no effect."
    • addedInput schema / properties / renewalCronExpression / examples
      Added value: +[
      +  "0 0 1 1 *"
      +]
    • changedInput schema / properties / title / description
      Previous value: -"A custom title for the document. If omitted, one is derived from the document type and number, e.g. 'Passport - 512345678'."New value: +"Custom title. Defaults to type plus number, e.g. 'Passport - 512345678'."
  3. Changed14 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "documentNumber": "512345678",
      +    "documentType": "Passport",
      +    "fee": {
      +      "currencyCode": "GBP",
      +      "value": 8250
      +    },
      +    "issuingAuthority": "HM Passport Office",
      +    "notes": "Renew before the next family trip.",
      +    "title": "UK Passport"
      +  }
      +]
    • addedInput schema / properties / documentNumber / description
      Added value: +"The document's reference or serial number, e.g. a passport number or insurance policy number."
    • addedInput schema / properties / documentNumber / examples
      Added value: +[
      +  "512345678"
      +]
    • addedInput schema / properties / documentType / description
      Added value: +"The kind of document being stored."
    • addedInput schema / properties / documentType / examples
      Added value: +[
      +  "Passport"
      +]
    • addedInput schema / properties / fee / description
      Added value: +"The cost associated with the document, e.g. a renewal or issuance fee."
    • addedInput schema / properties / fee / properties / currencyCode / examples
      Added value: +[
      +  "GBP"
      +]
    • addedInput schema / properties / fee / properties / value / examples
      Added value: +[
      +  8250
      +]
    • addedInput schema / properties / issuingAuthority / description
      Added value: +"The organization or authority that issued the document."
    • addedInput schema / properties / issuingAuthority / examples
      Added value: +[
      +  "HM Passport Office"
      +]
    • addedInput schema / properties / notes / description
      Added value: +"Free-text notes about the document."
    • changedInput schema / properties / renewalCronExpression / description
      Previous value: -"Cron expression for renewal"New value: +"Reserved for a future renewal-reminder schedule. Currently accepted but not persisted or acted on by document creation — has no effect yet."
    • addedInput schema / properties / title / description
      Added value: +"A custom title for the document. If omitted, one is derived from the document type and number, e.g. 'Passport - 512345678'."
    • addedInput schema / properties / title / examples
      Added value: +[
      +  "UK Passport"
      +]
  4. Changed1 schema field changed
    • addedInput schema / properties / title
      Added value: +{
      +  "type": "string"
      +}
  5. First observed

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already show this is a mutating but non-destructive operation, and the description's 'Store' wording is consistent with that. It adds the useful fact that a new id is returned and can be linked, but it does not disclose side effects or quirks beyond that; the schema carries the rest.

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?

The description is one compact sentence with no filler. It front-loads the core action, lists accepted document types and key fields, and states the important return-value behavior efficiently.

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 the rich input schema and the presence of an output schema, the description does not need to re-explain parameter or return details. It contributes the key contextual detail that the returned id can be linked to an appliance, vehicle, or pet, and the schema covers the rest.

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 100%, so all seven parameters, including the nested fee object, are already documented. The description's list of 'reference number, issuing authority, fee and notes' partially mirrors the schema but omits title and documentType, so it does not materially add meaning beyond the schema.

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 clearly identifies the action as storing a document with specific fields and returning a new id, which matches the create_document name. It lists document types and stored fields, but it does not explicitly distinguish itself from sibling update_document or delete_document, so it misses full sibling differentiation.

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?

The description gives implied usage context by noting the new id can be linked to an appliance, vehicle, or pet, which hints at when the tool is useful. However, it provides no explicit when-to-use/when-not-to-use guidance and does not name any alternative tools among the many create/update siblings.

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