creamtop 0.1.0

MCP server that manages a GitHub-backed shared skill library for Claude Code.
# Skill Library MCP Server

An MCP server that manages a GitHub-backed shared skill library for Claude Code. Skills are markdown files (`SKILL.md`) organized in folders. The server handles sync, discovery, and sharing.

This instance serves a bundle of cache design, implementation, and operations skills.

Written in Rust, shipped as a single static binary.

## Install

```bash
cargo install --path .
# or build a release binary
cargo build --release
```

The resulting binary lives at `target/release/creamtop`.

## Configuration

Set these environment variables:

| Variable | Required | Description |
|----------|----------|-------------|
| `SKILL_REPO_OWNER` | Yes | GitHub repo owner |
| `SKILL_REPO_NAME` | Yes | GitHub repo name |
| `GITHUB_TOKEN` | For publish | GitHub PAT with repo access |
| `SKILL_CACHE_DIR` | No | Cache path (default: platform cache dir + `skill-library/`) |
| `RUST_LOG` | No | Log filter for `tracing` (e.g. `info`, `debug`) |

## Claude Code Integration

Add to your Claude Code MCP settings:

```json
{
  "mcpServers": {
    "skill-library": {
      "command": "/path/to/creamtop",
      "env": {
        "SKILL_REPO_OWNER": "your-org",
        "SKILL_REPO_NAME": "skill-library",
        "GITHUB_TOKEN": "ghp_..."
      }
    }
  }
}
```

## Tools

| Tool | Description |
|------|-------------|
| `list_skills` | List all cached skills |
| `load_skill(name)` | Load a skill's content (fetches from GitHub if not cached) |
| `sync_skills` | Pull latest skills from GitHub into the local cache |
| `publish_skill(name, content)` | Push a skill to the shared GitHub repo |
| `search_skills(query)` | Search skills by name, description, or tags |

## Skill Format

Each skill lives in a directory with a `SKILL.md` file. Frontmatter is optional:

```markdown
---
description: A useful skill for code review
tags: [review, quality]
---

# Code Review

Your skill content here...
```

Without frontmatter, the skill name comes from the directory and the description from the first paragraph.

## Development

```bash
cargo build            # debug build
cargo test             # run unit tests
cargo run              # run the server on stdio (needs env vars set)
cargo clippy           # lints
```