Skip to main content
Glama

Create a deployment

deployments_create
Destructive

Create a deployment (blank, from a public GitHub repo, or a template), or a database by passing its engine as runtime. Sized by default to an equal share of the free pool; the result tells you the RAM/CPU it got. A modern web stack needs 512+ MB to npm install (exit 137 = OOM): deployments.resize BEFORE the first start.

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": {
      "name": "<name>",
      "source": "<source>"
    },
    "name": "deployments_create"
  }
}

Input Schema

NameRequiredDescriptionDefault
envNoEnvironment variables to set on the new deployment. For a template, these fill its declared variables.
nameYes
ramMBNoOmit for the default share of the free pool.
branchNoOmit to use the repository's default branch (main, master, or whatever it is).
cpuPctNoPercent of one core. 15 makes an npm install take minutes.
sourceYes
runtimeNoThe stack to run. A database engine here (mysql, postgresql, redis, mongodb) creates a DATABASE deployment, which takes source: "blank" and no repository.
projectIdNoExisting project id. OMIT THIS to use your default project - do not invent one.
storageMBNo
githubRepoNo"owner/repo" or the GitHub URL of a public repository.
templateIdNo
runtimeVersionNoRuntime version as a string, e.g. "24"; a bare number is accepted too.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already flag destructive/non-idempotent; the description adds behavior they don't cover: default sizing is an equal share of the free pool, the call reports back allocated RAM/CPU, and undersizing manifests as exit 137 OOM. It doesn't discuss permissions, failure/rollback semantics, or that creation is not idempotent (retrying may create duplicates).

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?

Dense and front-loaded — capability first, then sizing default, then the failure-mode caveat. Parentheticals and the 'exit 137 = OOM' shorthand earn their space; a little more structure (or a sentence on source modes) would aid scanning.

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 12-param creation tool with no output schema, it covers the return value ('the result tells you the RAM/CPU it got'), the default sizing behavior, and the main failure mode. Remaining gaps are auth requirements and error/partial-failure behavior, which are secondary for a create call whose parameters are largely self-documented.

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?

With 67% schema coverage and 12 params, the description contributes real meaning: source-mode semantics and the non-obvious rule that a database engine in `runtime` requires source 'blank' and no repository. It leaves env/storageMB/templateId behavior to the schema, which mostly documents them.

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 (create) and resource (deployment) and enumerates the three source modes (blank, public GitHub repo, template), plus the twist that passing a database engine as `runtime` creates a database instead. Clear enough to separate it from projects_create and deployments_apply, though it never names those siblings.

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 actionable ordering guidance: 'deployments.resize BEFORE the first start' and the RAM threshold needed for npm install, which is a real when-to-do-what instruction. It stops short of saying when to prefer deployments_apply or a template over a GitHub source, so it's clear context rather than full 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.

Resources