Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@skilljack/mcp

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@skilljack/mcp - npm Package Compare versions

Comparing version
0.5.1
to
0.6.0
+12
-4
package.json
{
"name": "@skilljack/mcp",
"version": "0.5.1",
"version": "0.6.0",
"description": "MCP server that discovers and serves Agent Skills. I know kung fu.",

@@ -16,2 +16,3 @@ "type": "module",

"dist",
"dist/ui",
"README.md",

@@ -39,3 +40,5 @@ "LICENSE"

"scripts": {
"build": "tsc",
"build": "npm run build:ui && npm run build:ui:display && tsc",
"build:ui": "vite build",
"build:ui:display": "cross-env INPUT=skill-display.html vite build --emptyOutDir false",
"start": "node dist/index.js",

@@ -54,4 +57,6 @@ "dev": "tsx watch src/index.ts",

"dependencies": {
"@modelcontextprotocol/sdk": "^1.25.1",
"@modelcontextprotocol/ext-apps": "^1.0.0",
"@modelcontextprotocol/sdk": "^1.25.3",
"chokidar": "^5.0.0",
"simple-git": "^3.27.0",
"yaml": "^2.7.0",

@@ -63,5 +68,8 @@ "zod": "^3.25.0"

"@types/node": "^22.10.0",
"cross-env": "^7.0.3",
"tsx": "^4.19.2",
"typescript": "^5.7.2"
"typescript": "^5.7.2",
"vite": "^6.0.0",
"vite-plugin-singlefile": "^2.0.0"
}
}

@@ -5,3 +5,3 @@ # Skilljack MCP

> **Recommended:** For best results, use an MCP client that supports `tools/listChanged` notifications (e.g., Claude Code). This enables dynamic skill discovery - when skills are added or modified, the client automatically refreshes its understanding of available skills.
> **Recommended:** For best results, use an MCP client that supports `tools/listChanged` notifications (e.g., Claude Code). This enables dynamic skill discovery - when skills are added or modified, the client automatically refreshes its understanding of available skills. Alternatively, use `--static` mode for predictable behavior with a fixed skill set.

@@ -16,2 +16,3 @@ ## Features

- **Resource Subscriptions** - Real-time file watching with `notifications/resources/updated`
- **Configuration UI** - Manage skill directories through an [interactive UI](https://blog.modelcontextprotocol.io/posts/2026-01-26-mcp-apps/) in supported clients

@@ -70,2 +71,22 @@ ## Motivation

### Static Mode
By default, Skilljack MCP watches skill directories for changes and notifies clients when skills are added, modified, or removed.
Enable **static mode** to freeze the skills list at startup:
```bash
skilljack-mcp --static /path/to/skills
# or
SKILLJACK_STATIC=true skilljack-mcp /path/to/skills
```
In static mode:
- Skills are discovered once at startup and never refreshed
- No file watchers are set up for skill directories
- `tools.listChanged` and `prompts.listChanged` capabilities are `false`
- Resource subscriptions remain fully dynamic (individual skill files can still be watched)
Use static mode when you need predictable behavior or have a fixed set of skills that won't change during the session.
**Windows note**: Use forward slashes in paths when using with MCP Inspector:

@@ -76,2 +97,37 @@ ```bash

## Configuration UI
In MCP clients that support [MCP Apps](https://blog.modelcontextprotocol.io/posts/2026-01-26-mcp-apps/) (like Claude Desktop), you can manage skill directories through an interactive UI.
**To open the configuration UI**, ask your assistant to show the skilljack config:
> "show me the skilljack config"
The UI displays:
- Current skill directories with skill counts
- Status indicators showing which directories are from config vs command-line
- Options to add new directories or remove existing ones
![Skills Configuration UI](docs/images/skills-config-ui.png)
Changes made through the UI are persisted to the server's configuration. Clients that support `tools/listChanged` notifications will see updates immediately; others may require reconnection.
## Skill Display UI
View all available skills and customize their invocation settings through the skill display UI.
**To open the skill display UI**, ask your assistant:
> "what skills are configured in skilljack?"
The UI displays:
- All discovered skills with name, description, and file path
- **Source indicators** showing whether each skill is from a local directory or GitHub repository
- **Invocation toggles** to enable/disable Assistant (model auto-invoke) and User (prompts menu) visibility
- **Customized badge** when settings differ from frontmatter defaults
![Skill Display UI](docs/images/skill-display-ui.png)
Skills from GitHub repositories show the org/repo name (e.g., `modelcontextprotocol/ext-apps`), making it easy to identify where each skill originates.
## How It Works

@@ -328,2 +384,38 @@

## Skill Visibility Control
Control which skills appear in tools vs prompts using optional frontmatter fields:
| Frontmatter | In Tool Description | In Prompts Menu | Use Case |
|-------------|---------------------|-----------------|----------|
| (default) | Yes | Yes | Normal skills |
| `disable-model-invocation: true` | No | Yes | User-triggered workflows (deploy, commit) |
| `user-invocable: false` | Yes | No | Background context (model auto-loads when relevant) |
### Example: User-Only Skill
Hide from model auto-discovery, require explicit user invocation via `/skill-name` prompt:
```yaml
---
name: deploy
description: Deploy to production
disable-model-invocation: true
---
```
### Example: Model-Only Skill
Hide from prompts menu, model uses automatically when relevant:
```yaml
---
name: codebase-context
description: Background information about this codebase
user-invocable: false
---
```
Note: Resources (`skill://` URIs) always include all skills regardless of these settings, allowing explicit access when needed.
## Testing

@@ -330,0 +422,0 @@