Skip to main content
Glama

Draft World

draft_world
Destructive

Draft a city-owned thing for the world aisle. Free and valid for about one hour. Then authenticate separately to the city to prove ownership and lock the thing. A seller may hold one pending world draft. Before creating another, activate it, cancel it, or wait for expiry. Exactly these fields, nothing else: title, description, preview, price_usdc, seller_wallet, tags, thing_id.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagsYesvalues are lowercased and trimmed; empty and duplicate values are removed; each is truncated to 40 UTF-16 code units; the first 8 remain
titleYestrimmed, then must contain 3-120 characters measured as UTF-16 code units
previewYestrimmed, then must contain at most 4000 characters measured as UTF-16 code units; empty is allowed
thing_idYesthe positive integer ID of the thing you own in the city
price_usdcYesgreater than 0 and at most 10000; rounded to 6 decimal places
descriptionYestrimmed, then must contain 1-4000 characters measured as UTF-16 code units
seller_walletYesyour Base wallet where the city sends the buyer payment

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed16 schema fields changed
    • changedInput schema / properties / description / description
      Previous value: -"trimmed, then must contain 1-4000 characters"New value: +"trimmed, then must contain 1-4000 characters measured as UTF-16 code units"
    • addedInput schema / properties / description / maxLength
      Added value: +4000
    • addedInput schema / properties / description / minLength
      Added value: +1
    • addedInput schema / properties / description / x-maxUtf16CodeUnits
      Added value: +4000
    • changedInput schema / properties / preview / description
      Previous value: -"trimmed, then must contain at most 4000 characters; empty is allowed"New value: +"trimmed, then must contain at most 4000 characters measured as UTF-16 code units; empty is allowed"
    • addedInput schema / properties / preview / maxLength
      Added value: +4000
    • addedInput schema / properties / preview / x-maxUtf16CodeUnits
      Added value: +4000
    • changedInput schema / properties / tags / description
      Previous value: -"values are lowercased and trimmed; empty and duplicate values are removed; each is truncated to 40 characters; the first 8 remain"New value: +"values are lowercased and trimmed; empty and duplicate values are removed; each is truncated to 40 UTF-16 code units; the first 8 remain"
    • addedInput schema / properties / tags / items / description
      Added value: +"at most 40 UTF-16 code units before normalization"
    • addedInput schema / properties / tags / items / maxLength
      Added value: +40
    • addedInput schema / properties / tags / items / x-maxUtf16CodeUnits
      Added value: +40
    • addedInput schema / properties / tags / maxItems
      Added value: +8
    • changedInput schema / properties / title / description
      Previous value: -"trimmed, then must contain 3-120 characters"New value: +"trimmed, then must contain 3-120 characters measured as UTF-16 code units"
    • addedInput schema / properties / title / maxLength
      Added value: +120
    • addedInput schema / properties / title / minLength
      Added value: +3
    • addedInput schema / properties / title / x-maxUtf16CodeUnits
      Added value: +120
  2. Changed12 schema fields changed
    • addedInput schema / properties / description / description
      Added value: +"trimmed, then must contain 1-4000 characters"
    • addedInput schema / properties / preview / description
      Added value: +"trimmed, then must contain at most 4000 characters; empty is allowed"
    • changedInput schema / properties / price_usdc / description
      Previous value: -"greater than 0"New value: +"greater than 0 and at most 10000; rounded to 6 decimal places"
    • addedInput schema / properties / price_usdc / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / price_usdc / maximum
      Added value: +10000
    • addedInput schema / properties / seller_wallet / pattern
      Added value: +"^0x[0-9a-fA-F]{40}$"
    • addedInput schema / properties / tags / description
      Added value: +"values are lowercased and trimmed; empty and duplicate values are removed; each is truncated to 40 characters; the first 8 remain"
    • changedInput schema / properties / thing_id / description
      Previous value: -"the thing you own in the city"New value: +"the positive integer ID of the thing you own in the city"
    • addedInput schema / properties / thing_id / maximum
      Added value: +2147483647
    • addedInput schema / properties / thing_id / minimum
      Added value: +1
    • changedInput schema / properties / thing_id / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / title / description
      Added value: +"trimmed, then must contain 3-120 characters"
  3. Added

TDQS

A4.1/5.0
Behavior5/5

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

Annotations cover only the generic safety profile (destructive, not idempotent, open-world). The description adds genuinely new traits: zero cost, ~1 hour expiry, a one-pending-draft quota, and the requirement to authenticate separately against the city to prove ownership and lock the thing. These are behavioral facts an agent cannot get from the annotations.

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?

Short, front-loaded sentences with no filler; the lifecycle constraint and the field whitelist are both stated compactly. The clipped, telegraphic style ('Then authenticate separately to the city') costs a little readability but wastes nothing.

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?

For a mutation tool with no output schema, the description covers cost, lifetime, quota, the follow-up auth step, and the field whitelist. It never says what a successful draft returns (e.g., a draft ID needed by later tools), which is the one remaining gap.

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 the schema already documents normalization, limits, and formats for all seven parameters. The description only repeats the field names and adds 'exactly these fields, nothing else,' which restates additionalProperties=false. Baseline 3 is appropriate when the schema does the heavy lifting.

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?

States a specific verb and resource: 'Draft a city-owned thing for the world aisle.' The jargon ('world aisle', 'city-owned thing') is idiosyncratic but the operation is distinguishable from siblings like cancel_world_draft and list_world. It could be sharper about what a 'draft' produces, but an agent can tell what the tool does.

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 real operating context: the draft is free, valid roughly one hour, one pending draft per seller, and before creating another you must 'activate it, cancel it, or wait for expiry' — which implicitly routes to cancel_world_draft. It stops short of naming alternatives for the listing/purchase side, but the preconditions are explicit.

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