Skip to main content
Glama
Ripnrip

Quake Coding Arena MCP

by Ripnrip

set_voice_pack

Switch between male and female announcer voice packs to customize achievement sound feedback for coding milestones in your development environment.

Instructions

🎀 Switch between Male and Female announcer voice packs. This sets the default voice pack for all subsequent achievement sounds. Male pack includes 15 classic Quake 3 Arena sounds. Female pack includes 16 unique female announcer sounds. The setting persists for the session until changed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
voiceGenderYes🎀 Voice pack selection. Options: 'male' (Classic Quake 3 Arena male announcer with 15 sounds including EXCELLENT, PERFECT, IMPRESSIVE, DOUBLE KILL, TRIPLE KILL), 'female' (Female announcer with 16 sounds including HEADSHOT, MULTI KILL, KILLING SPREE, BOTTOM FEEDER, PLAY). Examples: 'male', 'female'

Implementation Reference

  • The core handler function for the 'set_voice_pack' tool. It updates the global enhancedStats.voicePack based on the input voiceGender ('male' or 'female'), retrieves the corresponding voice configuration from VOICE_PACKS, and returns a properly formatted MCP tool response including a text message and voice pack details.
    async ({ voiceGender }) => {
        enhancedStats.voicePack = voiceGender;
        const voiceConfig = VOICE_PACKS[voiceGender];
    
        return {
            content: [{
                type: "text",
                text: `🎀 Voice pack set to ${voiceConfig.displayName}!`
            }],
            currentVoicePack: voiceGender,
            voicePackInfo: voiceConfig
        };
    }
  • The tool specification including description, inputSchema using Zod for voiceGender enum validation, and annotations for UI hints.
    "set_voice_pack",
    {
        description: "🎀 Switch between Male and Female announcer voice packs. This sets the default voice pack for all subsequent achievement sounds. Male pack includes 15 classic Quake 3 Arena sounds. Female pack includes 16 unique female announcer sounds. The setting persists for the session until changed.",
        inputSchema: {
            voiceGender: z.enum(["male", "female"]).describe("🎀 Voice pack selection. Options: 'male' (Classic Quake 3 Arena male announcer with 15 sounds including EXCELLENT, PERFECT, IMPRESSIVE, DOUBLE KILL, TRIPLE KILL), 'female' (Female announcer with 16 sounds including HEADSHOT, MULTI KILL, KILLING SPREE, BOTTOM FEEDER, PLAY). Examples: 'male', 'female'"),
        },
        annotations: {
            title: "🎀 Set Voice Pack",
            readOnlyHint: false,
            destructiveHint: false,
            idempotentHint: false,
            openWorldHint: false
        }
    },
  • The server.registerTool call that registers the 'set_voice_pack' tool with its spec and handler on the MCP server.
    // 🎀 Set Voice Pack
    server.registerTool(
        "set_voice_pack",
        {
            description: "🎀 Switch between Male and Female announcer voice packs. This sets the default voice pack for all subsequent achievement sounds. Male pack includes 15 classic Quake 3 Arena sounds. Female pack includes 16 unique female announcer sounds. The setting persists for the session until changed.",
            inputSchema: {
                voiceGender: z.enum(["male", "female"]).describe("🎀 Voice pack selection. Options: 'male' (Classic Quake 3 Arena male announcer with 15 sounds including EXCELLENT, PERFECT, IMPRESSIVE, DOUBLE KILL, TRIPLE KILL), 'female' (Female announcer with 16 sounds including HEADSHOT, MULTI KILL, KILLING SPREE, BOTTOM FEEDER, PLAY). Examples: 'male', 'female'"),
            },
            annotations: {
                title: "🎀 Set Voice Pack",
                readOnlyHint: false,
                destructiveHint: false,
                idempotentHint: false,
                openWorldHint: false
            }
        },
        async ({ voiceGender }) => {
            enhancedStats.voicePack = voiceGender;
            const voiceConfig = VOICE_PACKS[voiceGender];
    
            return {
                content: [{
                    type: "text",
                    text: `🎀 Voice pack set to ${voiceConfig.displayName}!`
                }],
                currentVoicePack: voiceGender,
                voicePackInfo: voiceConfig
            };
        }
    );
  • src/index.ts:56-59 (registration)
    Call to registerSettingsTools(server) which includes the set_voice_pack tool, in the main server setup for Smithery deployment.
    registerAchievementTools(server);
    registerSettingsTools(server);
    registerStatsTools(server);
    registerGuideTools(server);
  • run-server.ts:31-33 (registration)
    Call to registerSettingsTools(server) which includes the set_voice_pack tool, in the stdio server entry point.
    registerAchievementTools(server);
    registerSettingsTools(server);
    registerStatsTools(server);

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/Ripnrip/Quake-Coding-Arena-MCP'

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