Skip to main content
Glama

Update project model grant

grant_models_edit
Destructive

Updates the project's overrides for the configured model. Omitted fields keep their current values; null, or [] for supported_reasoning_efforts, input_modalities, and output_modalities, clears an override so the project inherits from the configured model. Agents already using the model apply the updated overrides on their next model call. Updates are validated against the configured model's current revision but not against agent configs, so narrowing below a config's model settings, such as its context_window_tokens or reasoning effort, makes that agent's next model call fail.

Input Schema

NameRequiredDescriptionDefault
orgIDYesOrganization ID (org_...).
projectIDYesProject ID (proj_...).
modelGrantIDYesProject model grant ID (pmog_...).
supports_toolsNoProject-level tool-use gate. Can disable tools, but cannot enable tools when the configured model does not support them.
input_modalitiesNoProject subset of configured-model input types.
max_output_tokensNoProject output-token ceiling. Cannot exceed the configured model's ceiling.
output_modalitiesNoProject subset of configured-model output types.
supports_reasoningNoProject-level reasoning gate. Can disable reasoning, but cannot enable reasoning when the configured model does not support it.
context_window_tokensNoProject context budget for input and output tokens. Cannot exceed the configured model's budget. Triggers compaction when estimated input exceeds the remaining budget after output and safety reserves. The turn fails if compaction cannot make it fit.
default_cache_retentionNo
default_reasoning_effortNoProject default reasoning effort.
default_max_output_tokensNoProject default per-request output-token cap.
supported_reasoning_effortsNoProject subset of configured-model reasoning efforts. If this excludes the inherited default_reasoning_effort, set default_reasoning_effort on the grant too.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / modelGrantID / description
      Added value: +"Project model grant ID (pmog_...)."
    • addedInput schema / properties / orgID / description
      Added value: +"Organization ID (org_...)."
    • addedInput schema / properties / projectID / description
      Added value: +"Project ID (proj_...)."
  2. Changed3 schema fields changed
    • changedInput schema / properties / context_window_tokens / description
      Previous value: -"Project token-window limit. Cannot exceed the configured model's current limit."New value: +"Project context budget for input and output tokens. Cannot exceed the configured model's budget. Triggers compaction when estimated input exceeds the remaining budget after output and safety reserves. The turn fails if compaction cannot make it fit."
    • addedInput schema / properties / context_window_tokens / maximum
      Added value: +2147483647
    • changedInput schema / properties / context_window_tokens / minimum
      Previous value: -1New value: +2
  3. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already flag destructiveHint=true and non-idempotent, and the description adds substantial context beyond them: partial-update semantics (omitted fields retained), the null/[] clearing behavior for specific fields, that changes take effect on the agent's next model call, and the critical failure mode where narrowing below an agent config breaks its next call. This is exactly the behavioral disclosure an agent cannot infer from structured fields.

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 core purpose is front-loaded, followed by three dense, non-redundant sentences covering clearing semantics, propagation timing, and the failure mode. Every sentence earns its place with no filler.

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?

For a 13-param mutation tool with no output schema, the description covers the behaviorally important edge cases: partial update, override clearing, propagation timing, and validation/failure scope. Annotations carry the safety profile, so nothing essential to correct invocation is missing.

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 92%, so the baseline is 3, but the description adds meaning the schema lacks: which specific parameters support null/[] clearing (supported_reasoning_efforts, input_modalities, output_modalities) and that omission preserves current values. It does not cover the remaining params, but the added clearing semantics are the high-value ones.

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 and resource: updating the project's overrides for the configured model. The grant_models_* siblings (add/delete/list) are clearly differentiated by the 'overrides' framing, so an agent can pick this tool 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?

Explains the operational contract for omitted vs null vs [] values, which is effectively guidance on how to invoke it correctly. It does not, however, explicitly name when to prefer this over grant_models_add/delete or state exclusions, so it falls short of full when/when-not routing.

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.