Skip to main content

A Model Context Protocol (MCP) server for Radicle CLI with versioning support

Project description

Radicle MCP Server

PyPI version PyPI license Python versions

A Model Context Protocol (MCP) server for Radicle CLI with versioning support.

Features

  • Version Detection: Automatically detects Radicle CLI version at startup
  • Version Management: Supports semantic versioning with base definitions and incremental updates
  • Command Validation: Validates commands against version definitions
  • Deprecation Handling: Warns about deprecated/obsolete features
  • Hybrid Tool Approach: Dedicated tools for common commands + generic executor
  • Error Handling: Structured error responses with JSON output when possible

Supported Commands

Dedicated Tools

The server automatically generates dedicated MCP tools for all Radicle commands and subcommands based on the installed version. For Radicle 1.5.0, this includes 71 dedicated tools:

Main Commands:

  • rad_auth, rad_block, rad_checkout, rad_clean, rad_clone
  • rad_cob, rad_config, rad_follow, rad_fork, rad_help
  • rad_id, rad_inbox, rad_init, rad_inspect, rad_issue
  • rad_ls, rad_node, rad_patch, rad_path, rad_remote
  • rad_seed, rad_self, rad_stats, rad_sync, rad_unblock
  • rad_unfollow, rad_unseed

Subcommand Examples:

  • rad_issue_open, rad_issue_list, rad_issue_show, rad_issue_edit
  • rad_patch_open, rad_patch_list, rad_patch_show, rad_patch_merge
  • rad_node_start, rad_node_stop, rad_node_status, rad_node_logs
  • rad_config_get, rad_config_set, rad_config_schema
  • rad_cob_create, rad_cob_show, rad_cob_update, rad_cob_log

Generic Tool

  • rad_execute: Execute any rad command (fallback for unsupported commands)

Version Support

  • Supported Versions: 1.1.0, 1.2.0, 1.3.0, 1.4.0, 1.5.0
  • Version Resolution: Falls back to closest available version if exact match not found
  • Warning System: One-time warnings for version mismatches and deprecated features
  • Dynamic Tool Generation: Tools are generated based on the specific version's capabilities

Installation

PyPI (Recommended)

pip install radicle-mcp-server

Development

# Clone the repository
git clone <repository-url>

# Install dependencies
cd radicle-mcp-server
uv sync

Running the Server

Using Just (Recommended)

just run                    # Stdio transport (default)
just run-http              # HTTP transport on localhost:8000

Using UV Directly

uv run python -m src.server                    # Stdio transport
uv run python -m src.server --transport http   # HTTP transport

MCP Client Configuration

OpenCode

Add to your MCP configuration:

{
  "mcpServers": {
    "radicle": {
      "command": "radicle-mcp-server"
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "radicle": {
      "command": "radicle-mcp-server"
    }
  }
}

Development (from source)

If you're developing from source, use:

{
  "mcpServers": {
    "radicle": {
      "command": "uv",
      "args": ["run", "python", "-m", "src.server"],
      "cwd": "/path/to/radicle-mcp-server"
    }
  }
}

Usage

The server provides MCP tools that can be used with any MCP-compatible client. It automatically detects the installed Radicle CLI version and adapts its behavior accordingly.

Development

This project uses:

  • FastMCP: For MCP server implementation
  • uv: For dependency management
  • Python 3.13+: For modern type annotations

Versioning System

The versioning system uses YAML definitions stored in src/definitions/:

  • radicle-1.1.0.yaml through radicle-1.5.0.yaml: Complete command definitions for each version
  • schema.py: Validation schema and data structures
  • Each version file contains all available commands, subcommands, options, and examples

This design allows for efficient handling of semantic versioning while maintaining backward compatibility.

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

radicle_mcp_server-0.1.3.tar.gz (92.0 kB view details)

Uploaded Source

Built Distribution

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

radicle_mcp_server-0.1.3-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

Details for the file radicle_mcp_server-0.1.3.tar.gz.

File metadata

  • Download URL: radicle_mcp_server-0.1.3.tar.gz
  • Upload date:
  • Size: 92.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for radicle_mcp_server-0.1.3.tar.gz
Algorithm Hash digest
SHA256 eeb063c29874b2d401c0ffe981d80ee25c93a789af3513d0a1f3d986c3a95c1c
MD5 51fd730b857873239556b6c29ea7218f
BLAKE2b-256 f4c32a4a15f56b372bb4d2046201b21d5743c30b9dd32cda74cca55f3c5119e5

See more details on using hashes here.

File details

Details for the file radicle_mcp_server-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: radicle_mcp_server-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 40.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for radicle_mcp_server-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8850c5a6abc096bacf0fd6509d3ae2c27df8cfca1d61d687ec4e0c8e87cab9e3
MD5 9e41d8efb745a59e72def92c73c85eb5
BLAKE2b-256 e6b11ceb1122f48c378728a5fe4e016e73a666b870b17e3eab2f0e2da70cc5e5

See more details on using hashes here.

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