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. Until the package is published to PyPI you can run it directly from a local checkout via uv run python -m 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:

    uv run python -m 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:

    uv run python -m 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:

    uv sync
    
  • Run the test suite:

    uv run pytest
    
  • Launch the CLI without leaving the project directory:

    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.0.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.0-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: skillz-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 e0f145290ce622f8f53230ccfbe2a2880392643dff41548d93a9cca43f62b71a
MD5 1f9b0524898aa17371fd256fa96abad2
BLAKE2b-256 06612abf2291089aaff1005a3c47527fa22d2d55e5703eff68ce5547e35ca703

See more details on using hashes here.

Provenance

The following attestation bundles were made for skillz-0.1.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: skillz-0.1.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c37dad9709affbe73ac7cec647390c61f8be099621e38f318ece20711082db86
MD5 fb9b2dacee4382ce808ed30b5cccf615
BLAKE2b-256 a0ea7d2a1f32e59f6c6f7e1063ce4a1992c6ea576e524bbc9af1021ed61e66c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for skillz-0.1.0-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