Skip to main content
Glama

generate_room_ir

Simulate a room from a natural language description and generate a stereo impulse response WAV for convolution reverb. Returns a summary and the file path.

Instructions

Simulate a room and write a stereo impulse response WAV for convolution reverb. Returns a summary and the file path.

Translate the space the user described into dimensions and an absorption coefficient, following the guidance on each argument. Omitted arguments are randomised. Repeated calls vary even with identical arguments, so call again to get a different take on the same room.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
width_mNoRoom width in metres. For reference a small room is roughly 2-5, a large hall 8-20, a stairwell up to 15 high. Go outside that range if the space calls for it. Omit to randomise.
height_mNoRoom height in metres. For reference a small room is roughly 2-5, a large hall 8-20, a stairwell up to 15 high. Go outside that range if the space calls for it. Omit to randomise.
length_mNoRoom length in metres. For reference a small room is roughly 2-5, a large hall 8-20, a stairwell up to 15 high. Go outside that range if the space calls for it. Omit to randomise.
absorptionNoHow reflective the surfaces are, 0 to 1. Roughly: bare tile, concrete or glass 0.03-0.08 (very reflective); plaster or wood 0.1-0.2; furnished or carpeted 0.2-0.35; heavily treated or padded 0.4-0.6. Omit to randomise.
output_pathNoWhere to save. A folder puts the generated filename inside it; a path ending in .wav is used exactly. '~' works. Pass whatever folder or name the user asked for, otherwise leave empty for the default location.
mic_positionNoMic position: 'center', 'corner', or 'near wall'. Leave empty to randomise.
source_positionNoSource position: 'center', 'corner', or 'near wall'. Leave empty to randomise.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations, the description discloses that 'Omitted arguments are randomised' and 'Repeated calls vary even with identical arguments,' which aligns with idempotentHint=false and adds real behavioral context. It also mentions writing a WAV file and returning a summary/path, though it does not address potential file overwrites or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences, each earning its place: purpose, return value, how to translate user input, and randomization behavior. It is front-loaded with the core action and contains no redundant or vague wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a full input schema, an output schema, and annotations present, the description covers the essential workflow: simulating a room, generating a WAV, returning a summary/path, and randomizing omitted args. It leaves no significant gaps for invocation, though a brief mention of expected output schema contents would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions achieve 100% coverage, providing per-parameter ranges and defaults, so the baseline is 3. The description mainly points to those guidelines ('following the guidance on each argument') and reiterates the randomization option, adding no new semantic detail beyond what the schema already offers.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence states the tool 'Simulate a room and write a stereo impulse response WAV for convolution reverb,' a specific verb and resource, and also notes it 'Returns a summary and the file path.' This is unambiguous and distinguishes the tool's purpose even without siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It instructs to 'Translate the space the user described into dimensions and an absorption coefficient, following the guidance on each argument,' which clarifies how to set key parameters. It mentions the convolution reverb use case and randomization behavior, but does not explicitly state when not to use the tool; given no siblings, this is adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/tbimbato/MCP_RiR'

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