Freesound MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Freesound MCP Serversearch for rain sounds with filter duration:[10 TO 30]"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Freesound MCP Server
An MCP (Model Context Protocol) server that provides access to the Freesound API, enabling AI assistants to search, analyze, and retrieve information about audio samples from Freesound.org.
Prerequisites
Node.js 16 or higher
A Freesound API key (get one at https://freesound.org/apiv2/apply)
Related MCP server: Claud-Ear
Installation
Clone this repository:
git clone <repository-url>
cd freesound-mcp-serverInstall dependencies:
npm installBuild the project:
npm run buildQuick Start with Claude Code
Global Installation (All Projects)
Get your Freesound API key from https://freesound.org/apiv2/apply
Add to Claude Code:
# From the freesound-mcp-server directory (user scope for global access)
claude mcp add freesound -e FREESOUND_API_KEY=your-api-key-here -- node /path/to/freesound-mcp-server/dist/index.jsVerifying Installation
To check if the MCP server is properly configured and running, use the /mcp command in Claude Code:
claude
> /mcpThis will show the status of all configured MCP servers.
Usage with Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS
~/Library/Application Support/Claude/claude_desktop_config.json
Windows
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"freesound": {
"command": "node",
"args": ["/path/to/freesound-mcp-server/dist/index.js"],
"env": {
"FREESOUND_API_KEY": "your-api-key-here"
}
}
}
}Available Tools
search_sounds
Search for sounds on Freesound using text queries.
Parameters:
query(required): Search query termsfilter: Filter using Solr syntax (e.g., "duration:[1 TO 5]")sort: Sort results by various criteriapage: Page number (default: 1)page_size: Results per page (default: 15, max: 150)
Example:
Search for: "piano jazz" with filter "duration:[5 TO 30]" sorted by "downloads_desc"get_sound
Get detailed information about a specific sound.
Parameters:
sound_id(required): The ID of the sounddescriptors: Comma-separated list of content descriptors to include
get_sound_analysis
Retrieve audio analysis data for a sound.
Parameters:
sound_id(required): The ID of the sounddescriptors: Specific analysis descriptors to retrievenormalized: Whether to normalize descriptor values
get_similar_sounds
Find sounds similar to a given sound.
Parameters:
sound_id(required): The ID of the reference sounddescriptors_filter: Filter by content descriptorspage: Page numberpage_size: Results per page
get_user
Get information about a Freesound user.
Parameters:
username(required): The username
get_user_sounds
Get sounds uploaded by a specific user.
Parameters:
username(required): The usernamepage: Page numberpage_size: Results per page
get_pack
Get information about a sound pack.
Parameters:
pack_id(required): The ID of the pack
get_pack_sounds
Get sounds from a specific pack.
Parameters:
pack_id(required): The ID of the packpage: Page numberpage_size: Results per page
Development
Run the server in development mode:
npm run devAPI Limitations
Token authentication is used for most endpoints
OAuth2 is required for downloading sounds and write operations (not implemented in this version)
Rate limits apply based on your Freesound API plan
Maximum page size is 150 results
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Support
For issues with the Freesound API, consult:
Freesound API Documentation: https://freesound.org/docs/api/
Freesound API Forum: https://freesound.org/forum/
For issues with this MCP server, please open an issue on GitHub.
Available Tools
8 toolsget_packC
Get information about a sound pack
| Name | Required | Description | Default |
|---|---|---|---|
| pack_id | Yes | The ID of the pack |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'Get information' which implies a read operation, but doesn't disclose behavioral traits like authentication needs, rate limits, error conditions, or what specific information is returned (e.g., metadata, details).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It's appropriately sized and front-loaded, clearly stating the tool's purpose without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete. It doesn't explain what information is returned (e.g., pack metadata, sounds list), error handling, or usage context, leaving significant gaps for a tool with one required parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'pack_id' documented as 'The ID of the pack'. The description adds no additional meaning beyond this, so it meets the baseline of 3 where the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'information about a sound pack', making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get_pack_sounds' or 'get_sound', which might retrieve related but different information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_pack_sounds' (likely for sounds within a pack) and 'get_sound' (for individual sounds), there's no indication of context or exclusions for this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pack_soundsC
Get sounds from a specific pack
| Name | Required | Description | Default |
|---|---|---|---|
| pack_id | Yes | The ID of the pack | |
| page | No | Page number (default: 1) | |
| page_size | No | Number of results per page (default: 15) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states the basic action without disclosing behavioral traits such as pagination behavior (implied by parameters but not described), rate limits, authentication needs, or what the output contains (e.g., sound metadata or files). This leaves significant gaps for a tool with pagination parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. However, it could be more front-loaded with key details (e.g., pagination) to improve structure, but it earns high marks for brevity and clarity in its limited scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 parameters including pagination) and lack of annotations and output schema, the description is incomplete. It doesn't address what the tool returns (e.g., sound objects, metadata), how pagination works, or error conditions, making it inadequate for an agent to use effectively without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, providing clear details for all parameters (pack_id, page, page_size). The description adds no additional meaning beyond the schema, as it doesn't explain parameter interactions or usage context. With high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get sounds from a specific pack' clearly states the action (get) and resource (sounds from a pack), but it's vague about scope and doesn't distinguish from siblings like 'get_sound' or 'get_user_sounds'. It lacks specificity about what 'sounds' means (e.g., metadata, files, or listings).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention siblings like 'get_sound' (for individual sounds) or 'search_sounds' (for broader queries), leaving the agent to infer usage from context without explicit direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_similar_soundsC
Find sounds similar to a given sound
| Name | Required | Description | Default |
|---|---|---|---|
| sound_id | Yes | The ID of the sound to find similar sounds for | |
| descriptors_filter | No | Filter similar sounds by content descriptors | |
| page | No | Page number (default: 1) | |
| page_size | No | Number of results per page (default: 15) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure but offers minimal information. It implies a read operation ('Find') but doesn't detail aspects like rate limits, authentication needs, error handling, or the format of returned results. For a tool with four parameters and no output schema, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—a single, direct sentence that states the core function without any fluff. It's front-loaded and wastes no words, making it easy to parse quickly. This efficiency is ideal for tool selection, though it may sacrifice detail for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (four parameters, no annotations, no output schema), the description is insufficiently complete. It doesn't address what 'similar' means, how results are ranked, the structure of the output, or potential limitations. Without annotations or an output schema, more context is needed to fully understand the tool's operation and results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting all four parameters, so the description adds no additional parameter semantics. It doesn't explain how 'sound_id' relates to similarity, what 'descriptors_filter' entails, or how pagination works in practice. The baseline score of 3 reflects adequate schema coverage without extra value from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Find') and resource ('sounds similar to a given sound'), making it immediately understandable. However, it doesn't explicitly distinguish this tool from sibling tools like 'search_sounds' or 'get_sound_analysis', which might also involve sound retrieval or comparison, leaving some ambiguity about its unique role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention scenarios where 'get_similar_sounds' is preferred over 'search_sounds' or 'get_sound_analysis', nor does it specify prerequisites or exclusions. This lack of context makes it harder for an agent to choose the right tool among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_soundC
Get detailed information about a specific sound
| Name | Required | Description | Default |
|---|---|---|---|
| sound_id | Yes | The ID of the sound | |
| descriptors | No | Comma-separated list of content-based descriptors to include |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves 'detailed information' but doesn't specify what that includes (e.g., metadata, audio data, permissions), whether it's a read-only operation, error handling, or any rate limits. This leaves significant gaps for an agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for a tool with 2 parameters. It doesn't explain what 'detailed information' entails in the return values, how the 'descriptors' parameter affects the output, or behavioral aspects like error cases. This leaves the agent with insufficient context to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for both parameters in the input schema. The description adds no additional parameter semantics beyond implying retrieval of 'detailed information', which doesn't clarify the role of the 'descriptors' parameter or provide examples. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'detailed information about a specific sound', making the purpose understandable. However, it doesn't differentiate this tool from sibling tools like 'get_sound_analysis' or 'get_similar_sounds', which likely also retrieve sound information with different scopes or details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_sound_analysis' and 'get_similar_sounds', there's no indication of whether this is for basic metadata, when to choose it over other sound-related tools, or any prerequisites for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sound_analysisC
Get audio analysis data for a specific sound
| Name | Required | Description | Default |
|---|---|---|---|
| sound_id | Yes | The ID of the sound | |
| descriptors | No | Comma-separated list of analysis descriptors to retrieve | |
| normalized | No | Whether to normalize descriptor values |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action 'Get' but does not specify whether this is a read-only operation, requires authentication, has rate limits, or what the output format might be. This leaves significant gaps in understanding the tool's behavior and constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and appropriately sized, with every part contributing to clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of retrieving analysis data with multiple parameters and no annotations or output schema, the description is incomplete. It does not explain what 'audio analysis data' entails, how results are returned, or any behavioral aspects, making it inadequate for full contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, providing clear details for all parameters (sound_id, descriptors, normalized). The description adds no additional meaning beyond the schema, such as examples or usage context for parameters. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'audio analysis data for a specific sound', making the purpose understandable. However, it does not differentiate this tool from sibling tools like 'get_sound' or 'search_sounds', which might also retrieve sound-related data, leaving some ambiguity about its unique role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_sound' and 'search_sounds', it lacks explicit instructions on context, prerequisites, or exclusions, leaving the agent to infer usage based on the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_userC
Get information about a Freesound user
| Name | Required | Description | Default |
|---|---|---|---|
| username | Yes | The username of the user |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the action ('Get information') but doesn't disclose behavioral traits such as whether this is a read-only operation, potential rate limits, authentication needs, or what kind of information is returned. This leaves significant gaps in understanding how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste, clearly stating the tool's purpose without unnecessary details. It is appropriately sized and front-loaded, making it easy to understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for a tool that retrieves user information. It doesn't explain what information is returned, potential error cases, or usage constraints, leaving the agent with insufficient context to use the tool effectively beyond basic parameter input.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the 'username' parameter fully. The description adds no additional meaning beyond what the schema provides, such as format examples or constraints. Baseline 3 is appropriate as the schema handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('information about a Freesound user'), making the purpose specific and understandable. However, it doesn't differentiate from sibling tools like 'get_user_sounds', which might retrieve user-related sounds rather than user metadata, leaving some ambiguity in sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. For example, it doesn't clarify if this is for retrieving basic user profiles versus more detailed data, or how it relates to 'get_user_sounds' for accessing user content. The description lacks explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_user_soundsC
Get sounds uploaded by a specific user
| Name | Required | Description | Default |
|---|---|---|---|
| username | Yes | The username of the user | |
| page | No | Page number (default: 1) | |
| page_size | No | Number of results per page (default: 15) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'Get' implies a read-only operation, it doesn't address critical aspects like authentication requirements, rate limits, pagination behavior (beyond what's in the schema), error conditions, or the format/structure of returned data. For a tool with no annotation coverage, this leaves significant gaps in understanding how it behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that efficiently conveys the core purpose without any wasted words. It's appropriately sized for a straightforward tool and gets directly to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is insufficiently complete. It doesn't cover behavioral aspects like authentication, rate limits, or data format, and while the schema handles parameters well, the overall context for using this tool effectively is missing. For a tool with three parameters and no structured safety/behavior hints, more guidance is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with all parameters clearly documented in the schema itself. The description doesn't add any meaningful parameter semantics beyond what's already in the schema (e.g., it doesn't explain what 'sounds' entail or provide context about username formats). This meets the baseline for when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('sounds uploaded by a specific user'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'get_user' or 'search_sounds', but the specificity of 'sounds uploaded by a specific user' provides adequate clarity for a read operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_user' (which might return user metadata) or 'search_sounds' (which might allow broader filtering). It simply states what the tool does without context about when it's appropriate or what distinguishes it from similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_soundsC
Search for sounds on Freesound using text queries
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query terms | |
| filter | No | Filter query using Solr syntax (e.g., 'duration:[1 TO 5]') | |
| sort | No | Sort results by: score, duration_desc, duration_asc, created_desc, created_asc, downloads_desc, downloads_asc, rating_desc, rating_asc | |
| page | No | Page number (default: 1) | |
| page_size | No | Number of results per page (default: 15, max: 150) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure but only states the basic action without details on permissions, rate limits, pagination behavior, or error handling. It doesn't mention whether this is a read-only operation, what the output format looks like, or any constraints beyond the implied search functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core purpose ('Search for sounds on Freesound') and specifies the method ('using text queries'), making it easy to parse quickly with zero waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain the return values, pagination behavior, error cases, or how results are structured, leaving significant gaps for an AI agent to understand the tool's full context and usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter-specific information beyond what's already in the schema, which has 100% coverage with detailed descriptions for all 5 parameters. Since the schema fully documents parameters like 'query', 'filter', 'sort', 'page', and 'page_size', the baseline score of 3 is appropriate as the description doesn't compensate but also doesn't detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search for sounds') and resource ('on Freesound') with the method ('using text queries'), making the purpose immediately understandable. However, it doesn't differentiate this tool from sibling tools like 'get_similar_sounds' or 'get_user_sounds' that might also retrieve sounds, missing explicit distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_similar_sounds' for similarity-based retrieval or 'get_user_sounds' for user-specific sounds. It lacks context about use cases, prerequisites, or exclusions, offering only a basic functional statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
8 tool updates
- First observed
get_pack - First observed
get_pack_sounds - First observed
get_similar_sounds - First observed
get_sound - First observed
get_sound_analysis - First observed
get_user - First observed
get_user_sounds - First observed
search_sounds
TDQS
Each tool has a clearly distinct purpose targeting different resources and operations. The tools cover packs, sounds, users, and search with no overlap in functionality, making it easy for an agent to select the right tool.
All tools follow a consistent verb_noun naming pattern with 'get_' or 'search_' prefixes. The naming is uniform and predictable throughout the set, using snake_case consistently.
With 8 tools, this server is well-scoped for a Freesound API interface. Each tool serves a specific purpose in retrieving or searching for audio-related data, and none appear redundant or unnecessary.
The toolset provides comprehensive read/search operations for sounds, packs, and users, covering core workflows. A minor gap exists in lacking upload or modification tools, but this is reasonable for a retrieval-focused server.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP server that integrates with Discord to provide AI-powered features.
MCP server for Producer/Riffusion AI music generation
MCP server exposing the AceDataCloud Fish Audio API (text-to-speech with voice conditioning)
AI voice generation: text-to-speech and voice cloning from any MCP client.
Related MCP Servers
- FlicenseCqualityCmaintenanceAn MCP server that exposes speech-to-text and text-to-speech capabilities using a local speaches instance, allowing AI assistants to transcribe audio and generate speech.2-
- AlicenseNot gradedqualityDmaintenanceAn MCP server that gives AI agents the ability to listen to and understand music/audio files, enabling semantic analysis, stem separation, lyrics transcription, and signal processing via tool calls.1MIT
- FlicenseAqualityDmaintenanceAn MCP server that enables AI assistants to search, discover, and run any model on Replicate.5-
- AlicenseNot gradedqualityBmaintenanceMCP server that enables AI assistants to generate images, video, and audio via the FATTLY API.171MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/timjrobinson/FreesoundMCPServer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server