CloudThinker read-only MCP server for BigPanda AIOps: reads BIGPANDA_* env at startup, auto-connects to the BigPanda REST API (region-scoped), and serves environment/incident read tools over stdio.
Project description
ct-bigpanda-mcp-server
A read-only CloudThinker MCP server for BigPanda AIOps. BigPanda has no upstream MCP server, so this wraps the BigPanda Incidents V2 / Environments REST API directly and exposes it over stdio, auto-authenticated from environment variables — dropping into CloudThinker's env-injection connection model (same shape as ct-prometheus-mcp-server / ct-rabbitmq-mcp-server).
What it does
- Reads
BIGPANDA_*env vars at startup and pins the REST client to a region. - Probes
GET /environmentsonce at startup to fail fast on a bad key / wrong region. - Serves three read-only tools over stdio. No write path exists.
Run
uvx --from ct-bigpanda-mcp-server@0.1.0 ct-bigpanda-mcp-server
Environment
| Var | Required | Default | Purpose |
|---|---|---|---|
BIGPANDA_API_TOKEN |
yes | — | BigPanda User API Key, sent as Authorization: Bearer <key> |
BIGPANDA_REGION |
no | us |
us → api.bigpanda.io, eu → eu-api.bigpanda.io |
BIGPANDA_ENVIRONMENT_ID |
no | — | default environment for search_incidents / get_incident |
LOG_LEVEL |
no | info |
logging level (also mapped to FASTMCP_LOG_LEVEL) |
The token must be a User API Key (Incidents V2 auth), not a login password. Keys are region-scoped: a US key against the EU host (or vice-versa) returns 404, not 401 — check BIGPANDA_REGION first if you see 404s.
Tools (read-only)
| Tool | Args (all strings) | REST call | Returns |
|---|---|---|---|
list_environments |
— | GET /resources/v2.0/environments |
{environments, total} |
search_incidents |
environment_id, query?, status?, limit? |
GET .../environments/{id}/incidents?query=&page_size= |
{incidents, returned, total, has_more, query} |
get_incident |
environment_id, incident_id |
GET .../environments/{id}/incidents/{incident_id} |
the incident with correlated alerts inline |
limit is a string and is capped server-side at 100; results are also truncated client-side so output stays bounded even if the API ignores page_size. status is a convenience filter lifted into BPQL as status = "<status>"; pass a full query for richer BPQL.
⚠️ Live-tenant verification required before pinning the contract
Authored from the public API reference; the following could not be confirmed offline and MUST be checked against a live BigPanda tenant before the documented contract is trusted (connections-kit lessons return-shapes-wrap-vs-raw, mcp-surface-phantom-tools, tool-args-pagination-cap):
- The exact response wrapping per endpoint (
itemsvsincidentsvs bare array). The client accepts all three defensively, but the real shape should be recorded. - The real
search_incidentspagination parameter name (page_sizeassumed) and its true max page size. - That
listToolsshows exactly these three tool names and nothing else. - The correlated-alerts field name inside an incident (
alertsvsentities).
License
Apache-2.0.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ct_bigpanda_mcp_server-0.1.0.tar.gz.
File metadata
- Download URL: ct_bigpanda_mcp_server-0.1.0.tar.gz
- Upload date:
- Size: 106.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7704b7eb228e9273f2db7c1a8a8ac72bf6bd1096d4c676455f31614fd041eb8b
|
|
| MD5 |
6467117d5a46b57c8f3fb6992901da86
|
|
| BLAKE2b-256 |
12f1cf0d79a9c7865b575ff3a5f87fd4fa3c0d6632e48fb6ac218a637a47f16a
|
File details
Details for the file ct_bigpanda_mcp_server-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ct_bigpanda_mcp_server-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3621019d26cba15eaf2ae43a2bf868f172d7f1a9cb0b041abb28fa9eb6515972
|
|
| MD5 |
d377c11d03a5e13e110429815d80fe0a
|
|
| BLAKE2b-256 |
5113fdf77335748c54deba4ce826d9f9e8af715617efcc126546252eb745b70a
|