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.5.tar.gz (100.9 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.5-py3-none-any.whl (41.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: radicle_mcp_server-0.1.5.tar.gz
  • Upload date:
  • Size: 100.9 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.5.tar.gz
Algorithm Hash digest
SHA256 c952b6b990b1a360909de2d28f0cae4e815fb7b44c89f2bfb0f3cae608b54efd
MD5 7f04442eca767d456e77e2844d2bbcd3
BLAKE2b-256 1ef132f52ba2c781ac6b982f0a72210f0df7e9e846451e53c51587c9a0746943

See more details on using hashes here.

File details

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

File metadata

  • Download URL: radicle_mcp_server-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 41.7 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 740461c71de64e64bd9081d9117084801596a41a7f29606db4a03e5a1f06cebd
MD5 8516512e15be2d26cffc39c4d8f8dc45
BLAKE2b-256 2912eec52e8bca6dd26e3d3d9151e7fc25be8a991b012507a07df0c877144d0c

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