Skip to main content

MCP server for Base2 open-source AWS tools — documentation, guidance, and CLI execution

Project description

base2-mcp

MCP server for Base2 open-source AWS tools — documentation, guidance, and CLI execution.

Supported Tools

Tool Description Install
cfhighlander CloudFormation DSL and component library gem install cfhighlander
shelvery Automated AWS backups (EBS, RDS, EC2, Redshift, DocumentDB) pip install shelvery
cfn-guardian CloudWatch alarm management via CloudFormation gem install cfn-guardian
monitorable CloudWatch alarm coverage auditing Clone repo
cfn-vpn AWS Client VPN management via CloudFormation gem install cfn-vpn
bastion-cli Temporary bastion EC2 instances via Session Manager GitHub releases

Quick Start

Cursor IDE (Recommended)

Add to your .cursor/mcp.json (project-level) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "base2": {
      "command": "uvx",
      "args": ["--upgrade", "base2-mcp"]
    }
  }
}

No manual install needed — uvx fetches the package from PyPI automatically and --upgrade ensures you always get the latest version on server restart.

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "base2": {
      "command": "uvx",
      "args": ["--upgrade", "base2-mcp"]
    }
  }
}

Alternative: pin to a specific version

If you need a stable version that won't change unexpectedly:

{
  "mcpServers": {
    "base2": {
      "command": "uvx",
      "args": ["base2-mcp==0.1.0"]
    }
  }
}

Prerequisite: uv

uvx is part of uv, a fast Python package manager. Install it with:

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# Or via pip
pip install uv

What It Does

This MCP server gives AI agents two capabilities for each tool:

  1. Documentation — Embedded docs with CLI usage, configuration, examples, and best practices. The agent can read these to understand any tool without you explaining it.

  2. CLI Execution — Wrapper tools that run the actual CLI commands (cfhighlander cfcompile, shelvery ebs create_backups, bastion launch, etc.) and return structured output.

Available MCP Tools

Discovery:

  • list_base2_tools — Overview of all 6 tools
  • get_tool_docs — Detailed documentation for a specific tool

cfhighlander:

  • cfhighlander_docs / cfhighlander_compile / cfhighlander_publish / cfhighlander_test / cfhighlander_validate

shelvery:

  • shelvery_docs / shelvery_create_backups / shelvery_clean_backups / shelvery_pull_shared_backups

cfn-guardian:

  • guardian_docs / guardian_compile / guardian_deploy / guardian_show_alarms / guardian_show_resources

monitorable:

  • monitorable_docs / monitorable_audit

cfn-vpn:

  • cfn_vpn_docs / cfn_vpn_init / cfn_vpn_modify / cfn_vpn_routes / cfn_vpn_sessions

bastion-cli:

  • bastion_docs / bastion_launch / bastion_connect / bastion_terminate / bastion_port_forward

Prerequisites

The MCP server itself only needs Python 3.11+ and the mcp package. The CLI tools it wraps need to be installed separately — the server will tell the agent if a tool is missing and how to install it.

Development

# Install dependencies
pip install -r requirements.txt -r requirements-dev.txt

# Run tests
pytest tests/ -v

# Run the server locally (stdio mode)
python src/app.py

Architecture

base2-mcp/
├── src/
│   ├── app.py                    # FastMCP entry point (stdio transport)
│   ├── docs/                     # Embedded markdown documentation
│   │   ├── __init__.py           # Doc loader utility
│   │   ├── cfhighlander.md
│   │   ├── shelvery.md
│   │   ├── guardian.md
│   │   ├── monitorable.md
│   │   ├── cfn_vpn.md
│   │   └── bastion.md
│   ├── executor/
│   │   └── cli_runner.py         # Shared subprocess executor
│   └── tools/                    # One module per tool
│       ├── overview_tools.py     # list_base2_tools, get_tool_docs
│       ├── cfhighlander_tools.py
│       ├── shelvery_tools.py
│       ├── guardian_tools.py
│       ├── monitorable_tools.py
│       ├── cfn_vpn_tools.py
│       └── bastion_tools.py
├── tests/                        # pytest suite (56 tests)
├── pyproject.toml
├── requirements.txt
└── requirements-dev.txt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

base2_mcp-0.2.1.tar.gz (54.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

base2_mcp-0.2.1-py3-none-any.whl (53.4 kB view details)

Uploaded Python 3

File details

Details for the file base2_mcp-0.2.1.tar.gz.

File metadata

  • Download URL: base2_mcp-0.2.1.tar.gz
  • Upload date:
  • Size: 54.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for base2_mcp-0.2.1.tar.gz
Algorithm Hash digest
SHA256 2225e53d881aeca77951d78b68c1a82cf987b63cb711b5a78c8645f0b2157933
MD5 f09ca238aaa415c913f00a776c8993b5
BLAKE2b-256 1d3f3958e6f36eae37eb17e2790280ee2a92a4176d138c9547dbea4f6fc7a28f

See more details on using hashes here.

Provenance

The following attestation bundles were made for base2_mcp-0.2.1.tar.gz:

Publisher: publish.yml on base2Services/base2-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file base2_mcp-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: base2_mcp-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 53.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for base2_mcp-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bf47b38a464fb604443e3297e0f10b9c52a303639d478bdf7a22ebf32e8763ff
MD5 c0e94292d8c7ed9c27ca1c4a25602e58
BLAKE2b-256 3b51721904a98afd3b749b468a9ceb8eff5cbc59137eefaaf27ad8abde1140fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for base2_mcp-0.2.1-py3-none-any.whl:

Publisher: publish.yml on base2Services/base2-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page