Skip to main content
Glama
septapod

Emoji Storyteller MCP Server

by septapod

tell_emoji_madness

Generate wildly chaotic stories using maximum emoji overload for entertaining visual narratives across various themes without text.

Instructions

THE ULTIMATE CHAOS MODE! Maximum silly emoji overload! πŸŒ€πŸ’€βœ¨

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Handler logic for 'tell_emoji_madness' tool: generates 10 chaotic emoji stories and joins them with separators.
    if (toolName === "tell_emoji_madness") { const madness = []; for (let i = 0; i < 10; i++) { madness.push(generateEmojiStory("random", 8)); } return `πŸŒ€ MAXIMUM EMOJI CHAOS MODE ACTIVATED πŸŒ€\n\n${madness.join("\n---\n")}`; }
  • Tool schema definition including name, description, and empty input schema (no parameters required).
    { name: "tell_emoji_madness", description: "THE ULTIMATE CHAOS MODE! Maximum silly emoji overload! πŸŒ€πŸ’€βœ¨", inputSchema: { type: "object", properties: {}, }, }, ];
  • index.js:188-190 (registration)
    Registration of tools list handler, which returns the TOOLS array containing 'tell_emoji_madness'.
    server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: TOOLS }; });
  • index.js:104-147 (registration)
    The TOOLS array where 'tell_emoji_madness' is defined and registered statically.
    const TOOLS = [ { name: "tell_random_story", description: "Tells a completely random and chaotic emoji story. Perfect for when you want pure chaos! 🎭✨", inputSchema: { type: "object", properties: { chaos_level: { type: "number", description: "How chaotic the story should be (1-10). Default: 5", minimum: 1, maximum: 10, }, }, }, }, { 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"], }, }, { name: "tell_emoji_madness", description: "THE ULTIMATE CHAOS MODE! Maximum silly emoji overload! πŸŒ€πŸ’€βœ¨", inputSchema: { type: "object", properties: {}, }, }, ];
  • Helper function used by the handler to generate individual emoji stories.
    function generateEmojiStory(theme = "random", chaosLevel = 5) { const scenes = []; const storyLength = chaosLevel + 3; // Act I - The Setup scenes.push( `Act I: ${getRandomEmojis("places", 1)} ${getRandomEmojis("animals", 2)}` ); scenes.push( `${getRandomEmojis("emotions", 1)} ${getRandomEmojis("weather", 1)}` ); // Act II - The Chaos for (let i = 0; i < storyLength; i++) { const sceneType = Math.random(); if (sceneType < 0.3) { // Action scene scenes.push( `${getRandomEmojis("action", 2)} ${getRandomEmojis("objects", 1)} ${getRandomEmojis("action", 1)}` ); } else if (sceneType < 0.6) { // Emotional scene scenes.push( `${getRandomEmojis("emotions", 2)} ${getRandomEmojis("magic", 1)}` ); } else { // Complete randomness scenes.push( `${getRandomEmojis("silly", 1)} ${getRandomEmojis("food", 1)} ${getRandomEmojis("animals", 1)} ${getRandomEmojis("objects", 1)}` ); } } // Act III - The Climax scenes.push( `⚑πŸ’₯ ${getRandomEmojis("magic", 2)} πŸŽ† ${getRandomEmojis("animals", 1)} πŸ’«` ); // The Ending (always weird) scenes.push(`THE END... OR IS IT? πŸŽ­βœ¨πŸŒ€`); return scenes.join("\n"); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/septapod/mcp-emoji-stories'

If you have feedback or need assistance with the MCP directory API, please join our Discord server