AI Agents (MCP)

croit runs an MCP server, so AI agents such as Claude, opencode and pi can read and operate your cluster. The agent reaches every operation of the croit API, and croit checks each call against the roles of the token the agent connects with.

The server answers at https://<your-croit>/api/mcp. It speaks MCP's Streamable HTTP transport and authenticates with a croit API token.

Create an API token

  1. Navigate to Croit → API tokens.
  2. Click Create, give the token a name and pick its roles.
  3. Copy the token. croit shows it only once.

The roles decide what the agent may do. A token with only the Viewer role keeps an agent read-only; give it Admin only if the agent should change the cluster.

The Connect AI agents button on the same page shows the steps below, one tab per agent, with your croit's address already filled in.

Claude Code

claude mcp add --transport http croit https://<your-croit>/api/mcp \
  --header "Authorization: Bearer <token>"

Run claude mcp list to check that Claude Code reaches croit.

Claude Desktop

Claude Desktop starts local MCP servers only, so it reaches croit through the mcp-remote bridge, which needs Node.js. Open Settings → Developer → Edit Config, add croit to claude_desktop_config.json and restart Claude Desktop:

{
  "mcpServers": {
    "croit": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://<your-croit>/api/mcp", "--header", "Authorization:${CROIT_AUTH}"],
      "env": { "CROIT_AUTH": "Bearer <token>" }
    }
  }
}

opencode

croit serves a plugin for opencode 2.1 and newer. Install it, then sign in with your token when opencode asks for it:

curl -fsSL --create-dirs -o ~/.config/opencode/plugins/croit.js \
  https://<your-croit>/api/clients/opencode/croit.js
opencode auth login croit

opencode keeps the token in its own credential store, and the plugin connects croit's MCP server with it. Run opencode mcp list to check the connection.

pi

Add croit to ~/.pi/agent/mcp.json:

{
  "mcpServers": {
    "croit": {
      "url": "https://<your-croit>/api/mcp",
      "headers": { "Authorization": "Bearer <token>" }
    }
  }
}

Run pi mcp list to check the connection.

Troubleshooting

  • Self-signed certificate: Node.js based clients such as Claude Code and mcp-remote reject it. Point them at the certificate with NODE_EXTRA_CA_CERTS=/path/to/croit.pem, and curl with --cacert /path/to/croit.pem.
  • Every request is refused: the MCP server may be switched off. Check croit enable mcp under Croit → Settings.
  • A call fails with a permission error: the token's roles do not allow that operation. Create a token with the roles the agent needs.