> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/labs-voice-agent/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/labs-voice-agent/_mcp/server.

# nemo_voice_agent.evaluation.tools.waitlist_tools

## Module Contents

### Classes

| Name                                                                                     | Description                                                                                                 |
| ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| [`DropWaitListTool`](#nemo_voice_agent-evaluation-tools-waitlist_tools-DropWaitListTool) | Remove a customer from the waitlist; sends updated waitlist via \<final\_response> tags.                    |
| [`GetWaitlistTool`](#nemo_voice_agent-evaluation-tools-waitlist_tools-GetWaitlistTool)   | Check the current waitlist status. Reads from shared state.                                                 |
| [`JoinWaitListTool`](#nemo_voice_agent-evaluation-tools-waitlist_tools-JoinWaitListTool) | Add a customer to the restaurant waitlist. Sends updated waitlist to evaluator via \<final\_response> tags. |

### API

```python
class nemo_voice_agent.evaluation.tools.waitlist_tools.DropWaitListTool(
    rtvi: typing.Optional[pipecat.processors.frameworks.rtvi.RTVIProcessor] = None,
    shared_state: typing.Optional[dict] = None,
    description: typing.Optional[str] = None
)
```

**Bases:** [SendScenarioSummaryTool](/nemo/labs-voice-agent/nemo-voice-agent/nemo_voice_agent/evaluation/tools/rtvi_control#nemo_voice_agent-evaluation-tools-rtvi_control-SendScenarioSummaryTool)

Remove a customer from the waitlist; sends updated waitlist via \<final\_response> tags.

**`properties`**

---

**`required_properties`**

---

**`state`**

---

```python
nemo_voice_agent.evaluation.tools.waitlist_tools.DropWaitListTool._execute(
    name: typing.Optional[str] = None
) -> typing.Dict[str, typing.Any]
```

async

Remove the named customer from the shared waitlist and return the outcome.

Also emits the updated waitlist to the evaluator via `&lt;final_response&gt;`
tags before returning.

```python
class nemo_voice_agent.evaluation.tools.waitlist_tools.GetWaitlistTool(
    shared_state: typing.Optional[dict] = None,
    description: typing.Optional[str] = None
)
```

**Bases:** [StandardSchemaTool](/nemo/labs-voice-agent/nemo-voice-agent/nemo_voice_agent/utils/tool_calling/base#nemo_voice_agent-utils-tool_calling-base-StandardSchemaTool)

Check the current waitlist status. Reads from shared state.

**`properties`**

---

**`required_properties`**

---

**`state`**

---

```python
nemo_voice_agent.evaluation.tools.waitlist_tools.GetWaitlistTool._execute(
    kwargs: typing.Any = {}
) -> typing.Dict[str, typing.Any]
```

async

Return the current waitlist from shared state. Takes no call arguments.

```python
class nemo_voice_agent.evaluation.tools.waitlist_tools.JoinWaitListTool(
    rtvi: typing.Optional[pipecat.processors.frameworks.rtvi.RTVIProcessor] = None,
    shared_state: typing.Optional[dict] = None,
    initial_waitlist: str = '[]',
    description: typing.Optional[str] = None
)
```

**Bases:** [SendScenarioSummaryTool](/nemo/labs-voice-agent/nemo-voice-agent/nemo_voice_agent/evaluation/tools/rtvi_control#nemo_voice_agent-evaluation-tools-rtvi_control-SendScenarioSummaryTool)

Add a customer to the restaurant waitlist. Sends updated waitlist to evaluator via \<final\_response> tags.

**`properties`**

---

**`required_properties`**

---

**`state`**

---

```python
nemo_voice_agent.evaluation.tools.waitlist_tools.JoinWaitListTool._execute(
    name: typing.Optional[str] = None,
    phone: typing.Optional[str] = None,
    party_size: typing.Optional[int] = None
) -> typing.Dict[str, typing.Any]
```

async

Append the customer to the shared waitlist and return their position.

Also emits the updated waitlist to the evaluator via `&lt;final_response&gt;`
tags before returning.