# BuboBot MCP Server

A Model Context Protocol (MCP) server to retrieve monitoring, incident, notification and other data from Bubobot services.

[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

## What is BuboBot MCP?

BuboBot MCP is a server implementation of the Model Context Protocol that enables AI models to access and retrieve data from Bubobot monitoring services. It provides a standardized interface for:

- 📊 **System Monitoring Data** - Retrieve metrics, alerts, and system status
- 🚨 **Incident Management** - Access incident reports, status updates, and resolution data  
- 📢 **Notifications** - Fetch notification history and delivery status
- 🔧 **Service Information** - Get service configurations and health checks

## Installation

```bash
pip install bubobot-mcp
```

## Quick Start

### For Claude Desktop Integration

Add to your Claude Desktop configuration (`claude_desktop_config.json`):

```json
# Default stdio transport
{
  "mcpServers": {
    "bubobot-mcp": {
      "command": "python",
      "args": ["-m", "bubobot_mcp"],
      "env": {
        "BEARER_TOKEN": "your-bearer_token"
      }
    }
  }
}
```

### For Development

```python
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
from mcp.client.streamable_http import streamablehttp_client

# Connect via stdio transport
server_params = StdioServerParameters(
    command="python", 
    args=["-m", "bubobot_mcp"],
    env={"BEARER_TOKEN": "your-bearer_token"}
)


# Or connect via HTTP to running server
http_transport = await streamablehttp_client(
    "http://localhost:8000/mcp",
    headers={"authorization": "your-bearer_token"}
)

```



## Features

- ✅ **MCP Compliant** - Full Model Context Protocol support
- ⚡ **Async Architecture** - High-performance async/await implementation
- 🔌 **Multiple Transports** - Supports stdio and HTTP transports
- 🛠️ **Configurable** - Flexible configuration via files or environment variables
- 📝 **Comprehensive Logging** - Detailed logging with customizable levels
- 🔒 **Secure** - Built-in authentication and error handling

## Requirements

- Python 3.10 or higher
- Valid Bubobot API credentials
- Network access to Bubobot services


## License

This project is licensed under the MIT License - see the [LICENSE](https://github.com/bubobot/bubobot-mcp/blob/main/LICENSE) file for details. 