Skip to main content
Glama

delete_api_source

DestructiveIdempotent

Remove an API source attribute by code from every product so it is no longer applied. Use this when the user explicitly asks to remove an API source. DESTRUCTIVE: confirm with the user first, then call with confirm:true. Without confirm:true this tool returns error 'confirm_required' and nothing is deleted (the gate is enforced here, before the call reaches Koongo). The values clear from products on the next import — call run_api_source_import to clear them now. project_id is OPTIONAL (inferred for a single-project customer). If this feature is not included in this Koongo account, the call is refused with error 'addon_required' (HTTP 403); tell the user it is not available for this account and do not retry. Returns {status:'deleted', code, applied}.

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": {
      "code": "<code>"
    },
    "name": "delete_api_source"
  }
}

Input Schema

NameRequiredDescriptionDefault
codeYes
confirmNo
project_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / properties / apply
      Removed value: -{
      -  "type": "boolean"
      -}
  2. Changed1 schema field changed
    • addedInput schema / properties / confirm
      Added value: +{
      +  "type": "boolean"
      +}
  3. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already flag destructive and idempotent, but the description adds what they cannot: the error string 'confirm_required', the fact the gate is enforced before the call reaches Koongo, the 'addon_required'/HTTP 403 refusal path, and the deferred-clearing behavior until the next import. This is exactly the context annotations cannot express.

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?

Front-loaded with the action and effect, then the destructive warning in caps, then edge cases. Dense but every sentence carries operational information an agent needs; nothing is redundant with the schema or annotations.

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?

No output schema exists, yet the description still states the return shape ('{status:'deleted', code, applied}'), covers both error paths, and explains the deferred-clear semantics. An agent has everything needed to call it and interpret the result.

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 0%, so the description must carry the load, and it does for all three parameters: `code` identifies the attribute to remove, `confirm` is the destructive gate with its failure mode, and `project_id` is explicitly OPTIONAL and inferred for single-project customers. Only the `code` string format is left unspecified.

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 ('Remove an API source attribute by `code`') plus the blast radius ('from every product so it is no longer applied'). That scope statement distinguishes it from set_api_source and delete_ai_source without the agent needing to open any schema.

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

Usage Guidelines5/5

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

Gives an explicit trigger ('when the user explicitly asks to remove an API source'), a mandatory prerequisite (confirm with the user, then confirm:true), and a routing alternative ('call run_api_source_import to clear them now') for the timing case. It also tells the agent not to retry on addon_required, which is real when-not guidance.

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