tell_themed_story
Generate themed stories using only emojis. Choose from adventure, romance, horror, space, food, or party themes to create visual narratives.
Instructions
Tells a themed emoji story. Choose your adventure! πΊοΈβ¨
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| theme | Yes | Story theme: 'adventure', 'romance', 'horror', 'space', 'food', or 'party' |
Implementation Reference
- index.js:158-162 (handler)Executes the tool logic by extracting the theme parameter and invoking generateThemedStory to produce the story output.if (toolName === "tell_themed_story") { const theme = toolInput.theme || "random"; const story = generateThemedStory(theme); return `π ${theme.toUpperCase()} STORY π\n\n${story}`; }
- index.js:76-102 (handler)Core implementation that maps the input theme to predefined emoji stories or falls back to random chaos.function generateThemedStory(theme) { const themeMap = { adventure: () => { return `πΊοΈ π§ ποΈ\nβ‘ π πͺ\nπ π β¨\nπ π₯³ π`; }, romance: () => { return `π π π\nπΉ π π«\nπ π₯Ί π’\nπππ`; }, horror: () => { return `ποΈ π» π±\nπͺ π β οΈ\nπ² π π¨\nπ π΅ π₯`; }, space: () => { return `π π π½\nπͺ β π \nπΈ π π«\nπ π₯ π`; }, food: () => { return `π π π\nπ π€€ π\nπ½οΈ π₯ π¨\nπ π± π`; }, party: () => { return `π π π₯³\nπ πΊ π΅\nπΎ π» πͺ\nπ΅ π« β¨`; }, }; return themeMap[theme] ? themeMap[theme]() : `Random chaos incoming...\n${generateEmojiStory("random", 7)}`; }
- index.js:125-136 (schema)Input schema defining the 'theme' parameter as a required string enum.inputSchema: { type: "object", properties: { theme: { type: "string", description: "Story theme: 'adventure', 'romance', 'horror', 'space', 'food', or 'party'", enum: ["adventure", "romance", "horror", "space", "food", "party"], }, }, required: ["theme"], },
- index.js:121-137 (registration)Tool registration in the TOOLS array, including name, description, and schema, used by ListToolsRequestHandler.{ name: "tell_themed_story", description: "Tells a themed emoji story. Choose your adventure! πΊοΈβ¨", inputSchema: { type: "object", properties: { theme: { type: "string", description: "Story theme: 'adventure', 'romance', 'horror', 'space', 'food', or 'party'", enum: ["adventure", "romance", "horror", "space", "food", "party"], }, }, required: ["theme"], }, },