Skip to main content
Glama

schema.apply

Destructive

Apply a schema that policy.test (or policy.simulate) already proved safe. Takes the token it issued, not SQL — there is no way to apply a policy that has not been proven.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "source": "<source>",
      "token": "<token>"
    },
    "name": "schema.apply"
  }
}

Input Schema

NameRequiredDescriptionDefault
tokenYes
sourceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false and idempotentHint=false, so the safety profile is largely covered. The description adds meaningful context about the token gate preventing unproven applies, but says nothing about what 'apply' actually mutates, whether existing objects are replaced, or whether the change can be reverted.

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 short sentences, zero filler, and the key constraint (proven-only, token-not-SQL) is front-loaded. Every clause adds routing or safety information.

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

Completeness3/5

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

For a destructive, non-idempotent apply with two undocumented parameters and no output schema, the definition covers the workflow gate but not the blast radius. An agent still lacks the meaning of 'source' and any sense of what the applied change does to existing state.

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 coverage is 0%, so the description must carry the load. It explains 'token' well (issued by policy.test/policy.simulate) but leaves 'source' completely undefined — neither the schema nor the description says what it is or what format it takes. Partial compensation for the coverage gap.

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 ('Apply') and resource ('a schema'), and explicitly ties it to the sibling tools that produce the input (policy.test / policy.simulate). The clause 'Takes the token it issued, not SQL' further distinguishes it from sql.execute and schema.propose, so an agent can route correctly without opening the schema.

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?

Provides a clear prerequisite: the schema must already have been proven by policy.test or policy.simulate, and the input is the issued token rather than SQL. It does not explicitly say when to prefer schema.propose or what to do when no token exists, but the gate is unambiguous.

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