Semantic Sounds

Ask for a sound the way you would say it.

1090 short sounds across 26 categories. A sound is data, not an audio file: each one is a small JSON patch of synthesis settings, rendered right here by one deterministic renderer. Nothing plays until you click.

Use it in your app

The search runs in your page, over a static index. No request, no key.

npm install semantic-sounds
import { createSemanticSounds } from 'semantic-sounds/sdk';

const sounds = createSemanticSounds();
const hit = sounds.find('the upload finished');

const samples = sounds.render(hit);  // Float32Array
const file = sounds.wav(hit);        // a .wav you can save

Every sound is a patch: one to four layers of oscillator or noise, each with an envelope and an optional filter. The renderer is deterministic, so the sound you hear on this page is the sound your users hear, to the sample.

Each entry passes a contract: 30 to 1500 ms, a peak at or below −1 dBFS, and a concept that agrees with what the audio measures.

Give it to a coding agent

The MCP server hands an agent five tools, so it picks a real sound instead of inventing an audio file name.

claude mcp add semantic-sounds -- npx -y semantic-sounds-mcp

search_sounds, get_sound, list_categories, list_category and resolve_sound. Each answer carries the patch as JSON, and resolve_sound says whether the patch is curated or generated — which is what stops an agent from writing an approximate match into your code as though it were exact.

What is in the set

abstract-texture, animals, emotion-mood, food-kitchen, game, health-fitness, human-body, mechanical, media-controls, messages-notifications, money-commerce, music-instrument, nature, navigation-maps, office-productivity, progress, science-space, smart-home, social, sports, system-data, timers-alarms, transitions, transport, ui-feedback, weather.