Skip to main content
Glama

Grant machine pool to project

grant_pools_add

Lets a project create machines from a machine pool, optionally with its own defaults and usage caps within the pool's limits, and returns the grant. No machines are created by this call.

Input Schema

NameRequiredDescriptionDefault
orgIDYesOrganization ID (org_...).
metadataNoArbitrary key-value metadata. Maximum 16 pairs, keys up to 64 characters, values must be strings of up to 512 characters.
projectIDYesProject ID (proj_...).
default_cwdNoDefault working directory for processes on this project's machines from the pool.
descriptionNoOptional note about this grant.
max_total_cpuNoMaximum total CPU across this project's live machines from the pool.
machine_pool_idYesMachine pool ID (mpo_...).
max_machine_cpuNoLargest CPU count one of this project's machines can request.
min_machine_cpuNoSmallest CPU count one of this project's machines can request.
max_total_machinesNoMaximum number of live machines this project can have from the pool.
default_machine_cpuNoDefault CPU count for machines this project creates from the pool, overriding the pool's default.
max_total_memory_mbNoMaximum total memory in MB across this project's live machines from the pool.
max_machine_memory_mbNoLargest memory in MB one of this project's machines can request.
min_machine_memory_mbNoSmallest memory in MB one of this project's machines can request.
default_machine_memory_mbNoDefault memory in MB for machines this project creates from the pool, overriding the pool's default.
delete_after_idle_minutesNoIdle minutes before deleting a machine created through this grant. Use 0 to disable for this grant; omit to inherit the pool default. Values from 1 through 4 are invalid.
default_machine_env_overlayNoEnv overlay merged over the pool's default_machine_env for machines materialized through this grant; a null entry removes the key.
default_machine_secret_env_overlayNoSecret env overlay merged over the pool's default_machine_secret_env for machines materialized through this grant; a null entry removes the key.
default_machine_provider_options_overlayNoProvider-specific options layered over the pool's provider options for this project's machines.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed15 schema fields changed
    • addedInput schema / properties / default_cwd / description
      Added value: +"Default working directory for processes on this project's machines from the pool."
    • addedInput schema / properties / default_machine_cpu / description
      Added value: +"Default CPU count for machines this project creates from the pool, overriding the pool's default."
    • addedInput schema / properties / default_machine_memory_mb / description
      Added value: +"Default memory in MB for machines this project creates from the pool, overriding the pool's default."
    • addedInput schema / properties / default_machine_provider_options_overlay / description
      Added value: +"Provider-specific options layered over the pool's provider options for this project's machines."
    • addedInput schema / properties / description / description
      Added value: +"Optional note about this grant."
    • addedInput schema / properties / machine_pool_id / description
      Added value: +"Machine pool ID (mpo_...)."
    • addedInput schema / properties / max_machine_cpu / description
      Added value: +"Largest CPU count one of this project's machines can request."
    • addedInput schema / properties / max_machine_memory_mb / description
      Added value: +"Largest memory in MB one of this project's machines can request."
    • addedInput schema / properties / max_total_cpu / description
      Added value: +"Maximum total CPU across this project's live machines from the pool."
    • addedInput schema / properties / max_total_machines / description
      Added value: +"Maximum number of live machines this project can have from the pool."
    • addedInput schema / properties / max_total_memory_mb / description
      Added value: +"Maximum total memory in MB across this project's live machines from the pool."
    • addedInput schema / properties / min_machine_cpu / description
      Added value: +"Smallest CPU count one of this project's machines can request."
    • addedInput schema / properties / min_machine_memory_mb / description
      Added value: +"Smallest memory in MB one of this project's machines can request."
    • addedInput schema / properties / orgID / description
      Added value: +"Organization ID (org_...)."
    • addedInput schema / properties / projectID / description
      Added value: +"Project ID (proj_...)."
  2. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already establish the safety profile (non-read-only, non-destructive, non-idempotent, closed-world). The description adds real behavioral context beyond them: the grant is returned, per-project defaults and caps are bounded by the pool's own limits, and critically that no machines are materialized by the call. It stops short of stating required permissions or what happens on a duplicate grant.

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?

A single sentence front-loads the core action, then the optional capability, then the return value, and closes with the negative constraint. No filler and nothing repeated from the schema.

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 19-parameter mutation with nested overlays and no output schema, the description covers the high-level effect adequately and says the grant is returned. It omits prerequisites (permissions, whether a grant already existing is an error) and gives no hint that the overlays merge over pool defaults, which is left entirely to the schema.

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% across all 19 properties, so the schema already documents every field, including the min/max/default CPU and memory semantics. The description only gestures at these collectively as 'its own defaults and usage caps within the pool's limits', adding no syntax or precedence detail beyond the schema. Baseline 3 applies.

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 names a specific verb and resource: it grants a machine pool to a project so the project can create machines from it, and states the result (returns the grant). This clearly separates it from grant_pools_edit/delete/list and from machines_create. It does not, however, explicitly contrast itself with the closest siblings by name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance and no named alternative (e.g. grant_pools_edit for changing limits, grant_pools_list for inspection). The only usage-adjacent signal is the exclusion 'No machines are created by this call', which rules out one mistaken intent but doesn't route the agent between tools.

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.