πŸš€ MCP Server for Dynamic Tool Creation v0.1.1

Let Your AI
Build Its Own Tools

Skillz is a self-extending MCP server. Create WASM tools from Rust or register scripts in any languageβ€”Python, Node.js, Ruby, Bashβ€”at runtime. Now with automatic dependency management.

⚑ Quick Install

Get started in seconds with cargo

πŸ¦€ Terminal
# Install WASM target
rustup target add wasm32-wasip1

# Install Skillz
cargo install skillz

Then add to your editor's MCP config:

{
  "mcpServers": {
    "skillz": {
      "command": "skillz"
    }
  }
}

Works with your favorite editor

πŸ–±οΈ Cursor πŸ€– Claude Desktop πŸ’» VS Code πŸ„ Windsurf ⚑ Zed

Powerful Features

Everything you need to build dynamic AI tools

πŸ¦€

WASM Tools (Rust)

Compile Rust code to WebAssembly at runtime. Tools run in a secure sandbox with memory isolation and near-native performance.

πŸ“œ

Script Tools (Any Language)

Register tools in Python, Node.js, Ruby, Bash, or any language. Scripts communicate via JSON-RPC 2.0 protocol.

πŸ“¦

Dependency Management

Automatic pip/npm dependency installation. Each tool gets its own isolated virtual environment that persists across restarts.

πŸ”§

Sequential Creation

Build skills step-by-step with guided workflow: Design β†’ Implement β†’ Test β†’ Finalize. Perfect for complex tools.

πŸ“‘

Full MCP Protocol

Resources, roots, logging, progress updates, elicitation, and sampling support. Complete MCP compatibility.

πŸ’Ύ

Persistent Tools

Tools, dependencies, and environments persist across restarts. Build your AI's toolbox over time.

πŸ”’

Secure Sandbox

WASM tools run in isolated WebAssembly environment. Scripts execute as separate processes with filtered environment.

πŸš€

Auto-Publish CI

Every version bump automatically publishes to crates.io via GitHub Actions. Always up to date.

πŸ“–

Dynamic Guide

Built-in skillz://guide resource that automatically updates when new tools are added.

πŸ› οΈ Available Tools

Built-in tools for creating and managing your AI toolkit

Tool Description Type
build_tool Compile Rust code β†’ WASM tool. Automatically handles cargo build. Core
register_script Register script tool with optional dependencies (pip/npm packages). Core
create_skill Step-by-step skill creation: Design β†’ Implement β†’ Test β†’ Finalize. Core
call_tool Execute any registered tool (WASM or script) by name. Core
list_tools List all available tools grouped by type. Core
install_deps Install dependencies for existing script tools. New
delete_tool Delete a tool and clean up its files and environments. New
test_validate Validate Rust code before building (syntax check). Core
add_root Add a workspace root for script file access. Core
list_roots List all workspace roots available to scripts. Core

Simple to Use

Create tools with just a few lines of code

πŸ¦€ Rust WASM Tool
// Build a Fibonacci generator
build_tool(
  name: "fibonacci",
  code: "fn main() {
    let mut a = 0u64;
    let mut b = 1;
    for _ in 0..20 {
        print!(\"{} \", a);
        let t = a + b;
        a = b;
        b = t;
    }
}",
  description: "Generates Fibonacci numbers"
)

Architecture

Clean, modular design

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  AI Assistant (Claude, Cursor, etc.)             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                β”‚ MCP Protocol
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                       Skillz MCP Server                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚   WASM Tools    β”‚  β”‚  Script Tools   β”‚  β”‚   Sequential    β”‚  β”‚
β”‚  β”‚  (Rust β†’ WASM)  β”‚  β”‚ (Any Language)  β”‚  β”‚    Creation     β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚           Tool Registry & Dependency Manager              β”‚  β”‚
β”‚  β”‚    β€’ Virtual environments (Python venv, Node modules)     β”‚  β”‚
β”‚  β”‚    β€’ Auto-install pip/npm packages                        β”‚  β”‚
β”‚  β”‚    β€’ Persistent tool storage                              β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                

How It Works

From code to execution in seconds

1

Write Code

AI writes Rust code for WASM tools or scripts in any language (Python, Node.js, etc.). Specify dependencies if needed.

2

Compile & Register

WASM tools are compiled using cargo. Scripts are saved with appropriate interpreter. Dependencies are installed in isolated environments.

3

Execute

WASM runs in Wasmtime sandbox. Scripts execute via subprocess with JSON-RPC 2.0 protocol using their virtual environment.

4

Persist

Tools, dependencies, and environments are stored on disk. Available across server restarts. Build your AI's toolbox over time.