How it worksFeaturesDocsEarly accessGitHubDashboard

How to Configure Multi-Tenant Parameters

Let one deployed server serve multiple tenants (customers, workspaces, accounts) by requiring a parameter on every call that Arthur then injects into the tool's actual arguments — instead of standing up a separate server per tenant.

Prerequisites: a server with at least one tool.

Steps

  1. Open the server and go to its Settings tab.

    Open the capture server used by this procedure

    Open the Settings tab where the configuration is managed

  2. Find Multi-tenant parameters and enable it.

    Bring the Multi-tenant parameters panel into view

    Enable multi-tenant parameters to reveal the editor

  3. Add a parameter: its name (autocomplete suggests existing tool parameter names), a type, an optional description, and whether it's required.

    Add an isolated parameter to demonstrate the complete configuration

    Set an identifiable name that can be removed during cleanup

    Open the type selector for the new parameter

    Select UUID to demonstrate parameter type validation

    Describe how the parameter identifies the request tenant

    Mark the parameter as required

    Remove only the parameter created by this flow

  4. Save.

    Disable the panel to restore the fixture baseline

Confirm it worked

The panel shows a live example URL like …/api/mcp/server/{id}?customerId={value}. Calling the server without the required parameter is rejected; calling it with the parameter injects the value into matching tool arguments automatically.

Good to know

  • This is meant for the case where the same tools and upstream API shape apply to every tenant, and only a value like a customer ID or workspace ID changes per call — not for tenants that need entirely different tools or credentials (use separate servers for that).

Related

Tutorial video