Skip to main content
Glama

Creative Constraints

Draw Constraint

draw_constraint
Read-onlyIdempotent

Draws from Pipeworx's original 162-card creative-constraints deck (perspective, limitation, medium, time, audience, inversion, scale, process, wildcard) — each card is one imperative sentence an agent or team can apply to any task (a launch, an essay, an onboarding flow, a dinner), with a one-sentence reason it helps. Interpretation is yours: the tool returns what was drawn and the procedure used, not advice. Optionally restrict to one or more categories. Pass seed to reproduce an exact draw later (the same seed, count, and categories always return the same cards); omit it for a fresh random draw — the seed used is always returned. Pass session_id from a previous response to continue a no-repeat session (draw-without-replacement across calls, hosted gateway only); when continuing a session, categories cannot be changed mid-session.

Example tool call

This call uses example arguments supplied in the tool’s input schema.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "seed": "pipeworx-demo",
      "count": 3,
      "categories": [
        "inversion"
      ]
    },
    "name": "draw_constraint"
  }
}

Input Schema

NameRequiredDescriptionDefault
seedNoOptional seed for a reproducible draw. The same seed, count and categories always return the same cards. Omit for a fresh random draw; the seed actually used is returned in `meta.seed`.
countNoHow many cards to draw, 1-10. Default 3.
categoriesNoRestrict the draw to one or more of: perspective, limitation, medium, time, audience, inversion, scale, process, wildcard. Omit (or pass an empty array) for the full 162-card deck.
session_idNoA session_id returned by a previous draw_constraint call, to continue drawing without repeating cards already drawn in that session. Hosted gateway only — answers session_supported:false elsewhere.

Output Schema

NameRequiredDescriptionDefault
metaNo
seedNo
cardsNo
countNo
remainingNo
session_supportedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, it discloses key behavioral traits: the return contains the draw and the procedure, not advice; the seed used is always returned; sessions are draw-without-replacement and hosted-gateway-only; categories are locked once a session starts. These are exactly the non-obvious constraints an agent needs.

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?

Front-loaded with the core action and card content, then parameter guidance in a logical order. It is dense and long, but nearly every clause carries usable information; only minor restatement between description and schema keeps it from a 5.

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?

An output schema exists, so return values needn't be spelled out, and the description still notes the seed is returned in meta. With four optional params, full schema coverage, and safety annotations, the description covers everything needed to invoke the tool correctly, including the session caveat.

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 every parameter is already documented in the schema. The description restates seed and session_id behavior rather than adding syntax, ranges, or format details beyond it, so it sits at the baseline for full-coverage schemas.

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: draws cards from Pipeworx's 162-card creative-constraints deck, and explains what a card contains (one imperative sentence plus a one-sentence reason). It's clear what the tool does, though it never names the closest siblings (get_constraint, list_constraint_categories) to disambiguate.

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 conditions for each optional parameter: pass seed to reproduce a draw, omit it for random, pass session_id to continue a no-repeat session, omit categories for the full deck. It lacks an explicit statement of when to choose this over get_constraint, so it falls short of a 5.

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.