Skip to main content
Glama

ateam_patch

Update any field in a skill or solution definition, redeploy, and optionally re-test in one step.

Instructions

Surgically update ANY field in a skill or solution definition, redeploy, and optionally re-test — all in one step.

SUPPORTED OPERATIONS:

  1. Scalar (dot notation): { "problem.statement": "new value", "role.persona": "You are..." }

  2. Deep nested: { "intents.thresholds.accept": 0.9, "policy.escalation.enabled": true }

  3. Array push: { "tools_push": [{ name: "new_tool", description: "..." }] }

  4. Array delete: { "tools_delete": ["tool_name"] }

  5. Array update: { "tools_update": [{ name: "existing_tool", description: "updated" }] }

  6. Replace whole section: { "role": { persona: "...", goals: [...] } }

EXAMPLES:

  • Change persona (full replace): updates: { "role.persona": "You are a friendly assistant" }

  • Append to persona (don't replace): updates: { "persona_append": "\n\nALWAYS respond in 2 sentences." }

  • Add a guardrail: updates: { "policy.guardrails.never_push": ["Never share passwords"] }

  • Update problem: updates: { "problem.statement": "...", "problem.goals": ["goal1"] }

  • Add a tool: updates: { "tools_push": [{ name: "conn.tool", description: "...", inputs: [...], output: {...} }] }

  • Change intent: updates: { "intents.supported_update": [{ id: "i1", description: "new desc" }] }

  • Force redeploy: updates: { "_force_redeploy": true }

  • CREATE a new skill: target='skill', skill_id='my-new-skill', updates: { "problem.statement": "...", "role.persona": "..." } If the skill doesn't exist yet, a default scaffold is created and the updates are applied on top. The skill is automatically added to the solution topology.

Use target='skill' + skill_id for skill fields. Use target='solution' for solution-level fields (linked_skills, platform_connectors, ui_plugins).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
solution_idYesThe solution ID
targetYesWhat to update: 'solution' for solution definition, 'skill' for skill definition fields (problem, role, intents, tools, policy, engine, scenarios, etc.)
skill_idNoRequired when target is 'skill'. The skill ID to patch.
updatesYesThe update payload. Use dot notation for nested scalars (e.g. 'problem.statement': 'new value'). For arrays, use _push/_delete/_update suffixes (e.g. 'tools_push', 'tools_delete'). You can update ANY field in the skill definition: problem, role, intents, tools, policy, engine, scenarios, glossary, etc.
test_messageNoOptional: re-test the skill after patching. Requires skill_id.
Behavior4/5

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

The description discloses behavioral traits such as automatic redeployment, optional re-testing, and the ability to create default scaffolds for new skills. No annotations are present, so the description carries the full burden, and it meets the need by covering mutation side effects and supported operations.

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?

The description is well-structured with sections (supported operations, examples) and is front-loaded with the core purpose. While lengthy due to exhaustive examples, every part earns its place. It is concise given the complexity of the tool.

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?

Given the tool's complexity and lack of output schema, the description covers usage, parameters, special patterns, and behavioral notes (redeploy, test, creation). It leaves no obvious gaps for an agent to understand how to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, the baseline is 3, but the description adds significant value by explaining dot notation, array operations (_push/_delete/_update), special fields like _force_redeploy, and providing detailed examples. This greatly enhances understanding beyond the raw schema.

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 purpose: 'Surgically update ANY field in a skill or solution definition, redeploy, and optionally re-test — all in one step.' This provides a specific verb, resource, and scope, distinguishing it from sibling tools like ateam_get_solution (read-only) or ateam_delete_skill (destructive).

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?

The description provides explicit guidance on when to use target='skill' vs target='solution', and includes numerous examples covering common update patterns. It also clarifies that the tool can create new skills if they don't exist. However, it does not explicitly state when not to use this tool (e.g., for simple reads).

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/ariekogan/ateam-mcp'

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