# `T3.Requests`
[🔗](https://github.com/dl-alexandre/t3-elixir/blob/main/lib/t3/requests.ex#L1)

Requests MCP operations. Pass T3's original string-keyed argument maps.

Tool availability depends on the authenticated server, permission mode and
invocation context. In-app agent tools may not be available to outside clients.
See `T3.Catalog.tools(:requests)` for descriptions and context requirements.

# `manage`

```elixir
@spec manage(T3.Client.t(), map()) :: {:ok, map()} | {:error, T3.Error.t()}
```

Pending user questions in a thread. Omit `threadId` for this thread. list: their ids; approvals are not listed. read: one by `requestId`. respond: answer one with `answers`; this cannot approve a permission request.

Some operations require a T3-launched agent/thread context. The server enforces tool visibility and permissions.

# `secret`

```elixir
@spec secret(T3.Client.t(), map()) :: {:ok, map()} | {:error, T3.Error.t()}
```

Ask the user to enter a secret in a private card and wait. You never see the value. Returns a one-use `secretRef` for a tool that accepts it, or with `delivery: "file"` a private file path to read inside a shell command. Asked how to provide a secret: call this now, do not explain instead.

Some operations require a T3-launched agent/thread context. The server enforces tool visibility and permissions.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
