skillslap-mcp
v1.13.0
Published
SkillSlap MCP server — Slap Stack tools for AI agent skills and workflows
Maintainers
Readme
skillslap-mcp
MCP server for SkillSlap — the Slap Stack for AI agent skills. Search, install, compose, and publish skills from your AI coding agent.
Setup
Claude Code
claude mcp add skillslap -- npx skillslap-mcpOr with an API token (required for publishing, slapping, and agent tracking):
claude mcp add skillslap -e SKILLSLAP_TOKEN=sk_live_... -- npx skillslap-mcpCursor / Cline
Add to .cursor/mcp.json (or your MCP settings):
{
"mcpServers": {
"skillslap": {
"command": "npx",
"args": ["skillslap-mcp"],
"env": {
"SKILLSLAP_TOKEN": "sk_live_..."
}
}
}
}CLI Login (no copy-paste)
Instead of manually copying a token, run:
npx skillslap-mcp loginThis opens your browser, you click Authorize, and the token is saved automatically to ~/.config/skillslap/credentials. The MCP server picks it up on next start — no SKILLSLAP_TOKEN env var needed.
Environment Variables
| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| SKILLSLAP_TOKEN | For auth'd operations | — | API token from your SkillSlap dashboard (Settings → API Tokens) |
| SKILLSLAP_AGENT_NAME | No | hostname | Display name for this agent in the dashboard |
| SKILLSLAP_MODEL | No | — | Model hint shown in the agent dashboard (e.g. claude-sonnet-4-5) |
| SKILLSLAP_ENV | No | prod | Target environment: local | dev | prod |
| SKILLSLAP_API_URL | No | (resolved from env) | Explicit API URL override (highest priority) |
| SKILLSLAP_DEV_URL | When SKILLSLAP_ENV=dev | — | Staging / preview deployment URL |
| SKILLSLAP_SERVICE_ROLE_KEY | Local/dev admin tools | — | Supabase service role key (for verify_skill, verify_all_unverified) |
Environment resolution order
SKILLSLAP_API_URL— explicit override (takes precedence over everything)SKILLSLAP_ENV=local→http://127.0.0.1:3000(Next.js dev server)SKILLSLAP_ENV=dev→SKILLSLAP_DEV_URLSKILLSLAP_ENV=prod(default) →https://skillslap.com
Agent Tracking
Every agent installation gets a persistent fingerprint stored at ~/.config/skillslap/device_id. This lets the SkillSlap dashboard show which agents are connected to your account, what they've been doing, and their personal skill libraries — without tying identity to a specific token.
You can view and manage your agents at skillslap.com/dashboard/agents.
Tools
search_skills
Search the Slap Stack for agent skills. Returns compact results with install URLs.
query(string) — Search query (omit to browse all)tags(string) — Comma-separated tag filterinvocation_type(string) —agent|user|tool|contextsort(string) —relevance|trending|recent|slaps|focus_poollimit(number) — Max results (default: 10, max: 50)verified(boolean) — Only return verified skillsusername(string) — Filter to skills by a specific author
get_skill
Get details for a specific skill by ID with tiered data loading.
id(string, required) — Skill UUIDtier(number) —1= metadata,2= full (default),3= with files
install_skill
Download a skill formatted for your agent, ready to save.
id(string, required) — Skill UUIDagent(string) — Agent name:claude-code,cursor,cline,codex,windsurf,aider,copilot,gemini-cli,vscode
list_versions
Get version history for a skill with change summaries.
id(string, required) — Skill UUID
publish_skill
Publish a new skill to SkillSlap. Requires SKILLSLAP_TOKEN.
title(string, required) — Skill title (1-100 chars)content(string, required) — Skill content in Markdowndescription(string) — Short description (max 500 chars)tags(string[]) — Tags (max 10)invocation_type(string) —agent|user|tool|contextstatus(string) —draft|active
update_skill
Update a skill you own. Requires SKILLSLAP_TOKEN.
id(string, required) — Skill UUIDtitle(string) — New titlecontent(string) — New content in Markdowndescription(string) — New descriptiontags(string[]) — New tag list (replaces existing)status(string) —draft|active|archivedversion(string) — New version string (e.g."1.1.0")change_summary(string) — What changed (stored in version history)
slap_skill
Add a skill to this agent's personal library. Separate from your human slap count — this is a per-agent bookmark for quick access. Requires SKILLSLAP_TOKEN.
skill_id(string, required) — Skill UUID to add
unslap_skill
Remove a skill from this agent's personal library.
skill_id(string, required) — Skill UUID to remove
list_agent_slaps
List all skills in this agent's personal library. Each agent has its own independent library — useful for giving different agents access to different skill subsets. Requires SKILLSLAP_TOKEN.
list_my_slaps
List all skills the authenticated user has slapped (human endorsements). Requires SKILLSLAP_TOKEN.
compose_skills
Compose multiple skills into a CLAUDE.md + agent_docs structure. No auth required for public skills.
skill_ids(string[], required) — Array of skill UUIDs to composeproject_name(string) — Optional project name for the output
generate_skill
Generate a skill from a natural language description using AI. Requires SKILLSLAP_TOKEN and a BYOK Anthropic API key configured on your account.
prompt(string, required) — Description of the skill to generate (10-2000 chars)auto_publish(boolean) — Publish immediately (default: false, returns draft for review)
verify_skill
Trigger server-side verification for a skill. Runs classify → malware scan → AI analysis. Requires SKILLSLAP_TOKEN or SKILLSLAP_SERVICE_ROLE_KEY (local/dev).
id(string, required) — Skill UUID to verify
verify_all_unverified
Find all active skills missing a system-tier verification and verify them. Ideal for seeding a fresh local or dev environment. Requires SKILLSLAP_TOKEN or SKILLSLAP_SERVICE_ROLE_KEY.
limit(number) — Max skills to process (default: 50)dry_run(boolean) — List without verifying (default: false)
list_collections
List your skill collections. Returns titles, descriptions, visibility, and the skill IDs in each. Requires SKILLSLAP_TOKEN.
create_collection
Create a new skill collection. Requires SKILLSLAP_TOKEN.
title(string, required) — Collection title (1-100 chars)description(string) — Optional descriptionis_public(boolean) — Whether the collection is publicly visible (default: false)
add_to_collection
Add a skill to one of your collections. Requires SKILLSLAP_TOKEN.
collection_id(string, required) — Collection UUIDskill_id(string, required) — Skill UUID to add
list_skill_queue
List pending skill generation requests queued by the authenticated user. Use this to check what requests are waiting to be processed. Requires SKILLSLAP_TOKEN.
claim_queue_item
Atomically claim a skill queue item so no other agent processes it. Call this before starting research or skill creation. Requires SKILLSLAP_TOKEN.
id(string, required) — Queue item UUID (fromlist_skill_queue)
complete_queue_item
Mark a skill queue item as completed (with the resulting skill ID) or failed (with an error message). Triggers a notification to the user. Requires SKILLSLAP_TOKEN.
id(string, required) — Queue item UUIDskill_id(string) — UUID of the published skill (provide on success)error(string) — Error message (provide instead ofskill_idon failure)
list_webhooks
List all webhooks registered on your account. Returns URL, events, active status, and creation date. Requires SKILLSLAP_TOKEN.
create_webhook
Register a new webhook endpoint. SkillSlap will POST a signed payload to your URL when the specified events occur. Requires SKILLSLAP_TOKEN.
url(string, required) — Endpoint URL (must behttps://)events(string[], required) — Event types:skill_published,skill_verified,skill_slapped,skill_installed,queue_completed,queue_failed,agent_session_started
CLI
The package also installs a skillslap CLI for use in terminals and scripts.
# Authentication
skillslap login # browser-based login, saves token automatically
# Discovery
skillslap search "code review"
skillslap search testing --verified --limit=5
skillslap install <skill-id>
skillslap install <username>/<slug> # install by slug
skillslap install <skill-id> --agent=claude-code
# Publishing
skillslap list
skillslap publish ./SKILL.md --tags="python,testing" --status=active
# Target a specific environment per-command:
skillslap --env=local search "security"
skillslap --env=dev publish ./SKILL.md --status=draftLocal Development Mode
Point the MCP server at your local Supabase instance instead of production.
The local service role key is printed by npx supabase status.
{
"mcpServers": {
"skillslap-local": {
"command": "node",
"args": ["/path/to/skillslap/mcp-server/dist/index.js"],
"env": {
"SKILLSLAP_ENV": "local",
"SKILLSLAP_SERVICE_ROLE_KEY": "eyJ..."
}
}
}
}With this config you can call verify_all_unverified from your agent to seed verifications on all local skills — no SQL migrations needed.
Usage Example
You: Search for testing skills
Agent: [calls search_skills with query "testing"]
You: Install the first one
Agent: [calls install_skill with the skill ID]
You: Add that skill to my agent's library
Agent: [calls slap_skill with the skill ID]
You: What skills does this agent have bookmarked?
Agent: [calls list_agent_slaps]
You: Verify all unverified skills on local
Agent: [calls verify_all_unverified with dry_run: true to preview, then without]Changelog
v1.10.0
- Webhook tools —
list_webhooks,create_webhook; manage your webhook endpoints directly from your agent - New webhook events:
skill_slapped,skill_installed,agent_session_started
v1.9.0
- Skill collections —
list_collections,create_collection,add_to_collection; organize skills into named sets and compose them into CLAUDE.md bundles
v1.8.0
- Skill generation queue tools:
list_skill_queue,claim_queue_item,complete_queue_item - Agents can now process user-queued skill generation requests end-to-end
v1.7.0
verify_skillandverify_all_unverifiedtools for triggering the server-side verification pipeline- SKILLSLAP_SERVICE_ROLE_KEY support for local/dev admin operations
v1.6.0
- Skill queue for deferred generation: list, claim, and complete queue items
generate_skilltool for AI-powered skill creation from a prompt
v1.5.0
- Agent tracking — persistent device fingerprint (
~/.config/skillslap/device_id) sent on every API call; connected agents visible in dashboard at/dashboard/agents - Agent skill library — new tools
slap_skill,unslap_skill,list_agent_slaps; each agent maintains its own independent bookmark library separate from human slap counts - New env vars:
SKILLSLAP_AGENT_NAME,SKILLSLAP_MODEL
v1.4.0
- Slug-based skill URLs (
@username/slug) usernamefilter insearch_skills- CLI:
skillslap install username/slugsmart positional arg
v1.3.0
list_my_slapstool- Bearer token support on all authenticated endpoints
v1.2.0
invocation_typefilter,focus_poolsortupdate_skilltool- Unauthenticated
compose_skillsfor public skills - CLI
listandpublishcommands
License
MIT
