This project offers an MCP server for Centreon. Built in Python with the FastMCP library, it enables users to perform operations on a Centreon instance using natural language commands.
Using natural language, you can ask the Centreon MCP server to:
- Check the real-time status of your hosts and services, filtering by state, group, category, poller, and more.
- Get an instant count of how many resources are up, down, or in trouble, without digging through dashboards.
- Look back at what happened on a host or service recently — outages, notifications, downtimes, acknowledgements, and comments.
- Browse, create, update, and delete hosts, services, and their categories, groups, severities, and templates.
- Manage commands and monitoring servers (pollers).
- Push configuration changes to your pollers by generating or reloading them on demand.
- Acknowledge an alert, schedule a downtime, add a comment, or trigger an immediate check.
- Review current acknowledgements and downtimes, and cancel them when they're no longer needed.
- Retrieve a service's metrics along with their current values and warning/critical thresholds.
For the exact list of underlying tools, see TOOLS.md.
- Clone the repository
git clone https://github.com/centreon/centreon-mcp.git
cd centreon-mcp- Ensure all required environment variables are set. Default values are used for optional variables.
| Name | Required | Default | Description |
|---|---|---|---|
CENTREON_BASE_URL |
True |
Base URL of the Centreon instance. | |
CENTREON_MCP_PORT |
False |
8000 |
Port used to start the Centreon MCP service. |
CENTREON_MCP_LOG_LEVEL |
False |
INFO |
Minimal severity level for Centreon MCP service logs. |
- Start the MCP server
uv run centreon-mcp-server- If the MCP server is not reachable from the internet, expose it using a tunneling tool such as Ngrok:
ngrok http 8000Replace
8000with the value ofCENTREON_MCP_PORTif you changed the default.
- Build Docker image
docker build -t centreon/mcp .- Start the MCP server
docker compose up- To make it reachable from the internet, export
NGROK_AUTHTOKENin the environment and enablengrokprofile.
docker compose --profile ngrok upUse
curl http://localhost:4040/api/tunnelsto retrieve public URL
ChatGPT
- Open ChatGPT and sign in.
- Click on your profile picture in the bottom-left corner, then select Settings.
- Go to the Connectors section and click Create.
- Fill in the form:
- Name:
Centreon(or any name you prefer) - URL: the address of your running MCP server, e.g.
https://<ngrok-subdomain>.ngrok-free.app/mcp - Headers: Add valid Centreon API token in headers under field
centreon-api-token
- Name:
- Click Save to register the connector.
Once the connector is added, ChatGPT will automatically discover and use the Centreon MCP tools in your conversations.
Mistral Le Chat
- Open Le Chat and sign in.
- Click on Intelligence in the left sidebar, then select Connectors.
- Click Add a connector, then choose Custom MCP connector.
- Fill in the form:
- Name:
Centreon(or any name you prefer) - URL: the address of your running MCP server, e.g.
https://<ngrok-subdomain>.ngrok-free.app/mcp - Headers: Add valid Centreon API token in headers under field
centreon-api-token
- Name:
- Click Save to register the connector.
Once the connector is added, Le Chat will automatically discover and use the Centreon MCP tools in your conversations.
Claude Code
Register your MCP server using the HTTP transport with the local address and Centreon API token in headers
claude mcp add -t http centreon http://localhost:8000/mcp -H "centreon-api-token: <token>"Replace
8000with the value ofCENTREON_MCP_PORTif you changed the default.
List configured MCP servers and confirm centreon is present:
/mcp list