Server definition
- Hash
- sha256:da1d5e7b72878d5ee5077d99ac769d3082bea19150b3041db157129969ec14c1
- What it is
- What a remote MCP server returned when asked what it offers: 12 tools
The blob, as servednamed by its sha256
{
"instructions": "Reference data of the MGS Toolbox (Michael Ghelfi Studios) for tabletop role-playing games: the Metal Encyclopedia (metals), the Crystal Encyclopedia (minerals), Rerum Natura (alchemical ingredients), the Crafting Table (potions, gems, crafting rules) and the MGS Audio catalogue (music, ambiences, sound effects). Texts exist in English and French (lang parameter).\nUse these tools instead of answering from memory whenever a user asks about one of these catalogues. Every entry and track carries a \"url\": cite it when you show the entry, and tell the user where the data comes from (Michael Ghelfi Studios). The audio tools return metadata only: to listen, send the user to the track's url. Filter values are stable codes (list_facets and audio_taxonomy give the vocabularies).",
"tools": [
{
"description": "The vocabulary of the track filters: every genre, mood, era and keyword in use.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "audio_taxonomy",
"outputSchema": null
},
{
"description": "The rules of the crafting system (characters, essences, extraction, brewing, gem cutting, socketing) as titled HTML sections.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"lang": {
"description": "Language of the texts: en (default), fr, or all for both.",
"enum": [
"en",
"fr",
"all"
],
"type": "string"
}
},
"type": "object"
},
"name": "craft_rules",
"outputSchema": null
},
{
"description": "The full data of one metal, mineral, ingredient, potion or gem by its id (from search_encyclopedia or list_entries): properties, lore, page url, embed_url.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "The entry id, e.g. \"iron\", \"rose_quartz\".",
"type": "string"
},
"kind": {
"description": "Which catalogue: metal, mineral, ingredient, potion or gem.",
"enum": [
"metal",
"mineral",
"ingredient",
"potion",
"gem"
],
"type": "string"
},
"lang": {
"description": "Language of the texts: en (default), fr, or all for both.",
"enum": [
"en",
"fr",
"all"
],
"type": "string"
}
},
"required": [
"kind",
"id"
],
"type": "object"
},
"name": "get_entry",
"outputSchema": null
},
{
"description": "One track by id or slug, with its published alternative versions.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_track",
"outputSchema": null
},
{
"description": "Published albums with track count, page url and an embeddable player url.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"offset": {
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"name": "list_albums",
"outputSchema": null
},
{
"description": "Every composer with published tracks, most prolific first, with their page url.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "list_composers",
"outputSchema": null
},
{
"description": "A page of one catalogue, filtered. Use it to answer \"which minerals are cubic and gem-quality?\", \"legendary metals of the medieval era\", \"swamp ingredients with a fire essence\". Combine with q for a name search inside the filter.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"filters": {
"additionalProperties": {
"type": "string"
},
"description": "Field filters as {name: \"value\" | \"value1,value2\"} (any-of, case-insensitive). Names per catalogue: metal → category, era, rarity, fictional, tag; mineral → type, system, rarity, gem_quality, color, magic, planar_origin, origin; ingredient → category, rarity, environment, essence, tag; potion → essence; gem → color, rarity, temporary. list_facets gives the values.",
"type": "object"
},
"kind": {
"description": "Which catalogue: metal, mineral, ingredient, potion or gem.",
"enum": [
"metal",
"mineral",
"ingredient",
"potion",
"gem"
],
"type": "string"
},
"lang": {
"description": "Language of the texts: en (default), fr, or all for both.",
"enum": [
"en",
"fr",
"all"
],
"type": "string"
},
"limit": {
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"offset": {
"minimum": 0,
"type": "integer"
},
"q": {
"type": "string"
}
},
"required": [
"kind"
],
"type": "object"
},
"name": "list_entries",
"outputSchema": null
},
{
"description": "Every distinct value of each filterable field of a catalogue (categories, rarities, crystal systems, environments, essences…) and its entry count.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"kind": {
"description": "Which catalogue: metal, mineral, ingredient, potion or gem.",
"enum": [
"metal",
"mineral",
"ingredient",
"potion",
"gem"
],
"type": "string"
}
},
"required": [
"kind"
],
"type": "object"
},
"name": "list_facets",
"outputSchema": null
},
{
"description": "One entry at random among those matching the filters: loot tables, \"mineral of the day\", a credible metal for a blacksmith, a foraging roll.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"filters": {
"additionalProperties": {
"type": "string"
},
"description": "Field filters as {name: \"value\" | \"value1,value2\"} (any-of, case-insensitive). Names per catalogue: metal → category, era, rarity, fictional, tag; mineral → type, system, rarity, gem_quality, color, magic, planar_origin, origin; ingredient → category, rarity, environment, essence, tag; potion → essence; gem → color, rarity, temporary. list_facets gives the values.",
"type": "object"
},
"kind": {
"description": "Which catalogue: metal, mineral, ingredient, potion or gem.",
"enum": [
"metal",
"mineral",
"ingredient",
"potion",
"gem"
],
"type": "string"
},
"lang": {
"description": "Language of the texts: en (default), fr, or all for both.",
"enum": [
"en",
"fr",
"all"
],
"type": "string"
}
},
"required": [
"kind"
],
"type": "object"
},
"name": "random_entry",
"outputSchema": null
},
{
"description": "One published track at random among those matching the filters.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"album": {
"description": "Album id or slug.",
"type": "string"
},
"composer": {
"description": "Composer id or slug.",
"type": "string"
},
"duration_max": {
"description": "Maximum duration, seconds.",
"type": "number"
},
"duration_min": {
"description": "Minimum duration, seconds.",
"type": "number"
},
"era": {
"description": "Era token(s), comma-separated.",
"type": "string"
},
"genre": {
"description": "Theme(s), comma-separated, case-insensitive: Combat, Forest, Dungeon, Taverns and Inns, Magic, Weather… (audio_taxonomy lists them).",
"type": "string"
},
"keyword": {
"description": "Keyword(s), comma-separated, any of them.",
"type": "string"
},
"mood": {
"description": "Musical style(s), comma-separated: Orchestral, Celtic, Folk, Medieval, Metal…",
"type": "string"
},
"q": {
"description": "Text search in title, description, keywords.",
"type": "string"
},
"type": {
"description": "Audio type(s), comma-separated: music, ambience, sfx…",
"type": "string"
}
},
"type": "object"
},
"name": "random_track",
"outputSchema": null
},
{
"description": "Find metals, minerals, alchemical ingredients, potions and gems by name (case- and accent-insensitive; exact names first, then prefixes, then substrings, aliases included). Returns each hit with its kind, id, one-line summary and page url; call get_entry for the full data.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"kind": {
"description": "Restrict to some catalogues, comma-separated (e.g. \"metal,mineral\").",
"type": "string"
},
"lang": {
"description": "Language of the texts: en (default), fr, or all for both.",
"enum": [
"en",
"fr",
"all"
],
"type": "string"
},
"limit": {
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"q": {
"description": "The name or part of it.",
"minLength": 1,
"type": "string"
}
},
"required": [
"q"
],
"type": "object"
},
"name": "search_encyclopedia",
"outputSchema": null
},
{
"description": "Published tracks of MGS Audio (music, ambiences, sound effects) with composer, album, moods, keywords, duration and page url. Metadata only: no audio file. \"A battle theme\" → genre: \"Combat\", type: \"music\"; \"a forest ambience\" → type: \"ambience\", genre: \"Forest\"; \"something for a dungeon\" → keyword: \"dungeon\".",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"album": {
"description": "Album id or slug.",
"type": "string"
},
"composer": {
"description": "Composer id or slug.",
"type": "string"
},
"duration_max": {
"description": "Maximum duration, seconds.",
"type": "number"
},
"duration_min": {
"description": "Minimum duration, seconds.",
"type": "number"
},
"era": {
"description": "Era token(s), comma-separated.",
"type": "string"
},
"genre": {
"description": "Theme(s), comma-separated, case-insensitive: Combat, Forest, Dungeon, Taverns and Inns, Magic, Weather… (audio_taxonomy lists them).",
"type": "string"
},
"keyword": {
"description": "Keyword(s), comma-separated, any of them.",
"type": "string"
},
"limit": {
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"mood": {
"description": "Musical style(s), comma-separated: Orchestral, Celtic, Folk, Medieval, Metal…",
"type": "string"
},
"offset": {
"minimum": 0,
"type": "integer"
},
"q": {
"description": "Text search in title, description, keywords.",
"type": "string"
},
"sort": {
"enum": [
"newest",
"oldest",
"title",
"duration",
"random"
],
"type": "string"
},
"type": {
"description": "Audio type(s), comma-separated: music, ambience, sfx…",
"type": "string"
}
},
"type": "object"
},
"name": "search_tracks",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:da1d5e7b72878d5ee5077d99ac769d3082bea19150b3041db157129969ec14c1 | sha256sum