Skip to main content

MCP server that exposes Claude-style skills to any MCP client.

Project description

Skillz MCP Server


⚠️ Experimental proof‑of‑concept. Potentially unsafe. Treat skills like untrusted code and run in sandboxes/containers. Use at your own risk.


skillz is a Python package and CLI that exposes Anthropic‑style skills (directories with a SKILL.md that starts with YAML front‑matter) to any MCP client. It recursively discovers skills, registers one tool per skill, returns authored instructions and absolute file paths, and can optionally run a helper script from the skill in a temporary workspace. Now that the package is on PyPI you can run it anywhere with uvx skillz.

Prerequisites

  • Python 3.12 or newer (managed automatically when using uv)
  • uv package manager (the script metadata declares runtime dependencies)

Quick Start

  1. Populate a directory with skills following Anthropic’s format (SKILL.md + optional resources).

  2. Run the server with the directory path (downloads and caches the latest PyPI release automatically):

    uvx skillz /path/to/skills --verbose
    

    By default the server listens over stdio. Pass --transport http or --transport sse with --host, --port, and --path if your client needs a network transport.

  3. Use --list-skills to validate parsing without starting the transport:

    uvx skillz /path/to/skills --list-skills
    

Local development workflow

  • Install uv and Python 3.12+.

  • Sync an isolated environment with all runtime and developer dependencies (only needed when developing locally in the repo):

    uv sync
    
  • Run the test suite:

    uv run pytest
    
  • Launch the CLI against your local checkout while iterating:

    uv run python -m skillz /path/to/skills --list-skills
    

Packaging status

  • The repository now ships a pyproject.toml, src/skillz/ package layout, and uv.lock for reproducible builds.
  • Console entry point skillz resolves to python -m skillz when installed as a package.
  • GitHub Actions workflow .github/workflows/publish.yml builds/tests and, on published GitHub Releases, publishes via PyPI trusted publisher once the pypi environment is approved in project settings.

Discovery and tool registration

  • Recursively walks the skills root and loads every SKILL.md (nesting supported).
  • One MCP tool is registered per skill. Tool name = the slug of name (e.g., algorithmic-art).
  • Tool description = the description from front‑matter (no extra metadata included).

Note: Skillz returns absolute paths but does not register MCP resources for file reads. Clients should read files directly from disk or provide their own file‑access flow.

Security & Safety Notice

  • This code is experimental, untested, and should be treated as unsafe.
  • Script execution happens outside any sandbox besides a temporary directory. Use only with trusted skill content and within controlled environments.
  • Review and harden before exposing to real users or sensitive workflows.

License

Released under the MIT License (see LICENSE).

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

skillz-0.1.1.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

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

skillz-0.1.1-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file skillz-0.1.1.tar.gz.

File metadata

  • Download URL: skillz-0.1.1.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for skillz-0.1.1.tar.gz
Algorithm Hash digest
SHA256 6ea4fe29f7427cc18da26c5a5a2cf710db77b072c8557bc158b4537b9f776187
MD5 3a1d71b764c913751c3cd292e29c23ce
BLAKE2b-256 e8cc84a155186a0d11d5ab760a0fe60bb46ad3b60bd347d3b59c87312bf7c670

See more details on using hashes here.

Provenance

The following attestation bundles were made for skillz-0.1.1.tar.gz:

Publisher: publish.yml on intellectronica/skillz

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

File details

Details for the file skillz-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: skillz-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for skillz-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 08c49b89f84d7044fd5d6cfb8f99c9aa271a580d8c699eb7c554738e6035fa49
MD5 655d7b73eb2809c39b387b5faad903f9
BLAKE2b-256 508ea38b1287a0550dfe35e701744cb07134e2fa04fd72bef85ed30ba9f2c6c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for skillz-0.1.1-py3-none-any.whl:

Publisher: publish.yml on intellectronica/skillz

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