Metadata-Version: 2.4
Name: bubobot-mcp
Version: 0.0.2
Summary: A Model Context Protocol (MCP) server to retrieve monitoring, incident, notification and other data from Bubobot services
Author: BuboBot Team
Maintainer: BuboBot Team
License: MIT
Project-URL: Homepage, https://github.com/bubobot/bubobot-mcp
Project-URL: Documentation, https://bubobot-mcp.readthedocs.io/
Project-URL: Repository, https://github.com/bubobot/bubobot-mcp.git
Project-URL: Bug Tracker, https://github.com/bubobot/bubobot-mcp/issues
Project-URL: Changelog, https://github.com/bubobot/bubobot-mcp/blob/main/CHANGELOG.md
Keywords: mcp,model-context-protocol,ai,monitoring,incident-management,system-tools,async,server
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Monitoring
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Communications
Classifier: Framework :: AsyncIO
Classifier: Typing :: Typed
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: mcp>=1.9.4
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: python-dotenv>=1.1.1
Requires-Dist: aiofiles>=24.1.0
Requires-Dist: requests>=2.32.4
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: flake8>=6.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: pre-commit>=3.0.0; extra == "dev"
Provides-Extra: docs
Requires-Dist: sphinx>=6.0.0; extra == "docs"
Requires-Dist: sphinx-rtd-theme>=1.2.0; extra == "docs"
Requires-Dist: myst-parser>=1.0.0; extra == "docs"
Provides-Extra: test
Requires-Dist: pytest>=7.0.0; extra == "test"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "test"
Requires-Dist: pytest-cov>=4.0.0; extra == "test"
Requires-Dist: coverage[toml]>=7.0.0; extra == "test"
Dynamic: license-file

# 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. 
