Installation
Installation
Section titled “Installation”Let your AI agents interact with NeuBird’s AI-powered production operations platform using the Model Context Protocol.
Prerequisites
Section titled “Prerequisites”Before you begin, you’ll need:
- ✅ Active NeuBird account - Contact NeuBird to get started
- ✅ Node.js 20+ - Download Node.js
- ✅ Connected data source - At least one cloud provider (AWS, Azure, GCP) or monitoring tool (Datadog, PagerDuty, etc.)
- ✅ MCP-compatible client - Claude Code, Cursor, or GitHub Copilot
Connection Options
Section titled “Connection Options”NeuBird MCP Server supports two connection modes:
| Mode | Best For | Setup |
|---|---|---|
| Local (Default) | Individual developers, quick setup | Run MCP server locally via npx |
| Remote Server | Teams, enterprise deployments | Connect to hosted MCP server via mcp-remote |
Option 1: Local Setup (Default)
Section titled “Option 1: Local Setup (Default)”Run the MCP server locally on your machine. This is the simplest setup for individual users.
Set Environment Variables
Section titled “Set Environment Variables”export NEUBIRD_EMAIL="your-email@company.com"export NEUBIRD_PASSWORD="your-password"export NEUBIRD_BASE_URL="https://<your-deployment-name>.app.neubird.ai/api"Legacy env var support
The NEUBIRD_EMAIL, NEUBIRD_PASSWORD, and NEUBIRD_BASE_URL variables are also accepted for backward compatibility. NEUBIRD_* takes precedence when both are set.
Configure Your MCP Client
Section titled “Configure Your MCP Client”Create .cursor/mcp.json in your project with the following content:
{ "mcpServers": { "neubird": { "command": "npx", "args": ["-y", "mcp-server-neubird@latest"], "env": { "NEUBIRD_EMAIL": "${env:NEUBIRD_EMAIL}", "NEUBIRD_PASSWORD": "${env:NEUBIRD_PASSWORD}", "NEUBIRD_BASE_URL": "${env:NEUBIRD_BASE_URL}" } } }}Use the claude mcp add command for quick setup:
claude mcp add neubird -- npx -y mcp-server-neubird@latestThis uses the environment variables you set earlier (NEUBIRD_EMAIL, NEUBIRD_PASSWORD, and NEUBIRD_BASE_URL).
View Claude Code MCP documentation →
Alternative: JSON Configuration
You can also add to .mcp.json in your project directory:
{ "mcpServers": { "neubird": { "command": "npx", "args": ["-y", "mcp-server-neubird@latest"], "env": { "NEUBIRD_EMAIL": "${NEUBIRD_EMAIL}", "NEUBIRD_PASSWORD": "${NEUBIRD_PASSWORD}", "NEUBIRD_BASE_URL": "${NEUBIRD_BASE_URL}" } } }}Add the .vscode/mcp.json file to your workspace:
{ "servers": { "neubird": { "command": "npx", "args": ["-y", "mcp-server-neubird@latest"], "env": { "NEUBIRD_EMAIL": "${NEUBIRD_EMAIL}", "NEUBIRD_PASSWORD": "${NEUBIRD_PASSWORD}", "NEUBIRD_BASE_URL": "${NEUBIRD_BASE_URL}" } } }}Use the codex mcp add command for quick setup:
codex mcp add neubird \ --env NEUBIRD_EMAIL=your-email@example.com \ --env NEUBIRD_PASSWORD=your-password \ --env NEUBIRD_BASE_URL=https://<your-deployment-name>.app.neubird.ai/api \ -- npx -y mcp-server-neubird@latestView Codex MCP documentation →
Alternative: TOML Configuration
You can also add to ~/.codex/config.toml:
[mcp_servers.neubird]command = "npx"args = ["-y", "mcp-server-neubird@latest"]
# NOTE: No variable expansion supported — values must be literal[mcp_servers.neubird.env]NEUBIRD_EMAIL = "your-email@example.com"NEUBIRD_PASSWORD = "your-password"NEUBIRD_BASE_URL = "https://<your-deployment-name>.app.neubird.ai/api"Option 2: Remote Server
Section titled “Option 2: Remote Server”Connect to a hosted NeuBird MCP server. This is ideal for teams and enterprise deployments where the MCP server is managed centrally.
Remote Server URL
Your deployment URL follows the pattern https://<your-deployment-name>.app.neubird.ai/mcp. Contact your administrator if you don’t know your deployment name.
Prerequisites
Section titled “Prerequisites”Most modern MCP clients support HTTP transport natively. If your client doesn’t support HTTP transport, you can use mcp-remote as a proxy (installed automatically via npx).
Configure Your MCP Client
Section titled “Configure Your MCP Client”Create .cursor/mcp.json in your project:
{ "mcpServers": { "neubird": { "type": "http", "url": "https://<your-deployment-name>.app.neubird.ai/mcp", "headers": { "X-NeuBird-Email": "your@email.com", "X-NeuBird-Password": "your-password" } } }}Legacy header support
X-NeuBird-Email and X-NeuBird-Password are also accepted for backward compatibility.
Alternative: Using mcp-remote
If your client doesn’t support HTTP transport natively, you can use mcp-remote as a proxy:
{ "mcpServers": { "neubird": { "command": "npx", "args": [ "mcp-remote", "https://<your-deployment-name>.app.neubird.ai/mcp", "--header", "X-NeuBird-Email: your@email.com", "--header", "X-NeuBird-Password: your-password" ] } }}Use the claude mcp add command for quick setup:
claude mcp add neubird \ --transport http \ https://<your-deployment-name>.app.neubird.ai/mcp \ --header "X-NeuBird-Email: your@email.com" \ --header "X-NeuBird-Password: your-password"Legacy header support
X-NeuBird-Email and X-NeuBird-Password are also accepted for backward compatibility.
Alternative: JSON Configuration
You can also add to .mcp.json in your project directory:
{ "mcpServers": { "neubird": { "type": "http", "url": "https://<your-deployment-name>.app.neubird.ai/mcp", "headers": { "X-NeuBird-Email": "your@email.com", "X-NeuBird-Password": "your-password" } } }}Add .vscode/mcp.json to your workspace:
{ "servers": { "neubird": { "type": "http", "url": "https://<your-deployment-name>.app.neubird.ai/mcp", "headers": { "X-NeuBird-Email": "your@email.com", "X-NeuBird-Password": "your-password" } } }}Legacy header support
X-NeuBird-Email and X-NeuBird-Password are also accepted for backward compatibility.
Alternative: Using mcp-remote
If your client doesn’t support HTTP transport natively, you can use mcp-remote as a proxy:
{ "servers": { "neubird": { "command": "npx", "args": [ "mcp-remote", "https://<your-deployment-name>.app.neubird.ai/mcp", "--header", "X-NeuBird-Email: your@email.com", "--header", "X-NeuBird-Password: your-password" ] } }}Use the codex mcp add command with the --url flag for HTTP transport:
codex mcp add neubird \ --url https://<your-deployment-name>.app.neubird.ai/mcp \ --header "X-NeuBird-Email: your@email.com" \ --header "X-NeuBird-Password: your-password"Legacy header support
X-NeuBird-Email and X-NeuBird-Password are also accepted for backward compatibility.
Authentication Methods
Section titled “Authentication Methods”The remote server supports two authentication methods:
| Method | Header | Best For |
|---|---|---|
| Email/Password | X-NeuBird-Email + X-NeuBird-Password | Simple setup, most use cases |
| Bearer Token | Authorization: Bearer <token> | OAuth integrations, automated pipelines, token-based workflows |
The examples above use email/password headers. To use bearer token authentication instead, replace the headers with a single Authorization header:
{ "mcpServers": { "neubird": { "type": "http", "url": "https://<your-deployment-name>.app.neubird.ai/mcp", "headers": { "Authorization": "Bearer <your-token>" } } }}claude mcp add neubird \ --transport http \ https://<your-deployment-name>.app.neubird.ai/mcp \ --header "Authorization: Bearer <your-token>"Or in .mcp.json:
{ "mcpServers": { "neubird": { "type": "http", "url": "https://<your-deployment-name>.app.neubird.ai/mcp", "headers": { "Authorization": "Bearer <your-token>" } } }}{ "servers": { "neubird": { "type": "http", "url": "https://<your-deployment-name>.app.neubird.ai/mcp", "headers": { "Authorization": "Bearer <your-token>" } } }}codex mcp add neubird \ --url https://<your-deployment-name>.app.neubird.ai/mcp \ --header "Authorization: Bearer <your-token>"Obtaining a Bearer Token
Section titled “Obtaining a Bearer Token”You can obtain a bearer token by calling the NeuBird login API:
curl -s -X POST "https://<your-deployment-name>.app.neubird.ai/api/v1/user/login" \ -H "Content-Type: application/json" \ -d '{"email": "your@email.com", "password": "your-password"}' \ | jq -r '.access_token'The returned access_token is a JWT that can be used as the bearer token. The server validates it by calling the Auth0 userinfo endpoint (discovered from the token’s issuer claim) and extracts your email for session tracking.
Token Refresh
If you send a refreshed token on a subsequent request, the server detects the change and re-validates automatically. You do not need to create a new session when your token is refreshed.
Next Steps
Section titled “Next Steps”Once your client is configured, head over to Quick Start to verify connectivity with NeuBird and run sample commands.