home / mcp / sakari mcp server

Sakari MCP Server

MCP Server generated by mcp.ag2.ai

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "ag2-mcp-servers-sakari": {
      "command": "python",
      "args": [
        "mcp_server/main.py",
        "stdio"
      ],
      "env": {
        "CONFIG": "{\"server\": {\"name\": \"sakari_mcp\"}}",
        "SECURITY": "YOUR_SECURITY_PARAMS",
        "CONFIG_PATH": "mcp_server/mcp_config.json"
      }
    }
  }
}

You run an MCP server that exposes the Sakari OpenAPI-based API as a context-aware endpoint for MCP clients. This server lets clients send requests with preserved context, enabling richer interactions and automatic coordination across services.

How to use

Start the server in stdio mode to run locally and test MCP client interactions. You will connect via the standard in/out channel, allowing your client to exchange context-enabled calls with the server.

How to install

Prerequisites are Python 3.9+ and the tooling you use to install dependencies and run the server.

# Step 1: Clone the project
git clone <repository-url>
cd mcp-server

# Step 2: Install dependencies (preferred in dev environment)
pip install -e ".[dev]"

# Alternative if you are using uv to manage the environment
uv pip install --editable ".[dev]"

Additional configuration and startup

You can run the MCP server in standard input/output mode using Python. The following command starts the server in stdio mode and makes it ready to communicate with an MCP client.

python mcp_server/main.py stdio

Environment and runtime configuration

Configure runtime behavior with environment variables. You can point to a JSON configuration file or provide a JSON string to customize the MCP server. Core environment controls include the following.

# Optional: point to a JSON configuration file
export CONFIG_PATH=mcp_server/mcp_config.json

# Or provide a JSON string directly
export CONFIG='{"server": {"name": "sakari_mcp"}}'

# Security-related controls (example placeholder)
export SECURITY=YOUR_SECURITY_PARAMS

Running tests and quality checks

Quality checks help you maintain a healthy codebase. Run linting, formatting, static analysis, and tests to ensure the server remains stable as you develop.

# Linting
ruff check

# Formatting
ruff format

# Static analysis
./scripts/static-analysis.sh

# Running tests with coverage
./scripts/test.sh

Available tools

lint

Run linting to catch syntax and style issues using a linter so your code adheres to project standards.

format

Format code automatically to keep a consistent code style across the project.

static-analysis

Perform static analysis to identify security and quality issues (mypy, bandit, semgrep).

test

Execute the test suite to verify functionality and measure test coverage.

pre-commit

Hook into pre-commit to automatically run checks before committing changes.