mcp-opsbeacon-server
The MCP Opsbeacon Server is an implementation that allows interaction with the Opsbeacon API using Claude. It supports listing commands and connections with authentication and structured JSON responses.
MCP Opsbeacon Server
An MCP (Model Context Protocol) server implementation for Opsbeacon operations. This server allows you to interact with the Opsbeacon API through Claude, providing tools for listing commands and connections.
Features
- List available Opsbeacon commands
- List available Opsbeacon connections
- Authentication via bearer token
- Error handling and logging
- Returns structured JSON responses
Prerequisites
- Python 3.10 or higher
- Access to Opsbeacon API
- Valid bearer token
Installation
- Clone the repository:
git clone [repository-url]
cd mcp-opsbeacon-server
- Install the package:
pip install -e .
Configuration
There are three ways to provide your Opsbeacon configuration:
Option 1: Using with Claude Desktop
If you want to use the MCP server with Claude, add the required configuration to Claude Desktop's config file:
{
"mcpServers": {
"opsbeacon": {
"command": "python",
"args": [
"-m",
"mcp_opsbeacon_server"
],
"env": {
"OPSBEACON_TOKEN": "your-bearer-token-here",
"OPSBEACON_BASE_URL": "your-base-url-here"
}
}
}
}
Option 2: Using Environment Variables
You can set the required environment variables directly:
export OPSBEACON_TOKEN="your-bearer-token-here"
export OPSBEACON_BASE_URL="your-base-url-here"
Option 3: Using .env File (Recommended for Development)
Create a .env
file in the project root directory. You can use the provided template:
cp .env.example .env
Then edit the .env
file with your actual values:
OPSBEACON_TOKEN=your-bearer-token-here
OPSBEACON_BASE_URL=your-base-url-here # Optional, defaults to https://api.console.opsbeacon.com
The .env
file is ignored by git to prevent committing sensitive information.
Base URL Configuration
The OPSBEACON_BASE_URL
configuration is optional. If not specified, the server will use the default URL:
https://api.console.opsbeacon.com
You can override this default by setting the OPSBEACON_BASE_URL
through any of the configuration methods described above.
Configuration Precedence
You can use any of these options simultaneously. When multiple options are used, the precedence is:
- Environment variables
- .env file
- Claude config
- Default base URL
Testing
To test the server functionality, ensure you have configured the required variables using any of the methods above (the .env file is recommended for development), then run:
python test_server.py
Usage
Available Tools
-
list_commands
- Lists all available Opsbeacon commands
- No additional parameters required
- Returns command details in JSON format
-
list_connections
- Lists all available Opsbeacon connections
- No additional parameters required
- Returns connection details in JSON format
Example Usage with Claude
Human: List all available Opsbeacon commands.
Claude: Let me help you list the available commands using the Opsbeacon MCP server.
Error Handling
Common error cases:
OPSBEACON_TOKEN environment variable is not set
: Make sure the token is properly configured in claude_desktop_config.jsonError listing commands/connections
: Check your network connection and token validityConnection refused
: Make sure the Opsbeacon API is accessible
Development
To add new features or modify existing ones:
- Make your changes
- Run the test script to verify functionality
- Update documentation as needed