Freesound MCP Server

Search and download audio resources from Freesound via natural language

README.md

Freesound-MCP

A Model Context Protocol (MCP) server that enables AI applications to search and download audio resources from the Freesound platform via natural language commands.

Overview

Freesound-MCP is designed to simplify the integration of copyright-free sound resources into AI tools. It follows the Model Context Protocol standard and communicates with host applications via stdin/stdout. The server provides two main capabilities:

  • 🔍 Search Sounds: Search for sounds by keywords with optional filters for maximum duration and license type
  • ⬇️ Download Sounds: Download audio files by sound ID from Freesound
  • 🎵 Metadata Support: Retrieve detailed information about sounds, including duration, license, and preview links

Features

  • Lightweight MCP server built with Node.js
  • Standard input/output communication mechanism compliant with MCP protocol
  • Secure API key management through environment variables
  • No database required - simple, stateless design

Prerequisites

  • Node.js (supports CommonJS modules)
  • npm or yarn package manager
  • A Freesound API key (get one at Freesound API page)

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/freesound-mcp.git
cd freesound-mcp
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Setup

  1. Get your Freesound API key from Freesound API page

  2. Set your API key as an environment variable:

export FREESOUND_API_KEY=your_freesound_api_key_here

Configuration in Claude Desktop

To configure this MCP server in Claude Desktop:

  1. Open Claude Desktop preferences
  2. Navigate to "Beta Features" → "Model Context Protocol (MCP) Tools"
  3. Click "Configure" to manage MCP servers
  4. Add a new server configuration with these details:
    • Name: "Freesound MCP"
    • Command: node
    • Arguments: /path/to/freesound-mcp/dist/index.js (after running npm run build)
    • Environment Variables: Ensure FREESOUND_API_KEY is available to the process
  5. Save the configuration and restart Claude

After restarting Claude, you'll be able to use the Freesound tools in your conversations.

Usage

Once configured in Claude, you can use natural language commands such as:

  • "Find me a rainforest ambient sound under 30 seconds"
  • "Download sound #123456 as high quality"

Available Tools

1. Freesound Search (`freesound_search`)

Search for sounds on Freesound by providing keywords and optional filters.

Parameters:

  • query (required): Search keywords
  • maxDuration (optional): Maximum duration of sounds in seconds
  • license (optional): License type of sounds to search for

Returns:

  • Array of sound objects containing:
    • id: Sound ID
    • name: Sound name
    • duration: Sound duration in seconds
    • license: Sound license
    • preview: Sound preview URL
2. Freesound Download (`freesound_download`)

Download a sound from Freesound by sound ID.

Parameters:

  • soundId (required): ID of the sound to download
  • quality (optional): Audio quality ('hq' for high quality or 'lq' for low quality), defaults to 'lq'
  • downloadDir (optional): Custom download directory, defaults to ~/.freesound-mcp/downloads

Returns:

  • filePath: Path where the file was downloaded

Security Considerations

  • Keep your FREESOUND_API_KEY secret and never expose it in client-side code
  • Input parameters are validated to prevent malicious IDs from being passed to the API
  • The server follows MCP security best practices for communication

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Tools 2

freesound_searchSearch for sounds on Freesound by providing keywords and optional filters.
freesound_downloadDownload a sound from Freesound by sound ID.

Environment Variables

FREESOUND_API_KEYrequiredYour Freesound API key obtained from the Freesound website.

Try it

Find me a rainforest ambient sound under 30 seconds.
Search for high-quality sound effects related to 'industrial machinery'.
Download sound #123456 as high quality.
Find me a sound with a Creative Commons license matching 'birds chirping'.

Frequently Asked Questions

What are the key features of Freesound MCP?

Search for sounds by keywords with duration and license filters. Download audio files directly by sound ID. Retrieve detailed sound metadata including duration and preview URLs. Stateless design with secure API key management.

What can I use Freesound MCP for?

Integrating royalty-free sound effects into AI-generated video projects. Quickly sourcing ambient background audio for creative writing or storytelling. Automating the collection of audio assets for game development prototypes. Retrieving specific sound samples for audio engineering and sound design tasks.

How do I install Freesound MCP?

Install Freesound MCP by running: git clone https://github.com/yourusername/freesound-mcp.git && cd freesound-mcp && npm install && npm run build

What MCP clients work with Freesound MCP?

Freesound MCP works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Freesound MCP docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Open Conare