Skip to main content

cwl2mcp

PyPI - Version PyPI - Python Version GitHub Actions Workflow Status Code coverage

A Transpiler Mate plugin deriving MCP tool definitions from parsed CWL v1.0–v1.2 processes. CWL is authoritative for value structure; EOAP mcp:Tool supplies agent-facing metadata. This package does not execute CWL or run an MCP server.

Installation and use

python -m pip install './cwl2mcp[cli]'
transpiler-mate cwl2mcp --output tool.json 'workflow.cwl#main'
transpiler-mate cwl2mcp --output tools.json workflow.cwl

The current runtime requires document-level schema.org application metadata (name, description, dateCreated, license, softwareVersion, softwareHelp, publisher and author) before invoking plugins. The complete example and graph fixture show this metadata. The Python API does not require it.

The runtime resolves imports and selects processes. A #process selection writes one MCP Tool object. Without a fragment, output is an object mapping the runtime's process IDs to tool definitions, including workflows, CommandLineTools and ExpressionTools. This mapping is an export container, not an MCP tools/list response. JSON keys are sorted, output ends with a newline, and parent directories are created. Conversion completes before an existing file is overwritten.

from cwl_utils.parser import load_document_by_uri
from cwl2mcp.converter import to_mcp_tool

process = load_document_by_uri('file:///absolute/path/workflow.cwl')
# Select one process first if the loader returned a list.
tool = to_mcp_tool(process)
print(tool.model_dump_json(by_alias=True, exclude_none=True, indent=2))

Documentation

The documentation follows Diátaxis and is published at https://Transpiler-Mate.github.io/cwl2oci/:

  • tutorials for guided learning;
  • how-to guides for specific tasks;
  • reference for the exact plugin and output contracts;
  • explanation for architecture and design context.

Contributing

See CONTRIBUTING.md. Submit issues at https://github.com/Transpiler-Mate/cwl2oci/issues.

License

Apache License, Version 2.0

Metadata

Release files for cwl2mcp 0.1.0

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

Source distribution (sdist)

Source distribution for cwl2mcp 0.1.0
File Size Uploaded Provenance
cwl2mcp-0.1.0.tar.gz 43.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for cwl2mcp 0.1.0
File Interpreter ABI Platform
cwl2mcp-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 69.7 kB

Release files / cwl2mcp-0.1.0.tar.gz

Download URL cwl2mcp-0.1.0.tar.gz
Size 43.7 kB
Tags Source
SHA-256 checksum
How to use checksums
bed0807962059c65c95d90693a28de0f9a386c509d08b3be8a5ce0dd1c968692
BLAKE2b-256 checksum
How to use checksums
1a91ba8027700ade94c3611fa654dff1e02a83070b0020e3497c7e35e0447021
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 26, 2026.

Transparency log

Release files / cwl2mcp-0.1.0-py3-none-any.whl

Download URL cwl2mcp-0.1.0-py3-none-any.whl
Size 25.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
657febb6496450104187ea4b74857bba1de467d005af2b080d06690e47bc2153
BLAKE2b-256 checksum
How to use checksums
da7445a06698d618987d58149fab8c3cde20f5066553e627249d2e8df32cbce5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 26, 2026.

Transparency log

Security for cwl2mcp 0.1.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for cwl2mcp-0.1.0.tar.gz

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 Oct 26, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

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