Search Templates
Search the public Charming template directory by keyword.
MCP name: search_templates
Tool contract
{
"annotations": {
"destructiveHint": false,
"openWorldHint": false,
"readOnlyHint": true,
"title": "Search Templates"
},
"description": "Search the public Charming template directory by keyword. Use this to check for an existing template before calling create_app, or when the user asks what templates exist. Returns, per template: displayName, description, starterPrompt, copyUrl (open it to mint your own independent copy — no login needed to start), templatePageUrl (the indexable page a human can read), builders (distinct signed-in accounts who kept a copy), and creatorHandle.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"limit": {
"description": "Max templates to return (1-100).",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"query": {
"description": "Case-insensitive match against display name, description, and starter prompt.",
"type": "string"
},
"sort": {
"description": "`builders` ranks by builders reached; `recent` (default) is newest-listed first.",
"enum": [
"builders",
"recent"
],
"type": "string"
}
},
"type": "object"
},
"name": "search_templates",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"ok": {
"const": true,
"description": "Indicates success. Errors arrive as content with isError:true.",
"type": "boolean"
},
"templates": {
"description": "Listed templates matching the query, most relevant first per `sort`.",
"items": {
"additionalProperties": false,
"properties": {
"builders": {
"description": "Distinct signed-in accounts that kept a copy of this template.",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"type": "integer"
},
"copyUrl": {
"description": "The app's own live URL. Opening it as a non-owner mints the visitor their own independent copy (no login required to view; signing up is what attributes a builder). Free of write-capable `?t=` tokens.",
"type": "string"
},
"creatorHandle": {
"description": "The template's creator handle.",
"type": "string"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The creator's search-friendly summary."
},
"displayName": {
"description": "Human-readable name.",
"type": "string"
},
"starterPrompt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The prompt a fresh copy starts with, if the creator set one."
},
"templatePageUrl": {
"description": "The indexable `/templates/<handle>/<app-name>` page for this template.",
"type": "string"
}
},
"required": [
"displayName",
"description",
"starterPrompt",
"copyUrl",
"templatePageUrl",
"builders",
"creatorHandle"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"ok",
"templates"
],
"type": "object"
}
}