Skip to main content

coala-cli

======================

Overview

Coala, implemented as a Python package, is a standards-based framework for turning command-line tools into reproducible, agent-accessible toolsets that support natural-language interaction.

How the Framework Works

Coala integrates the Common Workflow Language (CWL) with the Model Context Protocol (MCP) to standardize tool execution. This approach allows Large Language Model (LLM) agents to discover and run tools through structured interfaces, while strictly enforcing the containerized environments and deterministic results necessary for reproducible science.

Core Components

  • Client Layer: Any MCP-compliant client application (e.g., Claude Desktop, Cursor, or custom interfaces) that utilizes LLMs (such as Gemini, GPT-5, or Claude) to enable natural language interaction.
  • Bridge Layer: A local, generic MCP server that acts as a schema translator. Unlike standard MCP servers that require custom Python wrappers for each tool, the bridge layer automatically parses CWL definitions and exposes the CWL-described command-line tools as executable MCP utilities.
  • Execution Layer: A standard CWL runner that executes the underlying binaries within containerized environments (Docker). This ensures that analyses are reproducible and isolated from the host system's dependencies.

Quick Start

  1. Initialize: Create a local MCP server instance using mcp_api().
  2. Register: Load your domain-specific tools described in CWL via add_tool() (supports local files or repositories).
  3. Serve: Start the MCP server using mcp.serve().

The Workflow

  • Interact: The user sends a natural language query to the MCP Client (e.g., Claude Desktop).
  • Discover & Select: The Client retrieves the tool list from the MCP server. The LLM selects the appropriate tool and sends a structured request for the analysis.
  • Execute: Coala translates this selection into a CWL job and executes it within a container (Docker), ensuring reproducibility.
  • Respond: The execution logs and results are returned to the LLM, which interprets them and presents the final answer to the user.

Get Started

Requirements

  • Python 3.12 or later
  • FastAPI
  • Requests
  • Pydantic
  • Uvicorn
  • cwltool
  • mcp (Model Context Protocol SDK)

Installation

To install coala-cli, run the following command:

pip install coala-cli

Use Cases

Release files for coala-cli 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for coala-cli 0.2.1
File Size Uploaded
coala_cli-0.2.1.tar.gz 13.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for coala-cli 0.2.1
File Interpreter ABI Platform
coala_cli-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 26.7 kB

Release files / coala_cli-0.2.1.tar.gz

Download URL coala_cli-0.2.1.tar.gz
Size 13.2 kB
Tags Source
SHA-256 checksum
How to use checksums
becaee84469fc780881dce907345bd3f0b8daa1172062fc26faccd9cc5b2678b
BLAKE2b-256 checksum
How to use checksums
50c30459213a7cf899dc72f6e63f792c952751a7fc3bf31257c9b91e20a9c0d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 12, 2026.

Transparency log

Release files / coala_cli-0.2.1-py3-none-any.whl

Download URL coala_cli-0.2.1-py3-none-any.whl
Size 13.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
62b6228645d16c64c55adf62bdf126651645ffd0a06f44fcbdb48580c8ab6da2
BLAKE2b-256 checksum
How to use checksums
81b24b1a856e81eb9572639e844aada7a37c207f6cc2e2d2e025cd8ce91fc668
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 12, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page