search_sounds
Search myinstants.com for meme sounds and sound effects to play through your speakers, enhancing interactions with reactive audio.
Instructions
Search myinstants.com for sound buttons.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"query": "<query>"
},
"name": "search_sounds"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query |
Implementation Reference
- server.js:313-317 (handler)The handler function for the 'search_sounds' tool, which takes a query, calls the 'search' helper, and returns the formatted text results.
async ({ query }) => { const results = await search(query); if (!results.length) return { content: [{ type: "text", text: `No sounds found for "${query}"` }] }; return { content: [{ type: "text", text: results.slice(0, 20).map((r, i) => `${i + 1}. ${r.name} → \`${r.slug}\``).join("\n") }] }; } - server.js:309-318 (registration)Tool registration for 'search_sounds' using the MCP server instance.
server.tool( "search_sounds", "Search myinstants.com for sound buttons.", { query: z.string().describe("Search query") }, async ({ query }) => { const results = await search(query); if (!results.length) return { content: [{ type: "text", text: `No sounds found for "${query}"` }] }; return { content: [{ type: "text", text: results.slice(0, 20).map((r, i) => `${i + 1}. ${r.name} → \`${r.slug}\``).join("\n") }] }; } ); - server.js:49-51 (helper)The 'search' helper function that performs the web request to search for sounds.
async function search(query) { return parseResults(await httpGet(`${BASE}/en/search/?name=${encodeURIComponent(query)}`)); }