Skip to main content
Glama
cappyeo

discord-mcp

templates_recommend

Read-onlyIdempotent

Recommend verified Discord server templates from a public catalog for a natural-language request, returning a primary template plus up to three inspirations while rejecting unsafe or unverified options.

Instructions

Purpose: Recommend one verified primary Discord template and up to three complementary inspirations from a bundled public catalog for a natural-language server request.

When to use: Use this first for requests such as “build a professional gaming server”, “design a technology community”, or “find a FiveM roleplay template”. One request is enough; the tool performs local retrieval, bounded live verification, safety gates, and portfolio selection.

Safety: Read-only and always strict. Templates explicitly marked dirty (is_dirty: true), mismatched, malformed, unverified, NSFW, or oversized are rejected; an unknown dirty state (is_dirty: null) has medium confidence. Source permission risks are surfaced and penalized, but every template permission and overwrite is discarded and regenerated by discord-mcp; all third-party names/descriptions remain fenced in untrusted_text.

Returns: A primary template, 0–3 bounded inspirations, structural evidence, live provenance digests, explicit rejection reasons, composition policy, verification counts, and fenced third-party text. This tool never changes a guild.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
requestYesNatural-language description of the Discord server to design
preferred_primary_codeNoOptional public template code to prefer only when it matches the request and passes every live safety gate

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.28.0
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "$schema": "https://json-schema.org/draft/2020-12/schema",
      -    "additionalProperties": {},
      -    "properties": {
      -      "catalog_version": {
      -        "type": "string"
      -      },
      -      "composition_plan": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "discard_from_templates": {
      -            "items": {
      -              "enum": [
      -                "template_permissions",
      -                "unsafe_overwrites",
      -                "unknown_external_instructions"
      -              ],
      -              "type": "string"
      -            },
      -            "type": "array"
      -          },
      -          "generate_with_discord_mcp": {
      -            "items": {
      -              "enum": [
      -                "onboarding",
      -                "automod",
      -                "components_v2",
      -                "activity_evidence"
      -              ],
      -              "type": "string"
      -            },
      -            "type": "array"
      -          },
      -          "inspirations": {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "code": {
      -                  "maxLength": 100,
      -                  "minLength": 1,
      -                  "pattern": "^[a-zA-Z0-9_-]+$",
      -                  "type": "string"
      -                },
      -                "contributes": {
      -                  "items": {
      -                    "enum": [
      -                      "gaming",
      -                      "community",
      -                      "roleplay",
      -                      "lfg",
      -                      "platform",
      -                      "staff",
      -                      "support",
      -                      "events",
      -                      "technology",
      -                      "learning",
      -                      "art",
      -                      "music",
      -                      "voice",
      -                      "forum"
      -                    ],
      -                    "type": "string"
      -                  },
      -                  "type": "array"
      -                },
      -                "role": {
      -                  "const": "bounded_inspiration",
      -                  "type": "string"
      -                },
      -                "structural_contributions": {
      -                  "items": {
      -                    "enum": [
      -                      "categories",
      -                      "text_channels",
      -                      "voice_channels",
      -                      "forums",
      -                      "stages",
      -                      "custom_roles"
      -                    ],
      -                    "type": "string"
      -                  },
      -                  "type": "array"
      -                }
      -              },
      -              "required": [
      -                "code",
      -                "role",
      -                "contributes",
      -                "structural_contributions"
      -              ],
      -              "type": "object"
      -            },
      -            "type": "array"
      -          },
      -          "permission_policy": {
      -            "const": "regenerate_with_discord_mcp_safety_policy",
      -            "type": "string"
      -          },
      -          "primary": {
      -            "anyOf": [
      -              {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "code": {
      -                    "maxLength": 100,
      -                    "minLength": 1,
      -                    "pattern": "^[a-zA-Z0-9_-]+$",
      -                    "type": "string"
      -                  },
      -                  "role": {
      -                    "const": "primary_structural_reference",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "code",
      -                  "role"
      -                ],
      -                "type": "object"
      -              },
      -              {
      -                "type": "null"
      -              }
      -            ]
      -          }
      -        },
      -        "required": [
      -          "primary",
      -          "inspirations",
      -          "permission_policy",
      -          "discard_from_templates",
      -          "generate_with_discord_mcp"
      -        ],
      -        "type": "object"
      -      },
      -      "inspirations": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "blueprint": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "category_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "channel_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "forum_channel_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "nsfw_channel_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "other_channel_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "permission_overwrite_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "privileged_role_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "risky_permission_signals": {
      -                  "items": {
      -                    "additionalProperties": false,
      -                    "properties": {
      -                      "permission": {
      -                        "enum": [
      -                          "ADMINISTRATOR",
      -                          "MANAGE_GUILD",
      -                          "MANAGE_ROLES",
      -                          "MANAGE_CHANNELS",
      -                          "MANAGE_WEBHOOKS",
      -                          "KICK_MEMBERS",
      -                          "BAN_MEMBERS",
      -                          "MENTION_EVERYONE"
      -                        ],
      -                        "type": "string"
      -                      },
      -                      "role_count": {
      -                        "exclusiveMinimum": 0,
      -                        "maximum": 9007199254740991,
      -                        "type": "integer"
      -                      }
      -                    },
      -                    "required": [
      -                      "permission",
      -                      "role_count"
      -                    ],
      -                    "type": "object"
      -                  },
      -                  "type": "array"
      -                },
      -                "role_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "stage_channel_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "text_channel_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                },
      -                "voice_channel_count": {
      -                  "maximum": 9007199254740991,
      -                  "minimum": 0,
      -                  "type": "integer"
      -                }
      -              },
      -              "required": [
      -                "channel_count",
      -                "category_count",
      -                "text_channel_count",
      -                "voice_channel_count",
      -                "forum_channel_count",
      -                "stage_channel_count",
      -                "other_channel_count",
      -                "nsfw_channel_count",
      -                "permission_overwrite_count",
      -                "role_count",
      -                "privileged_role_count",
      -                "risky_permission_signals"
      -              ],
      -              "type": "object"
      -            },
      -            "code": {
      -              "maxLength": 100,
      -              "minLength": 1,
      -              "pattern": "^[a-zA-Z0-9_-]+$",
      -              "type": "string"
      -            },
      -            "contributes": {
      -              "items": {
      -                "enum": [
      -                  "gaming",
      -                  "community",
      -                  "roleplay",
      -                  "lfg",
      -                  "platform",
      -                  "staff",
      -                  "support",
      -                  "events",
      -                  "technology",
      -                  "learning",
      -                  "art",
      -                  "music",
      -                  "voice",
      -                  "forum"
      -                ],
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "effective_capabilities": {
      -              "items": {
      -                "enum": [
      -                  "gaming",
      -                  "community",
      -                  "roleplay",
      -                  "lfg",
      -                  "platform",
      -                  "staff",
      -                  "support",
      -                  "events",
      -                  "technology",
      -                  "learning",
      -                  "art",
      -                  "music",
      -                  "voice",
      -                  "forum"
      -                ],
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "matched_capabilities": {
      -              "items": {
      -                "enum": [
      -                  "gaming",
      -                  "community",
      -                  "roleplay",
      -                  "lfg",
      -                  "platform",
      -                  "staff",
      -                  "support",
      -                  "events",
      -                  "technology",
      -                  "learning",
      -                  "art",
      -                  "music",
      -                  "voice",
      -                  "forum"
      -                ],
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "provenance": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "evidence_digest": {
      -                  "pattern": "^sha256:[a-f0-9]{64}$",
      -                  "type": "string"
      -                },
      -                "fetched_at": {
      -                  "format": "date-time",
      -                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      -                  "type": "string"
      -                },
      -                "source_guild": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "icon_hash": {
      -                      "anyOf": [
      -                        {
      -                          "type": "string"
      -                        },
      -                        {
      -                          "type": "null"
      -                        }
      -                      ]
      -                    },
      -                    "id": {
      -                      "pattern": "^\\d{17,20}$",
      -                      "type": "string"
      -                    },
      -                    "preferred_locale": {
      -                      "anyOf": [
      -                        {
      -                          "type": "string"
      -                        },
      -                        {
      -                          "type": "null"
      -                        }
      -                      ]
      -                    },
      -                    "snapshot_id": {
      -                      "anyOf": [
      -                        {
      -                          "type": "string"
      -                        },
      -                        {
      -                          "type": "null"
      -                        }
      -                      ]
      -                    }
      -                  },
      -                  "required": [
      -                    "id",
      -                    "snapshot_id",
      -                    "icon_hash",
      -                    "preferred_locale"
      -                  ],
      -                  "type": "object"
      -                }
      -              },
      -              "required": [
      -                "evidence_digest",
      -                "fetched_at",
      -                "source_guild"
      -              ],
      -              "type": "object"
      -            },
      -            "quality": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "code_match": {
      -                  "const": true,
      -                  "type": "boolean"
      -                },
      -                "confidence": {
      -                  "enum": [
      -                    "high",
      -                    "medium"
      -                  ],
      -                  "type": "string"
      -                },
      -                "marked_dirty": {
      -                  "anyOf": [
      -                    {
      -                      "type": "boolean"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "permission_handling": {
      -                  "const": "discarded_and_regenerated",
      -                  "type": "string"
      -                },
      -                "risky_permission_signals": {
      -                  "items": {
      -                    "type": "string"
      -                  },
      -                  "type": "array"
      -                },
      -                "verified": {
      -                  "const": true,
      -                  "type": "boolean"
      -                }
      -              },
      -              "required": [
      -                "verified",
      -                "code_match",
      -                "marked_dirty",
      -                "confidence",
      -                "permission_handling",
      -                "risky_permission_signals"
      -              ],
      -              "type": "object"
      -            },
      -            "reasons": {
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "score": {
      -              "maximum": 100,
      -              "minimum": 0,
      -              "type": "number"
      -            },
      -            "score_breakdown": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "intent_fit": {
      -                  "maximum": 45,
      -                  "minimum": 0,
      -                  "type": "number"
      -                },
      -                "metadata_quality": {
      -                  "maximum": 5,
      -                  "minimum": 0,
      -                  "type": "number"
      -                },
      -                "structural_quality": {
      -                  "maximum": 30,
      -                  "minimum": 0,
      -                  "type": "number"
      -                },
      -                "total": {
      -                  "maximum": 100,
      -                  "minimum": 0,
      -                  "type": "number"
      -                },
      -                "usage": {
      -                  "maximum": 5,
      -                  "minimum": 0,
      -                  "type": "number"
      -                },
      -                "verified_safety": {
      -                  "maximum": 15,
      -                  "minimum": 0,
      -                  "type": "number"
      -                }
      -              },
      -              "required": [
      -                "intent_fit",
      -                "structural_quality",
      -                "verified_safety",
      -                "metadata_quality",
      -                "usage",
      -                "total"
      -              ],
      -              "type": "object"
      -            },
      -            "structural_contributions": {
      -              "items": {
      -                "enum": [
      -                  "categories",
      -                  "text_channels",
      -                  "voice_channels",
      -                  "forums",
      -                  "stages",
      -                  "custom_roles"
      -                ],
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "use_url": {
      -              "format": "uri",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "code",
      -            "use_url",
      -            "score",
      -            "matched_capabilities",
      -            "effective_capabilities",
      -            "contributes",
      -            "structural_contributions",
      -            "reasons",
      -            "blueprint",
      -            "quality",
      -            "score_breakdown",
      -            "provenance"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 3,
      -        "type": "array"
      -      },
      -      "intent": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "capabilities": {
      -            "items": {
      -              "enum": [
      -                "gaming",
      -                "community",
      -                "roleplay",
      -                "lfg",
      -                "platform",
      -                "staff",
      -                "support",
      -                "events",
      -                "technology",
      -                "learning",
      -                "art",
      -                "music",
      -                "voice",
      -                "forum"
      -              ],
      -              "type": "string"
      -            },
      -            "type": "array"
      -          }
      -        },
      -        "required": [
      -          "capabilities"
      -        ],
      -        "type": "object"
      -      },
      -      "primary": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "blueprint": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "category_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "channel_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "forum_channel_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "nsfw_channel_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "other_channel_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "permission_overwrite_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "privileged_role_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "risky_permission_signals": {
      -                    "items": {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "permission": {
      -                          "enum": [
      -                            "ADMINISTRATOR",
      -                            "MANAGE_GUILD",
      -                            "MANAGE_ROLES",
      -                            "MANAGE_CHANNELS",
      -                            "MANAGE_WEBHOOKS",
      -                            "KICK_MEMBERS",
      -                            "BAN_MEMBERS",
      -                            "MENTION_EVERYONE"
      -                          ],
      -                          "type": "string"
      -                        },
      -                        "role_count": {
      -                          "exclusiveMinimum": 0,
      -                          "maximum": 9007199254740991,
      -                          "type": "integer"
      -                        }
      -                      },
      -                      "required": [
      -                        "permission",
      -                        "role_count"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    "type": "array"
      -                  },
      -                  "role_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "stage_channel_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "text_channel_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  },
      -                  "voice_channel_count": {
      -                    "maximum": 9007199254740991,
      -                    "minimum": 0,
      -                    "type": "integer"
      -                  }
      -                },
      -                "required": [
      -                  "channel_count",
      -                  "category_count",
      -                  "text_channel_count",
      -                  "voice_channel_count",
      -                  "forum_channel_count",
      -                  "stage_channel_count",
      -                  "other_channel_count",
      -                  "nsfw_channel_count",
      -                  "permission_overwrite_count",
      -                  "role_count",
      -                  "privileged_role_count",
      -                  "risky_permission_signals"
      -                ],
      -                "type": "object"
      -              },
      -              "code": {
      -                "maxLength": 100,
      -                "minLength": 1,
      -                "pattern": "^[a-zA-Z0-9_-]+$",
      -                "type": "string"
      -              },
      -              "contributes": {
      -                "items": {
      -                  "enum": [
      -                    "gaming",
      -                    "community",
      -                    "roleplay",
      -                    "lfg",
      -                    "platform",
      -                    "staff",
      -                    "support",
      -                    "events",
      -                    "technology",
      -                    "learning",
      -                    "art",
      -                    "music",
      -                    "voice",
      -                    "forum"
      -                  ],
      -                  "type": "string"
      -                },
      -                "type": "array"
      -              },
      -              "effective_capabilities": {
      -                "items": {
      -                  "enum": [
      -                    "gaming",
      -                    "community",
      -                    "roleplay",
      -                    "lfg",
      -                    "platform",
      -                    "staff",
      -                    "support",
      -                    "events",
      -                    "technology",
      -                    "learning",
      -                    "art",
      -                    "music",
      -                    "voice",
      -                    "forum"
      -                  ],
      -                  "type": "string"
      -                },
      -                "type": "array"
      -              },
      -              "matched_capabilities": {
      -                "items": {
      -                  "enum": [
      -                    "gaming",
      -                    "community",
      -                    "roleplay",
      -                    "lfg",
      -                    "platform",
      -                    "staff",
      -                    "support",
      -                    "events",
      -                    "technology",
      -                    "learning",
      -                    "art",
      -                    "music",
      -                    "voice",
      -                    "forum"
      -                  ],
      -                  "type": "string"
      -                },
      -                "type": "array"
      -              },
      -              "provenance": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "evidence_digest": {
      -                    "pattern": "^sha256:[a-f0-9]{64}$",
      -                    "type": "string"
      -                  },
      -                  "fetched_at": {
      -                    "format": "date-time",
      -                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      -                    "type": "string"
      -                  },
      -                  "source_guild": {
      -                    "additionalProperties": false,
      -                    "properties": {
      -                      "icon_hash": {
      -                        "anyOf": [
      -                          {
      -                            "type": "string"
      -                          },
      -                          {
      -                            "type": "null"
      -                          }
      -                        ]
      -                      },
      -                      "id": {
      -                        "pattern": "^\\d{17,20}$",
      -                        "type": "string"
      -                      },
      -                      "preferred_locale": {
      -                        "anyOf": [
      -                          {
      -                            "type": "string"
      -                          },
      -                          {
      -                            "type": "null"
      -                          }
      -                        ]
      -                      },
      -                      "snapshot_id": {
      -                        "anyOf": [
      -                          {
      -                            "type": "string"
      -                          },
      -                          {
      -                            "type": "null"
      -                          }
      -                        ]
      -                      }
      -                    },
      -                    "required": [
      -                      "id",
      -                      "snapshot_id",
      -                      "icon_hash",
      -                      "preferred_locale"
      -                    ],
      -                    "type": "object"
      -                  }
      -                },
      -                "required": [
      -                  "evidence_digest",
      -                  "fetched_at",
      -                  "source_guild"
      -                ],
      -                "type": "object"
      -              },
      -              "quality": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "code_match": {
      -                    "const": true,
      -                    "type": "boolean"
      -                  },
      -                  "confidence": {
      -                    "enum": [
      -                      "high",
      -                      "medium"
      -                    ],
      -                    "type": "string"
      -                  },
      -                  "marked_dirty": {
      -                    "anyOf": [
      -                      {
      -                        "type": "boolean"
      -                      },
      -                      {
      -                        "type": "null"
      -                      }
      -                    ]
      -                  },
      -                  "permission_handling": {
      -                    "const": "discarded_and_regenerated",
      -                    "type": "string"
      -                  },
      -                  "risky_permission_signals": {
      -                    "items": {
      -                      "type": "string"
      -                    },
      -                    "type": "array"
      -                  },
      -                  "verified": {
      -                    "const": true,
      -                    "type": "boolean"
      -                  }
      -                },
      -                "required": [
      -                  "verified",
      -                  "code_match",
      -                  "marked_dirty",
      -                  "confidence",
      -                  "permission_handling",
      -                  "risky_permission_signals"
      -                ],
      -                "type": "object"
      -              },
      -              "reasons": {
      -                "items": {
      -                  "type": "string"
      -                },
      -                "type": "array"
      -              },
      -              "score": {
      -                "maximum": 100,
      -                "minimum": 0,
      -                "type": "number"
      -              },
      -              "score_breakdown": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "intent_fit": {
      -                    "maximum": 45,
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "metadata_quality": {
      -                    "maximum": 5,
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "structural_quality": {
      -                    "maximum": 30,
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "total": {
      -                    "maximum": 100,
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "usage": {
      -                    "maximum": 5,
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "verified_safety": {
      -                    "maximum": 15,
      -                    "minimum": 0,
      -                    "type": "number"
      -                  }
      -                },
      -                "required": [
      -                  "intent_fit",
      -                  "structural_quality",
      -                  "verified_safety",
      -                  "metadata_quality",
      -                  "usage",
      -                  "total"
      -                ],
      -                "type": "object"
      -              },
      -              "structural_contributions": {
      -                "items": {
      -                  "enum": [
      -                    "categories",
      -                    "text_channels",
      -                    "voice_channels",
      -                    "forums",
      -                    "stages",
      -                    "custom_roles"
      -                  ],
      -                  "type": "string"
      -                },
      -                "type": "array"
      -              },
      -              "use_url": {
      -                "format": "uri",
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "code",
      -              "use_url",
      -              "score",
      -              "matched_capabilities",
      -              "effective_capabilities",
      -              "contributes",
      -              "structural_contributions",
      -              "reasons",
      -              "blueprint",
      -              "quality",
      -              "score_breakdown",
      -              "provenance"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "rejected_candidates": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "code": {
      -              "maxLength": 100,
      -              "minLength": 1,
      -              "pattern": "^[a-zA-Z0-9_-]+$",
      -              "type": "string"
      -            },
      -            "provenance": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "evidence_digest": {
      -                  "pattern": "^sha256:[a-f0-9]{64}$",
      -                  "type": "string"
      -                },
      -                "fetched_at": {
      -                  "format": "date-time",
      -                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      -                  "type": "string"
      -                },
      -                "source_guild": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "icon_hash": {
      -                      "anyOf": [
      -                        {
      -                          "type": "string"
      -                        },
      -                        {
      -                          "type": "null"
      -                        }
      -                      ]
      -                    },
      -                    "id": {
      -                      "pattern": "^\\d{17,20}$",
      -                      "type": "string"
      -                    },
      -                    "preferred_locale": {
      -                      "anyOf": [
      -                        {
      -                          "type": "string"
      -                        },
      -                        {
      -                          "type": "null"
      -                        }
      -                      ]
      -                    },
      -                    "snapshot_id": {
      -                      "anyOf": [
      -                        {
      -                          "type": "string"
      -                        },
      -                        {
      -                          "type": "null"
      -                        }
      -                      ]
      -                    }
      -                  },
      -                  "required": [
      -                    "id",
      -                    "snapshot_id",
      -                    "icon_hash",
      -                    "preferred_locale"
      -                  ],
      -                  "type": "object"
      -                }
      -              },
      -              "required": [
      -                "evidence_digest",
      -                "fetched_at",
      -                "source_guild"
      -              ],
      -              "type": "object"
      -            },
      -            "reasons": {
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "code",
      -            "reasons"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "request": {
      -        "type": "string"
      -      },
      -      "status": {
      -        "enum": [
      -          "ready",
      -          "partial",
      -          "no_match"
      -        ],
      -        "type": "string"
      -      },
      -      "untrusted_text": {
      -        "type": "string"
      -      },
      -      "verification": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "cache_hits": {
      -            "maximum": 8,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "candidates_inspected": {
      -            "maximum": 8,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "catalog_records": {
      -            "maximum": 9007199254740991,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "metadata_candidates": {
      -            "maximum": 24,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "metadata_capped": {
      -            "type": "boolean"
      -          },
      -          "preferred_primary_considered": {
      -            "type": "boolean"
      -          },
      -          "preferred_primary_selected": {
      -            "type": "boolean"
      -          },
      -          "rest_failed": {
      -            "maximum": 8,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "rest_requests": {
      -            "maximum": 8,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "rest_verified": {
      -            "maximum": 8,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "safety_rejected": {
      -            "maximum": 8,
      -            "minimum": 0,
      -            "type": "integer"
      -          }
      -        },
      -        "required": [
      -          "catalog_records",
      -          "metadata_candidates",
      -          "metadata_capped",
      -          "candidates_inspected",
      -          "rest_requests",
      -          "cache_hits",
      -          "rest_verified",
      -          "rest_failed",
      -          "safety_rejected",
      -          "preferred_primary_considered",
      -          "preferred_primary_selected"
      -        ],
      -        "type": "object"
      -      }
      -    },
      -    "required": [
      -      "status",
      -      "request",
      -      "catalog_version",
      -      "intent",
      -      "primary",
      -      "inspirations",
      -      "composition_plan",
      -      "verification",
      -      "rejected_candidates",
      -      "untrusted_text"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "properties": {
      -      "category": {
      -        "enum": [
      -          "client",
      -          "server"
      -        ],
      -        "type": "string"
      -      },
      -      "code": {
      -        "type": "string"
      -      },
      -      "recovery_hint": {
      -        "type": "string"
      -      },
      -      "retriable": {
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "code",
      -      "retriable",
      -      "category",
      -      "recovery_hint"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "$schema": "https://json-schema.org/draft/2020-12/schema",
      +    "additionalProperties": {},
      +    "properties": {
      +      "catalog_version": {
      +        "type": "string"
      +      },
      +      "composition_plan": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "discard_from_templates": {
      +            "items": {
      +              "enum": [
      +                "template_permissions",
      +                "unsafe_overwrites",
      +                "unknown_external_instructions"
      +              ],
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "generate_with_discord_mcp": {
      +            "items": {
      +              "enum": [
      +                "onboarding",
      +                "automod",
      +                "components_v2",
      +                "activity_evidence"
      +              ],
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "inspirations": {
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "code": {
      +                  "maxLength": 100,
      +                  "minLength": 1,
      +                  "pattern": "^[a-zA-Z0-9_-]+$",
      +                  "type": "string"
      +                },
      +                "contributes": {
      +                  "items": {
      +                    "enum": [
      +                      "gaming",
      +                      "community",
      +                      "roleplay",
      +                      "lfg",
      +                      "platform",
      +                      "staff",
      +                      "support",
      +                      "events",
      +                      "technology",
      +                      "learning",
      +                      "art",
      +                      "music",
      +                      "voice",
      +                      "forum"
      +                    ],
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "role": {
      +                  "const": "bounded_inspiration",
      +                  "type": "string"
      +                },
      +                "structural_contributions": {
      +                  "items": {
      +                    "enum": [
      +                      "categories",
      +                      "text_channels",
      +                      "voice_channels",
      +                      "forums",
      +                      "stages",
      +                      "custom_roles"
      +                    ],
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                }
      +              },
      +              "required": [
      +                "code",
      +                "role",
      +                "contributes",
      +                "structural_contributions"
      +              ],
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "permission_policy": {
      +            "const": "regenerate_with_discord_mcp_safety_policy",
      +            "type": "string"
      +          },
      +          "primary": {
      +            "anyOf": [
      +              {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "code": {
      +                    "maxLength": 100,
      +                    "minLength": 1,
      +                    "pattern": "^[a-zA-Z0-9_-]+$",
      +                    "type": "string"
      +                  },
      +                  "role": {
      +                    "const": "primary_structural_reference",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "code",
      +                  "role"
      +                ],
      +                "type": "object"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          }
      +        },
      +        "required": [
      +          "primary",
      +          "inspirations",
      +          "permission_policy",
      +          "discard_from_templates",
      +          "generate_with_discord_mcp"
      +        ],
      +        "type": "object"
      +      },
      +      "inspirations": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "blueprint": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "category_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "channel_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "forum_channel_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "nsfw_channel_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "other_channel_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "permission_overwrite_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "privileged_role_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "risky_permission_signals": {
      +                  "items": {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "permission": {
      +                        "enum": [
      +                          "ADMINISTRATOR",
      +                          "MANAGE_GUILD",
      +                          "MANAGE_ROLES",
      +                          "MANAGE_CHANNELS",
      +                          "MANAGE_WEBHOOKS",
      +                          "KICK_MEMBERS",
      +                          "BAN_MEMBERS",
      +                          "MENTION_EVERYONE"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      "role_count": {
      +                        "exclusiveMinimum": 0,
      +                        "maximum": 9007199254740991,
      +                        "type": "integer"
      +                      }
      +                    },
      +                    "required": [
      +                      "permission",
      +                      "role_count"
      +                    ],
      +                    "type": "object"
      +                  },
      +                  "type": "array"
      +                },
      +                "role_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "stage_channel_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "text_channel_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                "voice_channel_count": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": 0,
      +                  "type": "integer"
      +                }
      +              },
      +              "required": [
      +                "channel_count",
      +                "category_count",
      +                "text_channel_count",
      +                "voice_channel_count",
      +                "forum_channel_count",
      +                "stage_channel_count",
      +                "other_channel_count",
      +                "nsfw_channel_count",
      +                "permission_overwrite_count",
      +                "role_count",
      +                "privileged_role_count",
      +                "risky_permission_signals"
      +              ],
      +              "type": "object"
      +            },
      +            "code": {
      +              "maxLength": 100,
      +              "minLength": 1,
      +              "pattern": "^[a-zA-Z0-9_-]+$",
      +              "type": "string"
      +            },
      +            "contributes": {
      +              "items": {
      +                "enum": [
      +                  "gaming",
      +                  "community",
      +                  "roleplay",
      +                  "lfg",
      +                  "platform",
      +                  "staff",
      +                  "support",
      +                  "events",
      +                  "technology",
      +                  "learning",
      +                  "art",
      +                  "music",
      +                  "voice",
      +                  "forum"
      +                ],
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "effective_capabilities": {
      +              "items": {
      +                "enum": [
      +                  "gaming",
      +                  "community",
      +                  "roleplay",
      +                  "lfg",
      +                  "platform",
      +                  "staff",
      +                  "support",
      +                  "events",
      +                  "technology",
      +                  "learning",
      +                  "art",
      +                  "music",
      +                  "voice",
      +                  "forum"
      +                ],
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "matched_capabilities": {
      +              "items": {
      +                "enum": [
      +                  "gaming",
      +                  "community",
      +                  "roleplay",
      +                  "lfg",
      +                  "platform",
      +                  "staff",
      +                  "support",
      +                  "events",
      +                  "technology",
      +                  "learning",
      +                  "art",
      +                  "music",
      +                  "voice",
      +                  "forum"
      +                ],
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "provenance": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "evidence_digest": {
      +                  "pattern": "^sha256:[a-f0-9]{64}$",
      +                  "type": "string"
      +                },
      +                "fetched_at": {
      +                  "format": "date-time",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +                  "type": "string"
      +                },
      +                "source_guild": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "icon_hash": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    },
      +                    "id": {
      +                      "pattern": "^\\d{17,20}$",
      +                      "type": "string"
      +                    },
      +                    "preferred_locale": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    },
      +                    "snapshot_id": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    }
      +                  },
      +                  "required": [
      +                    "id",
      +                    "snapshot_id",
      +                    "icon_hash",
      +                    "preferred_locale"
      +                  ],
      +                  "type": "object"
      +                }
      +              },
      +              "required": [
      +                "evidence_digest",
      +                "fetched_at",
      +                "source_guild"
      +              ],
      +              "type": "object"
      +            },
      +            "quality": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "code_match": {
      +                  "const": true,
      +                  "type": "boolean"
      +                },
      +                "confidence": {
      +                  "enum": [
      +                    "high",
      +                    "medium"
      +                  ],
      +                  "type": "string"
      +                },
      +                "marked_dirty": {
      +                  "type": [
      +                    "boolean",
      +                    "null"
      +                  ]
      +                },
      +                "permission_handling": {
      +                  "const": "discarded_and_regenerated",
      +                  "type": "string"
      +                },
      +                "risky_permission_signals": {
      +                  "items": {
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "verified": {
      +                  "const": true,
      +                  "type": "boolean"
      +                }
      +              },
      +              "required": [
      +                "verified",
      +                "code_match",
      +                "marked_dirty",
      +                "confidence",
      +                "permission_handling",
      +                "risky_permission_signals"
      +              ],
      +              "type": "object"
      +            },
      +            "reasons": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "score": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "score_breakdown": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "intent_fit": {
      +                  "maximum": 45,
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "metadata_quality": {
      +                  "maximum": 5,
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "structural_quality": {
      +                  "maximum": 30,
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "total": {
      +                  "maximum": 100,
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "usage": {
      +                  "maximum": 5,
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "verified_safety": {
      +                  "maximum": 15,
      +                  "minimum": 0,
      +                  "type": "number"
      +                }
      +              },
      +              "required": [
      +                "intent_fit",
      +                "structural_quality",
      +                "verified_safety",
      +                "metadata_quality",
      +                "usage",
      +                "total"
      +              ],
      +              "type": "object"
      +            },
      +            "structural_contributions": {
      +              "items": {
      +                "enum": [
      +                  "categories",
      +                  "text_channels",
      +                  "voice_channels",
      +                  "forums",
      +                  "stages",
      +                  "custom_roles"
      +                ],
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "use_url": {
      +              "format": "uri",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "code",
      +            "use_url",
      +            "score",
      +            "matched_capabilities",
      +            "effective_capabilities",
      +            "contributes",
      +            "structural_contributions",
      +            "reasons",
      +            "blueprint",
      +            "quality",
      +            "score_breakdown",
      +            "provenance"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 3,
      +        "type": "array"
      +      },
      +      "intent": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "capabilities": {
      +            "items": {
      +              "enum": [
      +                "gaming",
      +                "community",
      +                "roleplay",
      +                "lfg",
      +                "platform",
      +                "staff",
      +                "support",
      +                "events",
      +                "technology",
      +                "learning",
      +                "art",
      +                "music",
      +                "voice",
      +                "forum"
      +              ],
      +              "type": "string"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "required": [
      +          "capabilities"
      +        ],
      +        "type": "object"
      +      },
      +      "primary": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "blueprint": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "category_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "channel_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "forum_channel_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "nsfw_channel_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "other_channel_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "permission_overwrite_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "privileged_role_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "risky_permission_signals": {
      +                    "items": {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "permission": {
      +                          "enum": [
      +                            "ADMINISTRATOR",
      +                            "MANAGE_GUILD",
      +                            "MANAGE_ROLES",
      +                            "MANAGE_CHANNELS",
      +                            "MANAGE_WEBHOOKS",
      +                            "KICK_MEMBERS",
      +                            "BAN_MEMBERS",
      +                            "MENTION_EVERYONE"
      +                          ],
      +                          "type": "string"
      +                        },
      +                        "role_count": {
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        }
      +                      },
      +                      "required": [
      +                        "permission",
      +                        "role_count"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "type": "array"
      +                  },
      +                  "role_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "stage_channel_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "text_channel_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "voice_channel_count": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  }
      +                },
      +                "required": [
      +                  "channel_count",
      +                  "category_count",
      +                  "text_channel_count",
      +                  "voice_channel_count",
      +                  "forum_channel_count",
      +                  "stage_channel_count",
      +                  "other_channel_count",
      +                  "nsfw_channel_count",
      +                  "permission_overwrite_count",
      +                  "role_count",
      +                  "privileged_role_count",
      +                  "risky_permission_signals"
      +                ],
      +                "type": "object"
      +              },
      +              "code": {
      +                "maxLength": 100,
      +                "minLength": 1,
      +                "pattern": "^[a-zA-Z0-9_-]+$",
      +                "type": "string"
      +              },
      +              "contributes": {
      +                "items": {
      +                  "enum": [
      +                    "gaming",
      +                    "community",
      +                    "roleplay",
      +                    "lfg",
      +                    "platform",
      +                    "staff",
      +                    "support",
      +                    "events",
      +                    "technology",
      +                    "learning",
      +                    "art",
      +                    "music",
      +                    "voice",
      +                    "forum"
      +                  ],
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "effective_capabilities": {
      +                "items": {
      +                  "enum": [
      +                    "gaming",
      +                    "community",
      +                    "roleplay",
      +                    "lfg",
      +                    "platform",
      +                    "staff",
      +                    "support",
      +                    "events",
      +                    "technology",
      +                    "learning",
      +                    "art",
      +                    "music",
      +                    "voice",
      +                    "forum"
      +                  ],
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "matched_capabilities": {
      +                "items": {
      +                  "enum": [
      +                    "gaming",
      +                    "community",
      +                    "roleplay",
      +                    "lfg",
      +                    "platform",
      +                    "staff",
      +                    "support",
      +                    "events",
      +                    "technology",
      +                    "learning",
      +                    "art",
      +                    "music",
      +                    "voice",
      +                    "forum"
      +                  ],
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "provenance": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "evidence_digest": {
      +                    "pattern": "^sha256:[a-f0-9]{64}$",
      +                    "type": "string"
      +                  },
      +                  "fetched_at": {
      +                    "format": "date-time",
      +                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +                    "type": "string"
      +                  },
      +                  "source_guild": {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "icon_hash": {
      +                        "type": [
      +                          "string",
      +                          "null"
      +                        ]
      +                      },
      +                      "id": {
      +                        "pattern": "^\\d{17,20}$",
      +                        "type": "string"
      +                      },
      +                      "preferred_locale": {
      +                        "type": [
      +                          "string",
      +                          "null"
      +                        ]
      +                      },
      +                      "snapshot_id": {
      +                        "type": [
      +                          "string",
      +                          "null"
      +                        ]
      +                      }
      +                    },
      +                    "required": [
      +                      "id",
      +                      "snapshot_id",
      +                      "icon_hash",
      +                      "preferred_locale"
      +                    ],
      +                    "type": "object"
      +                  }
      +                },
      +                "required": [
      +                  "evidence_digest",
      +                  "fetched_at",
      +                  "source_guild"
      +                ],
      +                "type": "object"
      +              },
      +              "quality": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "code_match": {
      +                    "const": true,
      +                    "type": "boolean"
      +                  },
      +                  "confidence": {
      +                    "enum": [
      +                      "high",
      +                      "medium"
      +                    ],
      +                    "type": "string"
      +                  },
      +                  "marked_dirty": {
      +                    "type": [
      +                      "boolean",
      +                      "null"
      +                    ]
      +                  },
      +                  "permission_handling": {
      +                    "const": "discarded_and_regenerated",
      +                    "type": "string"
      +                  },
      +                  "risky_permission_signals": {
      +                    "items": {
      +                      "type": "string"
      +                    },
      +                    "type": "array"
      +                  },
      +                  "verified": {
      +                    "const": true,
      +                    "type": "boolean"
      +                  }
      +                },
      +                "required": [
      +                  "verified",
      +                  "code_match",
      +                  "marked_dirty",
      +                  "confidence",
      +                  "permission_handling",
      +                  "risky_permission_signals"
      +                ],
      +                "type": "object"
      +              },
      +              "reasons": {
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "score": {
      +                "maximum": 100,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "score_breakdown": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "intent_fit": {
      +                    "maximum": 45,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "metadata_quality": {
      +                    "maximum": 5,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "structural_quality": {
      +                    "maximum": 30,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "total": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "usage": {
      +                    "maximum": 5,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "verified_safety": {
      +                    "maximum": 15,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  }
      +                },
      +                "required": [
      +                  "intent_fit",
      +                  "structural_quality",
      +                  "verified_safety",
      +                  "metadata_quality",
      +                  "usage",
      +                  "total"
      +                ],
      +                "type": "object"
      +              },
      +              "structural_contributions": {
      +                "items": {
      +                  "enum": [
      +                    "categories",
      +                    "text_channels",
      +                    "voice_channels",
      +                    "forums",
      +                    "stages",
      +                    "custom_roles"
      +                  ],
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "use_url": {
      +                "format": "uri",
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "code",
      +              "use_url",
      +              "score",
      +              "matched_capabilities",
      +              "effective_capabilities",
      +              "contributes",
      +              "structural_contributions",
      +              "reasons",
      +              "blueprint",
      +              "quality",
      +              "score_breakdown",
      +              "provenance"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "rejected_candidates": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "code": {
      +              "maxLength": 100,
      +              "minLength": 1,
      +              "pattern": "^[a-zA-Z0-9_-]+$",
      +              "type": "string"
      +            },
      +            "provenance": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "evidence_digest": {
      +                  "pattern": "^sha256:[a-f0-9]{64}$",
      +                  "type": "string"
      +                },
      +                "fetched_at": {
      +                  "format": "date-time",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +                  "type": "string"
      +                },
      +                "source_guild": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "icon_hash": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    },
      +                    "id": {
      +                      "pattern": "^\\d{17,20}$",
      +                      "type": "string"
      +                    },
      +                    "preferred_locale": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    },
      +                    "snapshot_id": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    }
      +                  },
      +                  "required": [
      +                    "id",
      +                    "snapshot_id",
      +                    "icon_hash",
      +                    "preferred_locale"
      +                  ],
      +                  "type": "object"
      +                }
      +              },
      +              "required": [
      +                "evidence_digest",
      +                "fetched_at",
      +                "source_guild"
      +              ],
      +              "type": "object"
      +            },
      +            "reasons": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "code",
      +            "reasons"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "request": {
      +        "type": "string"
      +      },
      +      "status": {
      +        "enum": [
      +          "ready",
      +          "partial",
      +          "no_match"
      +        ],
      +        "type": "string"
      +      },
      +      "untrusted_text": {
      +        "type": "string"
      +      },
      +      "verification": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "cache_hits": {
      +            "maximum": 8,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "candidates_inspected": {
      +            "maximum": 8,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "catalog_records": {
      +            "maximum": 9007199254740991,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "metadata_candidates": {
      +            "maximum": 24,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "metadata_capped": {
      +            "type": "boolean"
      +          },
      +          "preferred_primary_considered": {
      +            "type": "boolean"
      +          },
      +          "preferred_primary_selected": {
      +            "type": "boolean"
      +          },
      +          "rest_failed": {
      +            "maximum": 8,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "rest_requests": {
      +            "maximum": 8,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "rest_verified": {
      +            "maximum": 8,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "safety_rejected": {
      +            "maximum": 8,
      +            "minimum": 0,
      +            "type": "integer"
      +          }
      +        },
      +        "required": [
      +          "catalog_records",
      +          "metadata_candidates",
      +          "metadata_capped",
      +          "candidates_inspected",
      +          "rest_requests",
      +          "cache_hits",
      +          "rest_verified",
      +          "rest_failed",
      +          "safety_rejected",
      +          "preferred_primary_considered",
      +          "preferred_primary_selected"
      +        ],
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "status",
      +      "request",
      +      "catalog_version",
      +      "intent",
      +      "primary",
      +      "inspirations",
      +      "composition_plan",
      +      "verification",
      +      "rejected_candidates",
      +      "untrusted_text"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "category": {
      +        "enum": [
      +          "client",
      +          "server"
      +        ],
      +        "type": "string"
      +      },
      +      "code": {
      +        "type": "string"
      +      },
      +      "recovery_hint": {
      +        "type": "string"
      +      },
      +      "retriable": {
      +        "type": "boolean"
      +      }
      +    },
      +    "required": [
      +      "code",
      +      "retriable",
      +      "category",
      +      "recovery_hint"
      +    ],
      +    "type": "object"
      +  }
      +]
  2. First observedv0.22.0

TDQS

A4.9/5.0
Behavior5/5

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

The description goes well beyond the annotations. It discloses that the tool is read-only and strict, explains the rejection criteria (dirty, mismatched, malformed, unverified, NSFW, oversized), clarifies the unknown dirty state confidence level, and states that permissions/overwrites are discarded and regenerated. It also explicitly says 'This tool never changes a guild,' which reinforces the readOnlyHint and adds operational context. No contradiction with annotations.

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 well-structured with clear sections (Purpose, When to use, Safety, Returns). Every sentence earns its place: purpose, usage timing, safety behavior, and return contents are all covered without redundancy. The front-loaded purpose statement immediately tells the agent what the tool does.

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?

The tool has an output schema, so return values are already documented. The description adds the key contextual information an agent needs: when to use it first, what safety gates apply, what gets rejected, and what the output contains (primary template, inspirations, evidence, provenance digests, rejection reasons). For a recommendation tool with 2 params and rich annotations, this is complete.

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 100%, so the baseline is 3. The description adds meaning by explaining that 'request' is a natural-language description of the server to design, and that 'preferred_primary_code' is only used when it matches the request and passes every live safety gate. This adds behavioral nuance beyond the schema's field descriptions, particularly the conditional preference semantics.

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 a specific verb ('Recommend'), a specific resource ('one verified primary Discord template and up to three complementary inspirations'), and a clear scope ('from a bundled public catalog for a natural-language server request'). It distinguishes itself from sibling template tools like templates_get, templates_list, templates_inspect, and templates_diff by focusing on recommendation/selection rather than retrieval or inspection.

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?

The description explicitly says 'Use this first' for natural-language server design requests and gives concrete examples ('build a professional gaming server', 'design a technology community', 'find a FiveM roleplay template'). It also states that one request is enough and describes the internal pipeline (local retrieval, bounded live verification, safety gates, portfolio selection), which helps an agent decide when to invoke this tool versus alternatives.

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

Deploy Server

Other Tools