Skip to main content
Glama
Jesse-pink-lab

ICP Control Plane MCP Server

icp_deploy

Build and deploy a canister to the Internet Computer. Auto-detects Rust or Motoko projects, supports install, reinstall, or upgrade modes, and reuses an existing canister ID or creates a new one.

Instructions

Build and deploy a canister. Auto-detects Rust (Cargo.toml) or Motoko (dfx.json) projects.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNoInstall modeupgrade
canister_idNoExisting canister ID (creates new if not provided)
project_pathYesPath to the project
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions auto-detection but does not explain important behaviors such as whether it creates a new canister if no canister_id is provided, whether it overwrites existing code, or how the mode parameter affects the deployment. The schema partially fills this gap with a note about canister_id, but the description itself lacks critical side-effect and prerequisite information.

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 description is extremely concise, consisting of only two short sentences. The primary action 'Build and deploy a canister' is front-loaded, and the auto-detection detail is a separate, clearly structured addition. There is no redundant information or filler, making it an efficient and well-structured summary.

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

Completeness2/5

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

Despite the schema covering parameter descriptions, the tool is a complex build-and-deploy operation with multiple modes and potential side effects. The description does not explain the deployment pipeline, prerequisites (e.g., authentication, network), or how it relates to sibling tools like icp_install_code or icp_deploy_frontend. No output schema means the description should provide more context on what to expect, which it fails to do.

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?

The input schema provides descriptions for all three parameters (project_path, mode, canister_id), achieving 100% schema description coverage. The description adds no additional parameter-specific meaning, but the schema already documents the necessary semantics. Baseline score of 3 is appropriate because the description neither enhances nor detracts from what the schema provides.

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?

The description clearly states the tool's function: 'Build and deploy a canister.' It also specifies auto-detection of Rust or Motoko projects, which distinguishes it from sibling build-only tools like icp_build_rust_canister and icp_build_motoko_canister. The verb 'deploy' combined with the resource 'canister' makes the purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies usage for any Rust or Motoko project by stating auto-detection, but it does not explicitly explain when to use this tool versus alternatives such as icp_install_code or icp_upgrade_canister. There is no mention of exclusions or specific scenarios where a separate build or deploy tool would be preferred. This is an implied usage with no clear guidance on selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Jesse-pink-lab/icp-control-plane-mcp-dist'

If you have feedback or need assistance with the MCP directory API, please join our Discord server