MCP Service
The Rise AI Compute Platform provides a platform-level MCP Server (camp-mcp-server), which, based on the Model Context Protocol, encapsulates the platform's tenant, resource, task, and billing query capabilities into standard MCP tools. These tools serve the platform's built-in AI Assistant and can also be integrated with third-party MCP clients such as Claude Desktop and Cursor.
Target audience: Platform administrators (deployment and integration configuration), advanced users (third-party client integration).
Regular users can simply use the AI Assistant directly and do not need to concern themselves with this section.
How It Works
User question → AI Assistant (LLM) → Determines data is needed → Calls MCP tool
↓
camp-mcp-server (tool collection)
↓
CAMP BFF Aggregated API (org / nova endpoints)
↓
Platform live data- Communication between the AI Assistant and the MCP Server uses Streamable HTTP transport. The AI Assistant dynamically discovers the available tool list at runtime, and the model autonomously selects which tool to call based on the user's question.
- The MCP Server itself implements no business logic — it is an MCP wrapper around the console-ui BFF aggregated interfaces (
org/v1/*for tenant/project,nova/v1/*for compute and billing). - Tool results are returned as structured JSON, which the LLM converts into natural language responses, with optional chart tool integration for visualization when needed.
Tool Inventory
camp-mcp-server exposes a total of 25 tools, grouped by domain as follows.
Tenants and Projects
| Tool | Functionality | Key Parameters |
|---|---|---|
list_tenants | List tenants (workspaces) | None |
get_tenant_detail | Get tenant details | Tenant name |
get_tenant_quota | Get tenant quota and usage overview | Tenant name |
get_project_detail | Get project details | Project name |
get_project_quota | Get project quota and usage overview | Project name |
Resources and Workloads
| Tool | Functionality | Key Parameters |
|---|---|---|
list_instances | List container instances | Project name, filterable by status |
list_training_jobs | List training jobs | Project name, filterable by status |
list_inference_services | List inference services | Project name, filterable by status |
list_flavors | List available compute flavors | Architecture (amd64/arm64) |
list_images | List available public images | Architecture |
create_instance | Create a container instance (the only write operation) | Name, flavor, image, tenant, project |
Metering and Billing
| Tool | Functionality |
|---|---|
list_bill_record_system / _workspace / _namespace | Billing record queries from platform / tenant / project perspectives, with time range and pagination support |
get_bill_record_topn_system / _workspace / _namespace | Cost Top N rankings at three levels |
get_bill_record_resource_amount_system / _workspace / _namespace | Resource cost distribution at three levels (CPU/memory/GPU VRAM) |
get_bill_record_timeline_amount_workspace / _namespace | Tenant / project cost trends (by day/month) |
get_bill_record_timeline_allocated_workspace / _namespace | Tenant / project resource allocation trends |
Billing Policies
| Tool | Functionality |
|---|---|
list_billing_policy | Resource and model billing policy list (platform-level / tenant-level) |
All tools except
create_instanceare read-only query tools.create_instancecurrently uses fixed default parameters (single replica, auto-start after creation) and is a demo-only capability — not recommended for production resource creation.
Permission Model
The MCP Server itself performs no permission checks — permissions depend entirely on the identity credentials carried in the request, equivalent to directly calling the platform API:
| Integration Method | Identity Source | Permission Semantics |
|---|---|---|
| Via AI Assistant / Gateway (HTTP mode) | The x-token in the request header is passed through to the backend as-is | Equivalent to that user's own operations — can only see data within that user's permissions on the platform |
| Direct process connection (stdio mode) | Platform account configured via environment variables (CAMP_USERNAME / CAMP_PASSWORD) | All callers share the service account's permissions — use a dedicated low-privilege account |
AI Assistant Integration (Deployment Side)
The AI Assistant configures the MCP Server list via the AI_ASSISTANT_MCP_SERVERS environment variable (JSON array containing id, url, name, enabled). Typical deployment topology:
- camp-mcp-server is deployed as a container within the cluster, listening on port 3000 by default (HTTP mode, exposing both
/mcpand/sseendpoints). - Higress gateway routes the
/mcp-servers/...prefix to this service, ensuring the end user'sx-tokenrequest header is passed through. - Once the AI Assistant service is configured with the above gateway address, it can invoke platform data tools in conversations.
If the AI Assistant only provides operational guidance and never returns actual data, the MCP service is typically not enabled or the gateway route is not configured — follow the above chain to troubleshoot.
Third-Party Client Integration
camp-mcp-server supports both stdio and HTTP transports, and can integrate with any MCP-compatible client.
Claude Desktop / Cursor (stdio mode) — add the following to your client MCP configuration:
{
"mcpServers": {
"camp": {
"command": "node",
"args": ["<camp-mcp-server>/build/index.js"],
"env": {
"CAMP_BASE_URL": "http://<camp-bff address>:3000",
"CAMP_USERNAME": "<platform username>",
"CAMP_PASSWORD": "<platform password>"
}
}
}
}Remote integration (HTTP mode): Point the client to http://<host>:3000/mcp (Streamable HTTP) or http://<host>:3000/sse (SSE) at the deployment address; include the platform login x-token in the request header to authenticate as the user, otherwise it falls back to the service account identity.
Security note: The stdio configuration stores usernames/passwords as plaintext environment variables, and all users in this mode share the same account permissions. For production environments, we recommend using the gateway +
x-tokenpassthrough approach to enforce per-user permissions.
FAQ
Q: What data can MCP tools access? A: Exactly the same as the calling account's permissions on the platform — regular users can only query data from their own tenants/projects, while administrators can access platform-level data.
Q: Can I modify or delete resources through MCP? A: Currently only create_instance is provided as a write tool (demo-only); all others are read-only queries. For modification or deletion operations, use the console pages.
Q: Are the tools invoked by the AI Assistant the same as those called by third-party clients? A: Yes — they are the same tool inventory exposed by the same camp-mcp-server; the only difference is how identity credentials are transmitted.