Skip to main content
Glama

MCP Server for Coroot

CLAUDE.md7.61 kB
# Claude Desktop Configuration for MCP Coroot **IMPORTANT DOCUMENTATION POLICY**: This project maintains only two documentation files: - `README.md` - Public-facing project documentation - `CLAUDE.md` - Internal instructions and configuration details - (Exception: `LICENSE` and `CHANGELOG` files are also allowed) Please DO NOT create any other markdown documentation files. All documentation should be consolidated into these two files. **IMPORTANT TESTING STANDARDS**: This project follows professional Python testing standards: - Test files must follow Python naming conventions: `test_*.py` - Test files should be organized by the module they test (e.g., `test_client.py` for client functionality, `test_server.py` for server functionality) - DO NOT use unprofessional suffixes like `test_final_*.py`, `test_new_*.py`, `test_all_remaining_*.py`, etc. - Consolidate related tests into appropriately named test files rather than creating multiple files with incremental names - All tests must maintain their original functionality when moved between files --- This file contains instructions for configuring the MCP Coroot server with Claude Desktop. ## Overview The MCP Coroot server provides 61 tools for interacting with Coroot observability platform: - Authentication and user management (5 tools) - Project creation and management (9 tools) - Application monitoring and troubleshooting (3 tools) - Infrastructure overview and incidents (2 tools) - Deployment and system overviews (5 tools) - Dashboard management (5 tools) - Integration configuration (4 tools) - Configuration management (9 tools) - Advanced troubleshooting (3 tools) - Custom cloud pricing (3 tools) - Database instrumentation (2 tools) - System configuration (4 tools) - Risk overview (1 tool) - Health checks (1 tool) - Panel data and advanced configuration (6 tools) Test coverage: 87% (197 tests passing) ## Quick Setup ### Using Published Package (Recommended) Edit your Claude Desktop configuration: **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json` **Windows**: `%APPDATA%\Claude\claude_desktop_config.json` ```json { "mcpServers": { "coroot": { "command": "uvx", "args": ["mcp-coroot"], "env": { "COROOT_BASE_URL": "http://localhost:8080", "COROOT_USERNAME": "admin", "COROOT_PASSWORD": "your-password" } } } } ``` ### For SSO/MFA Users If your organization uses SSO or MFA, use session cookie authentication: ```json { "mcpServers": { "coroot": { "command": "uvx", "args": ["mcp-coroot"], "env": { "COROOT_BASE_URL": "http://localhost:8080", "COROOT_SESSION_COOKIE": "your-auth-cookie-value" } } } } ``` To get your session cookie: 1. Login to Coroot through your browser 2. Open Developer Tools (F12) 3. Go to Application/Storage → Cookies 4. Copy the value of the `auth` cookie ### For Local Development If you're developing or testing locally: **macOS**: ```json { "mcpServers": { "coroot": { "command": "uv", "args": ["run", "mcp-coroot"], "cwd": "/path/to/mcp-coroot", "env": { "COROOT_BASE_URL": "http://localhost:8080", "COROOT_USERNAME": "admin", "COROOT_PASSWORD": "your-password" } } } } ``` **Windows**: ```json { "mcpServers": { "coroot": { "command": "uv", "args": ["run", "mcp-coroot"], "cwd": "C:\\path\\to\\mcp-coroot", "env": { "COROOT_BASE_URL": "http://localhost:8080", "COROOT_USERNAME": "admin", "COROOT_PASSWORD": "your-password" } } } } ``` ## Authentication Methods The server supports three authentication methods: 1. **Username/Password** (Recommended) - Automatic login and session management 2. **Session Cookie** - Required for SSO/MFA environments 3. **API Key** - Limited to data ingestion endpoints only ## Available Commands Once configured, you can ask Claude to: ### Monitoring & Analysis - "Show me all Coroot projects" - "Check the health of all applications in production" - "Show me error logs for the API service in the last hour" - "Find slow traces in the payment service" - "Analyze why the frontend has high latency" - "Show CPU profiling data for the backend service" ### Infrastructure Management - "List all nodes in the production project" - "Show me the resource usage of server01" - "Check for any incidents in the last 24 hours" - "Display the deployment history" - "Show me the risk assessment for our infrastructure" ### Configuration & Integration - "Set up Slack notifications for critical alerts" - "Configure Prometheus integration" - "Update SLO thresholds for the API service" - "Show me the application categorization rules" - "Create a new application category for microservices" - "Update the database category to include new patterns" - "Delete the test category we no longer need" - "Create a custom dashboard for Redis monitoring" ### Advanced Features - "Perform root cause analysis on the payment service failures" - "Show database instrumentation settings for PostgreSQL" - "Configure custom cloud pricing for our AWS instances" - "Update the AI configuration for RCA" - "List all API keys for the production project" ## Known Limitations Some Coroot API endpoints have limitations: ### Large Response Warnings - **Traces**: Can return 100k+ tokens. Use time filters to limit data. - **Profiling**: Can return 180k+ tokens. Always specify time ranges. ### Empty Response Handling Some endpoints return empty bodies on success. The MCP server handles these gracefully. ### Not Yet Implemented - Dashboard CRUD operations (limited functionality) - RCA feature (returns "not implemented yet") - Role creation/update (405 Method Not Allowed) ### FastMCP Type Conversion Workaround Due to a known issue in FastMCP v2.10.6, the following tools have workarounds for parameter type conversion: - `configure_profiling`: The `sample_rate` parameter accepts strings (e.g., "0.1") and converts to float - `configure_tracing`: The `sample_rate` accepts strings, and `excluded_paths` accepts JSON strings (e.g., '["/health", "/metrics"]') This workaround ensures compatibility with MCP clients that pass all parameters as strings. The implementation handles both string and native types transparently. ## Troubleshooting ### Connection Issues - Verify COROOT_BASE_URL is correct and accessible - Check if Coroot is running: `curl http://localhost:8080/health` - Ensure no firewall is blocking the connection ### Authentication Errors - For basic auth: Verify username and password are correct - For SSO/MFA: Ensure session cookie is valid and not expired - Session cookies expire after 7 days of inactivity ### Tool Errors - "Tool not found": Restart Claude Desktop after configuration changes - Large responses: Use time filters to reduce data size - Empty responses: Normal for some operations (deletes, updates) ## Development To run the server manually for testing: ```bash # Clone and install git clone https://github.com/jamesbrink/mcp-coroot.git cd mcp-coroot uv sync --all-groups # Run with environment variables COROOT_BASE_URL=http://localhost:8080 \ COROOT_USERNAME=admin \ COROOT_PASSWORD=your-password \ uv run mcp-coroot ``` ### Running Tests ```bash # Run all tests uv run pytest # Run with coverage uv run pytest --cov # Run specific test uv run pytest tests/test_server.py -v ``` ## Support For issues or questions: - GitHub Issues: https://github.com/jamesbrink/mcp-coroot/issues - Coroot Documentation: https://coroot.com/docs

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jamesbrink/mcp-coroot'

If you have feedback or need assistance with the MCP directory API, please join our Discord server