A Model Context Protocol (MCP) server that connects Claude and other AI assistants to AnswerRocket's Max AI platform, enabling access to Max copilots and their skills directly from your AI conversations.
macOS:
- Install
uv
via Homebrew:brew install uv
- If you already have
uv
installed via another method, uninstall and reinstall with Homebrew:# Remove existing uv data and binaries uv cache clean rm -r "$(uv python dir)" rm -r "$(uv tool dir)" rm ~/.local/bin/uv ~/.local/bin/uvx # Install via Homebrew brew install uv
Windows/Linux:
- Follow the installation instructions at uv Installation Guide
-
Download the .dxt file: mcp-server.dxt
-
Install Claude Desktop if you haven't already
-
Double-click the .dxt file to open it with Claude Desktop
-
Click "Install" when prompted
-
Configure your Max instance:
- Max URL: Enter your Max instance URL (e.g.,
http://localhost:8080
orhttps://maxai.dev.answerrocket.com
)- Include the
http://
orhttps://
prefix - Do not include any path components
- Include the
- SDK Key: Get this from your Max instance frontend
- Agent ID: This is the copilot ID from Skill Studio
- Navigate to Skill Studio:
https://your-max-instance/apps/system/skill-studio/
- The URL pattern is:
/skill-studio/{COPILOT_ID}/skills/{SKILL_ID}
- Copy the first UUID (COPILOT_ID)
- Navigate to Skill Studio:
- Max URL: Enter your Max instance URL (e.g.,
-
Click "Save" (keep the setup window open)
-
Enable the MCP server using the toggle in the upper left
Navigate back to Claude Desktop's home screen and click the tools icon. You should see "Max MCP" with a list of tools identical to those available in your Max Agent/Copilot.
Note: This feature requires Max instances on version 25.09 or above.
Support for web-based AI assistants like claude.ai and chatgpt.com is in the works.
- Python 3.10+
- Git
- Access to a Max instance
-
Clone the repository:
git clone https://github.com/answerrocket/mcp-server.git cd mcp-server
-
Install dependencies:
uv sync
The server supports two modes: local and remote.
For development and testing with direct API access to Max:
export MCP_MODE=local
export AR_URL=http://superstoredev.local.answerrocket.com:1234 # or where your instance is located. It does not have to be a local Max instance.
export AR_TOKEN=arc-your-token-here
export COPILOT_ID=your-copilot-uuid
export MCP_TRANSPORT=stdio
For production deployments with OAuth authentication:
export MCP_MODE=remote
export MCP_TRANSPORT=streamable-http
export MCP_HOST=localhost
export MCP_PORT=9090
Note: In remote mode, the AR_URL
is automatically derived from incoming requests, enabling true multi-tenancy.
When running in remote mode, the server accepts requests at:
http://your-server:port/mcp/agent/{COPILOT_ID}
For example:
http://superstoredev.local.answerrocket.com:1234/mcp/agent/0d91262d-e039-43c3-8022-0d285af703d4
This URL pattern is typically routed through your AnswerRocket instance's nginx configuration.
We highly recommend using the MCP Inspector for development and testing:
npx @modelcontextprotocol/inspector
Version 0.16.1 is buggy and does not play well. If that is the case, you should use version 0.16.0
npx @modelcontextprotocol/inspector@0.16.0
You can test your local development server directly with Claude Desktop by configuring your claude_desktop_config.json
:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"max-mcp-dev": {
"command": "/path/to/mcp-server/.venv/bin/python",
"args": [
"/path/to/mcp-server/mcp_server/__main__.py"
],
"env": {
"AR_URL": "http://your-max-instance:port",
"AR_TOKEN": "your-sdk-token",
"COPILOT_ID": "your-copilot-uuid"
}
}
}
}
Important: Replace the example values with your actual:
- Max instance URL
- SDK token
- Copilot ID
After saving the configuration, restart Claude Desktop to apply the changes.
For production deployments with OAuth authentication:
Your Max instance must have OAuth server enabled:
export ENABLE_OAUTH_SERVER=true
./overmind.sh --overlay=superstoredev,ricedemo
To test multiple tenants, configure your Max instance with multiple tenant overlays and ensure your OAuth server supports the tenant domains you want to test.
-
Set environment variables:
export MCP_MODE=remote export MCP_TRANSPORT=streamable-http export MCP_HOST=0.0.0.0 # or your server IP export MCP_PORT=9090
-
Run the server:
maxai-mcp
or
uv run python mcp_server/__main__.py
In remote mode, the server:
- Validates OAuth tokens against the requesting domain's introspection endpoint
- Dynamically determines the Max instance URL from the request context
- Registers tools/skills specific to the requested copilot ID
- Supports multiple Max instances simultaneously without configuration changes
- stdio: For direct integration with Desktop apps
- streamable-http: For web-based integrations and production deployments
- Local mode: Uses SDK tokens for direct API access
- Remote mode: Uses OAuth 2.0 with Bearer tokens
The server dynamically loads and registers tools based on:
- The copilot ID in the request URL
- Available skills in the specified Max copilot
- User permissions and authentication context