> For the complete documentation index, see [llms.txt](https://docs.rhinofcp.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rhinofcp.com/using-the-rhino-mcp-server/prerequisites-and-authentication.md).

# Prerequisites and Authentication

This article covers authentication and, for some clients, an optional software prerequisite. Authentication uses OAuth 2.1 with PKCE — your credentials never appear in the AI chat and the assistant never sees your password.

***

### Optional: Install Node.js

Node.js is **not required to use the Rhino FCP MCP server**. Most recommended clients — including Claude Desktop, Claude Code CLI, Cursor IDE, and VS Code — connect via native HTTP and have no additional dependencies.

Node.js v18 or higher is only needed if you are connecting via **Windsurf** or another stdio-only client that uses the `mcp-remote` bridge. If none of the clients you are using require it, skip this section entirely.

{% tabs %}
{% tab title="macOS" %}

```auto
# Using Homebrew:
brew install node

# Or download the installer from:
# https://nodejs.org/en/download
```

{% endtab %}

{% tab title="Windows" %}

```auto
# Using winget:
winget install OpenJS.NodeJS

# Or download the .msi installer from:
# https://nodejs.org/en/download
```

{% endtab %}

{% tab title="Linux (Ubuntu / Debian)" %}

```auto
sudo apt update
sudo apt install nodejs npm

# Or use nvm:
# https://github.com/nvm-sh/nvm
```

{% endtab %}
{% endtabs %}

#### Verify your installation

Run the following in your terminal. You should see **v18 or higher**.

```auto
node --version
```

***

### How Authentication Works

The MCP server uses **OAuth 2.1 with PKCE** — the same secure standard used by Google, GitHub, and other major platforms. The flow is automatic and works the same way across all supported clients:

1. **Add the server URL** — Configure your AI client with the MCP endpoint (see [Supported Clients](/using-the-rhino-mcp-server/supported-clients.md)).
2. **Browser login** — On the first tool call, OAuth opens your default browser and presents the Rhino Health login page.
3. **Token issued** — A secure token is returned to your AI client automatically.
4. **Ready to use** — All subsequent tool calls use the token without any further action needed.

Your credentials never appear in the AI chat window. The AI assistant never sees your password.

***

### Token Expiry

If your session token expires, you will see a `NOT_AUTHENTICATED` error. To resolve this, restart your AI client — the OAuth login flow will trigger automatically on the next tool call. No configuration changes are needed.
