> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Available Tools

> The operations the Nexudus MCP server exposes to your AI assistant.

# Available Tools

The Nexudus MCP server gives your AI assistant a small set of **generic tools** that work across every entity in Nexudus, plus a few **specialist tools** that wrap common queries with friendlier parameters. You do not call these tools yourself — the assistant decides which to use based on your question.

## Generic tools

These tools cover any of the 208 entity types supported by Nexudus — bookings, products, resources, members, invoices, and so on. The assistant picks the right entity based on your question.

| Tool                                   | What it does                                                                                             |
| -------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `nexudus_list_entities`                | Lists every available entity type. Used at the start of a conversation to discover what is available.    |
| `nexudus_describe_entity`              | Returns the field schema, filter options, enum values, and the entity's usage guide for a chosen entity. |
| `nexudus_list`                         | Searches and filters records of a chosen entity, with pagination.                                        |
| `nexudus_get`                          | Fetches a single record by ID, including collection fields omitted from list responses.                  |
| `nexudus_create`                       | Creates a new record.                                                                                    |
| `nexudus_update`                       | Updates an existing record by ID.                                                                        |
| `nexudus_delete`                       | Deletes a record by ID. The assistant should confirm with you before calling this.                       |
| `nexudus_list_commands`                | Lists special operations (like archive or activate) available on an entity.                              |
| `nexudus_run_command`                  | Runs a named command (such as `Archive` or `CheckIn`) on one or more records.                            |
| `nexudus_get_skill_guide`              | Fetches the cross-cutting guide that teaches the assistant how to use the Nexudus tools.                 |
| `nexudus_get_entity_guide`             | Fetches the per-entity guide for a specific entity type.                                                 |
| `nexudus_change_pii_redaction_setting` | Tells the assistant which checkbox you need to tick on re-sign-in to switch PII redaction on or off.     |
| `nexudus_reauthenticate`               | Revokes the current session so the client re-runs the OAuth flow — used to change the PII setting.       |

## Specialist tools

Specialist tools wrap a common query against a single entity, with friendly parameter names that map to the right Nexudus filter keys. The assistant uses them when the request matches one of these flows — no schema lookup needed first, so the response is faster.

### `nexudus_fetch_bookings`

Fetches bookings with friendly parameters: `fromTime`, `toTime`, `coworkerId`, `resourceId`, `businessId` (the location), `tentative`, `invoiced`, `archived`.

Example prompt: *"List bookings at my London location between 9am and 5pm tomorrow that are still tentative."*

### `nexudus_fetch_visitors`

Fetches visitors with friendly parameters: `fullName`, `email`, `businessId` (the location), `coworkerId` (the host), `expectedFrom`, `expectedTo`, `hostApprovalStatus` (pending, approved, or declined).

Example prompt: *"Show me the pending visitor requests expected at my main location this week."*

## How the assistant chooses tools

A typical conversation looks like this:

<Steps>
  <Step title="The assistant identifies the entity">
    For an open-ended question, the assistant calls `nexudus_list_entities` once to discover what is available.
  </Step>

  <Step title="It learns the entity's shape">
    Before listing or creating, it calls `nexudus_describe_entity` to learn the filter keys, required fields, and enum values.
  </Step>

  <Step title="It runs the operation">
    Depending on your question, it calls `nexudus_list`, `nexudus_get`, `nexudus_create`, `nexudus_update`, `nexudus_delete`, or `nexudus_run_command`.
  </Step>

  <Step title="It summarises the result">
    The raw response is shaped into a human-readable answer for you.
  </Step>
</Steps>

For booking and visitor queries, the assistant often skips straight to the specialist tools above.

## Coverage

The Nexudus MCP server is **metadata-driven**: entity definitions, supported operations, fields, and filter keys are loaded from the
[`Nexudus-Ltd/nexudus-coworking-cli`](https://github.com/Nexudus-Ltd/nexudus-coworking-cli) repository at server startup. That repository is the single source
of truth for the Nexudus CLI, the public skills/reference docs, and this MCP server, so all three stay in sync. When new entities are added upstream, they
appear in the MCP server automatically.

For a complete list of entities and their supported operations (list, get, create, update, delete, run-command), see the [CLI entity reference](/cli/entity-reference) — the same entities are available through the MCP server.

## Approval prompts in your client

Every tool declares whether it is a **read** or a **write**, and whether it can have side effects. Most MCP clients use these hints to decide which calls need your explicit approval:

* **Read-only** tools (`nexudus_list_entities`, `nexudus_describe_entity`, `nexudus_list`, `nexudus_get`, `nexudus_list_commands`, `nexudus_get_skill_guide`, `nexudus_get_entity_guide`) — clients like ChatGPT can call these without asking you each time.
* **Write** tools (`nexudus_create`, `nexudus_update`) and **destructive** tools (`nexudus_delete`, `nexudus_run_command`) — clients prompt you for approval before each call.

This means you should still expect an approval prompt for anything that changes data. If your client is configured to auto-approve everything, see [Good practice](/mcp/good-practice) for why we recommend keeping destructive actions human-in-the-loop.

## Safety

The MCP server cannot do anything your Nexudus account cannot do. But within your permissions, **create, update, and delete operations are real**: they affect live data immediately and there is no undo button. Always read the proposed tool call before approving it.

<Warning>
  Vague instructions like *"clean up old bookings"* can lead the assistant to delete more than you expected. Be specific about what to keep and what to
  remove, and consider asking for a list first to confirm the scope before any deletions.
</Warning>

For a deeper checklist of safe-by-default habits, see [Good practice](/mcp/good-practice).

## Next steps

<CardGroup cols={3}>
  <Card title="Good practice" icon="check" href="/mcp/good-practice">
    Do's and don'ts for responsible AI use.
  </Card>

  <Card title="PII redaction" icon="user-shield" href="/mcp/pii-redaction">
    What gets redacted and how to switch the setting.
  </Card>

  <Card title="Troubleshooting" icon="wrench" href="/mcp/troubleshooting">
    Common issues and how to fix them.
  </Card>
</CardGroup>
