Remote MCP Configuration

This guide explains how to connect to Aexol Remote MCP (team/cloud MCP) via the backend endpoint.

Remote MCP (backend)

  • Served by backend endpoint: /mcp
  • Uses JSON-RPC over HTTP
  • Requires team API key auth:
    • Header: Authorization: Bearer <team API key>
    • Key format: sk-aexol-team-...

Use Remote MCP for team-scoped cloud tools and remote task operations.


Endpoint & Protocol

  • Endpoint: https://api.aexol.ai/mcp
  • Protocol: JSON-RPC 2.0
  • Core methods:
    • initialize
    • ping
    • tools/list
    • tools/call

Authentication

Remote MCP requires a team API key, not a user session token.

Authorization: Bearer sk-aexol-team-xxxxxxxxxxxxxxxx
Content-Type: application/json

Client Setup (Remote MCP)

All client setups below target the same Aexol remote MCP endpoint and auth model:

  • URL: https://api.aexol.ai/mcp
  • Header: Authorization: Bearer sk-aexol-team-...

OpenCode

Use either global config (~/.config/opencode/opencode.json) or project config (opencode.json).

{
  "mcp": {
    "aexol": {
      "type": "remote",
      "url": "https://api.aexol.ai/mcp",
      "headers": {
        "Authorization": "Bearer sk-aexol-team-..."
      },
      "oauth": false
    }
  }
}

Claude Code

claude mcp add --transport http aexol https://api.aexol.ai/mcp \
  --header "Authorization: Bearer sk-aexol-team-..."

claude mcp list
claude mcp remove aexol

GitHub Copilot CLI

Copilot CLI supports MCP via either interactive setup or config file:

  • Interactive: run /mcp add in Copilot CLI and provide endpoint/auth.
  • File: ~/.copilot/mcp-config.json
{
  "mcpServers": {
    "aexol": {
      "type": "http",
      "url": "https://api.aexol.ai/mcp",
      "headers": {
        "Authorization": "Bearer sk-aexol-team-..."
      }
    }
  }
}

Minimal JSON-RPC Flow Examples

Use the production backend MCP URL: https://api.aexol.ai/mcp.

1) Initialize

curl -X POST "https://api.aexol.ai/mcp" \
  -H "Authorization: Bearer sk-aexol-team-..." \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "clientInfo": { "name": "my-mcp-client", "version": "1.0.0" }
    }
  }'

2) Ping

curl -X POST "https://api.aexol.ai/mcp" \
  -H "Authorization: Bearer sk-aexol-team-..." \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "ping"
  }'

3) List tools

curl -X POST "https://api.aexol.ai/mcp" \
  -H "Authorization: Bearer sk-aexol-team-..." \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/list"
  }'

4) Call a tool

curl -X POST "https://api.aexol.ai/mcp" \
  -H "Authorization: Bearer sk-aexol-team-..." \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 4,
    "method": "tools/call",
    "params": {
      "name": "remote_get_context",
      "arguments": {}
    }
  }'

Troubleshooting

401 Unauthorized

  • Verify header is present: Authorization: Bearer ...
  • Confirm key is a team API key (sk-aexol-team-...)
  • Check for missing/extra spaces in header value

Wrong key type

  • If you used a user/session token, Remote MCP will reject it.
  • Use a team API key generated for your team.

Wrong host/port/path

  • Ensure you are calling the backend MCP endpoint exactly: /mcp
  • Verify environment URL and port (local vs staging vs production)

Remote connection issues

  • Use HTTP JSON-RPC to backend /mcp for remote/team MCP.
  • Confirm the request includes a team API key in Authorization: Bearer ....
  • See Working with AI & IDEs for integration guidance.

Related Docs