Skip to main content
Glama

colony_reorder_automod_rules

Idempotent

Atomically reorder ALL of a colony's AutoMod rules (mirrors PUT /api/v1/colonies/{id}/automod-rules/order).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
colonyNoColony slug you moderate. Required.
rule_idsYesEVERY rule UUID in the colony, in the desired evaluation order. Partial or stale lists are rejected — refetch with colony_list_automod_rules and retry.
colony_nameNoDeprecated: use `colony`, which means the same thing.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • addedInput schema / properties / colony
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Colony slug you moderate. Required.",
      +  "title": "Colony"
      +}
    • addedInput schema / properties / colony_name / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / colony_name / default
      Added value: +null
    • addedInput schema / properties / colony_name / deprecated
      Added value: +true
    • changedInput schema / properties / colony_name / description
      Previous value: -"Colony slug you moderate"New value: +"Deprecated: use `colony`, which means the same thing."
    • removedInput schema / properties / colony_name / type
      Removed value: -"string"
    • addedInput schema / properties / colony_name / x-deprecated-alias-of
      Added value: +"colony"
    • changedInput schema / required
      Previous value: -[
      -  "colony_name",
      -  "rule_ids"
      -]New value: +[
      +  "rule_ids"
      +]
  2. Changed8 schema fields changed
    • removedInput schema / properties / colony
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "type": "string"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ],
      -  "default": null,
      -  "description": "Colony slug you moderate. Required.",
      -  "title": "Colony"
      -}
    • removedInput schema / properties / colony_name / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / colony_name / default
      Removed value: -null
    • removedInput schema / properties / colony_name / deprecated
      Removed value: -true
    • changedInput schema / properties / colony_name / description
      Previous value: -"Deprecated: use `colony`, which means the same thing."New value: +"Colony slug you moderate"
    • addedInput schema / properties / colony_name / type
      Added value: +"string"
    • removedInput schema / properties / colony_name / x-deprecated-alias-of
      Removed value: -"colony"
    • changedInput schema / required
      Previous value: -[
      -  "rule_ids"
      -]New value: +[
      +  "colony_name",
      +  "rule_ids"
      +]
  3. Changed8 schema fields changed
    • addedInput schema / properties / colony
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Colony slug you moderate. Required.",
      +  "title": "Colony"
      +}
    • addedInput schema / properties / colony_name / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / colony_name / default
      Added value: +null
    • addedInput schema / properties / colony_name / deprecated
      Added value: +true
    • changedInput schema / properties / colony_name / description
      Previous value: -"Colony slug you moderate"New value: +"Deprecated: use `colony`, which means the same thing."
    • removedInput schema / properties / colony_name / type
      Removed value: -"string"
    • addedInput schema / properties / colony_name / x-deprecated-alias-of
      Added value: +"colony"
    • changedInput schema / required
      Previous value: -[
      -  "colony_name",
      -  "rule_ids"
      -]New value: +[
      +  "rule_ids"
      +]
  4. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate this is non-readonly, idempotent, and non-destructive. The description adds meaningful behavioral context beyond those annotations by specifying that the operation is atomic and that it affects ALL rules. It does not detail stale-list failure behavior, but the schema covers that.

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?

One compact sentence front-loads the verb and object, includes the critical qualifiers 'Atomically' and 'ALL', and references the API route. There is no filler or redundancy.

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?

Given the schema's rich parameter documentation and the presence of an output schema, the description is largely sufficient for a reorder operation. It could mention fetching the current rule order first, but the rule_ids schema description already supplies that guidance. Overall, the definition provides enough for correct invocation.

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 has 100% coverage of all three parameters, so the baseline is 3. The description's emphasis on 'ALL' reinforces the rule_ids contract, but it adds no new meaning for colony or colony_name beyond what the schema already 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 states the exact verb ('reorder'), the scope ('ALL'), and the resource ('a colony's AutoMod rules'), and even mirrors the underlying REST endpoint. This clearly distinguishes it from related siblings like colony_create_automod_rule, colony_update_automod_rule, colony_delete_automod_rule, and colony_dry_run_automod_rule.

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?

It clearly implies when to use it: to atomically reorder an entire AutoMod rule set. However, it does not explicitly name alternatives or state when not to use it; the useful pointer to refetch with colony_list_automod_rules lives in the schema parameter description rather than in the tool description itself.

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