skills-manager-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@skills-manager-mcpbootstrap the current project workspace"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Skills Manager MCP
A production-grade Model Context Protocol (MCP) server and CLI tool for managing AI agent skills across VS Code, Claude, Antigravity Desktop, Cursor IDE, and Codex.
Overview
Skills Manager MCP provides intelligent, zero-configuration management of AI agent skills and bundles across your development environment. Whether you're working in VS Code with Copilot, Claude, Cursor IDE, Antigravity Desktop, or Codex, this tool automatically handles skill installation, caching, configuration merging, and version management.
Key Features
š Zero-Config Setup ā Automatic first-run initialization with platform-aware registration
šÆ Multi-Editor Support ā Unified MCP registration for VS Code, Claude, Cursor IDE, Antigravity Desktop, and Codex
š¦ Smart Caching ā Global skill cache at
~/.ai-skills/cache/eliminates redundant downloadsš Config Merging ā Intelligently combines project-specific and personal global skill collections
šļø Workspace Detection ā Automatic project root discovery using multiple heuristics
š Metadata Tracking ā Maintains
.agents/skills-manager.jsonwith versioning and schema migrationsš Health Diagnostics ā Built-in
doctorcommand for troubleshootingš ļø Headless Installation ā Perfect for CI/CD pipelines and unattended environments
š Full API ā Comprehensive MCP tools for programmatic skill management
Related MCP server: dev-env-setup
Table of Contents
Requirements
Node.js: 20.0.0 or newer (LTS recommended)
Operating System: Windows, macOS, or Linux
Git: Required for skill repository cloning
The package enforces Node.js version requirements at runtime with a clear error message if an older version is detected.
Installation
Global Installation (Recommended)
Install globally to use the CLI and MCP server across all projects:
npm install -g skills-manager-mcpOr with pnpm:
pnpm add -g skills-manager-mcpNote: No npm postinstall scripts are required. The tool performs all setup automatically on first use.
Verification
Verify the installation:
skills-manager-mcp --version
skills-manager-mcp statusGetting Started
Automatic First-Run Setup
The tool automatically configures itself on first use:
skills-manager-mcp statusThis single command:
Detects first-time installation
Creates global storage at
~/.ai-skills/Initializes the skill cache
Auto-registers with all detected editors (VS Code, Claude, Cursor IDE, etc.)
Displays initialization summary
Sample Output:
Skills Manager MCP first-time setup detected...
ā Global storage initialized: ~/.ai-skills
ā Skills cache ready: ~/.ai-skills/cache
ā Antigravity MCP registered: ~/.gemini/antigravity-ide/mcp.json
ā VS Code MCP registered: ~/.config/Code/User/mcp.json
ā Cursor IDE MCP registered: ~/.config/Cursor/User/mcp.json
ā Claude Code MCP registered: ~/.claude.json
ā Codex MCP registered: ~/.config/Codex/User/mcp.json
ā Server executable path: ~/.local/share/npm/node_modules/skills-manager-mcp/dist/index.js
Initialization complete.Subsequent runs skip initialization instantly.
Manual Setup
To re-run setup or register with additional editors:
skills-manager-mcp setupMulti-Editor Integration
VS Code Integration
The MCP server automatically registers with all VS Code variants during initialization.
Configuration: mcp.json (automatically updated)
Supported Variants:
VS Code (stable)
VS Code Insiders
VSCodium
Paths by Platform:
Windows:
%APPDATA%\Code\User\mcp.jsonmacOS:
~/Library/Application Support/Code/User/mcp.jsonLinux:
~/.config/Code/User/mcp.json
Configuration Format:
{
"servers": {
"skills-manager": {
"type": "stdio",
"command": "node",
"args": ["/path/to/skills-manager-mcp/dist/index.js"]
}
}
}Usage in VS Code:
Open Command Palette (
Ctrl+Shift+P/Cmd+Shift+P)Search "MCP: List Servers"
Select and start
skills-managerUse skills in Copilot Chat agent mode
Claude Desktop Integration
Claude Desktop (the GUI application) uses claude_desktop_config.json with the mcpServers top-level key.
Configuration: claude_desktop_config.json (automatically updated)
Paths by Platform:
Windows (Standard):
%APPDATA%\Claude\claude_desktop_config.jsonWindows (Store / MSIX):
%LOCALAPPDATA%\Packages\Claude_*\LocalCache\Roaming\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Configuration Format:
{
"mcpServers": {
"skills-manager": {
"command": "node",
"args": ["/path/to/skills-manager-mcp/dist/index.js"]
}
}
}Claude Code Integration
Claude Code (the terminal-based CLI agent) uses ~/.claude.json for user-level tools and .mcp.json for project-scoped tools.
Configuration: ~/.claude.json (automatically updated)
Paths by Platform:
All Platforms:
~/.claude.jsonWindows:
%USERPROFILE%\.claude.jsonProject-level:
.mcp.json(in project root)
Configuration Format:
{
"preferences": { ... },
"mcpServers": {
"skills-manager": {
"command": "node",
"args": ["/path/to/skills-manager-mcp/dist/index.js"]
}
}
}For detailed Claude setup instructions, see CLAUDE_SETUP.md.
Cursor IDE Integration
Cursor IDE uses mcp.json with the mcpServers top-level key.
Configuration: ~/.cursor/mcp.json (automatically updated)
Paths by Platform:
Global / User:
~/.cursor/mcp.json(all platforms)Project-level:
.cursor/mcp.json(in project root)
Configuration Format:
{
"mcpServers": {
"skills-manager": {
"command": "node",
"args": ["/path/to/skills-manager-mcp/dist/index.js"]
}
}
}Codex CLI Integration
OpenAI Codex CLI uses config.toml in TOML format with [mcp_servers.<name>] tables.
Configuration: ~/.codex/config.toml (automatically updated)
Paths by Platform:
Global / User:
~/.codex/config.toml(all platforms)Project-level:
.codex/config.toml(in project root)
Configuration Format (TOML):
[mcp_servers.skills-manager]
command = "node"
args = ["/path/to/skills-manager-mcp/dist/index.js"]Antigravity Desktop Integration
Antigravity Desktop is the primary MCP target with specialized registration.
Configuration Files:
~/.gemini/config/mcp_config.jsonā Primary~/.gemini/antigravity-ide/mcp.jsonā Secondary
Configuration Format:
{
"mcpServers": {
"skills-manager": {
"type": "stdio",
"command": "node",
"args": ["/path/to/skills-manager-mcp/dist/index.js"]
}
}
}CLI Commands
skills-manager-mcp status
Displays a comprehensive status dashboard including configuration, cache statistics, MCP registration status across all editors, workspace detection, and installed skills.
Usage:
skills-manager-mcp status [projectPath]Output Includes:
Global configuration presence
Cache skill count
MCP registration status per editor
Detected workspace and detection source
List of installed skills in workspace
skills-manager-mcp doctor
Runs comprehensive diagnostic health checks on installation, configuration, cache, and MCP registration.
Usage:
skills-manager-mcp doctorChecks Performed:
ā dist/index.js exists and is valid
ā Antigravity configuration file
ā MCP path validity and file existence
ā VS Code MCP registration
ā Claude MCP registration
ā Cursor IDE MCP registration
ā Codex MCP registration
ā Global cache availability
ā skills.config.json validity
Sample Output:
Skills Manager Doctor
ā dist/index.js exists
ā Antigravity configuration exists
ā MCP path valid
ā VS Code MCP registered
ā Claude MCP registered
ā Global cache available
ā skills.config.json valid
Everything is healthy.skills-manager-mcp bootstrap [projectPath]
Initializes a project workspace for skill management.
Usage:
skills-manager-mcp bootstrap [projectPath]Operations:
Detects or validates workspace root
Creates
.agents/skills/directory structureLoads and merges project and global skill configurations
Installs all configured skills (from cache or remote repository)
Creates
.agents/skills-manager.jsonmetadata trackerGenerates detailed installation report
Output Example:
Workspace: /path/to/project [Source: package.json]
Installed: 3
- find-skills
- frontend-design
- mattpocock-skills (bundle)
Skipped: 0
Failed: 0skills-manager-mcp sync [projectPath]
Synchronizes workspace skills with global personal collection.
Usage:
skills-manager-mcp sync [projectPath]Operations:
Fetches latest global skill configuration
Re-downloads all configured skills (updates)
Updates metadata and cache
Validates installation integrity
Use Case: When you've updated ~/.ai-skills/skills.config.json globally and want to apply changes across all projects.
skills-manager-mcp install [projectPath]
Installs only missing skills, skipping already-installed ones.
Usage:
skills-manager-mcp install [projectPath]Useful for:
Adding new skills to an existing project
Recovering from partial installations
CI/CD pipelines requiring idempotent operations
skills-manager-mcp remove <skill1> [skill2] [...skillN]
Removes specified skills from the project workspace.
Usage:
# Remove single skill
skills-manager-mcp remove find-skills
# Remove multiple skills
skills-manager-mcp remove find-skills frontend-design mattpocock-skills
# Remove from both filesystem and config (prevents re-installation)
skills-manager-mcp remove find-skills --from-config
skills-manager-mcp remove find-skills -cOptions:
--from-config,-cā Also remove skill entries fromskills.config.json
Output Example:
Removed: 1
- find-skills
Skipped: 0
Failed: 0skills-manager-mcp setup
Manually re-run setup and MCP registration for all editors.
Usage:
skills-manager-mcp setupUseful for:
Re-registering after editor installation
Fixing MCP configuration issues
Manual initialization on different platforms
Configuration
Global Skills Collection (~/.ai-skills/skills.config.json)
Manage your master skills collection globally:
{
"skills": [
{
"name": "find-skills",
"repository": "https://github.com/vercel-labs/skills",
"skill": "find-skills"
},
{
"name": "frontend-design",
"repository": "https://github.com/anthropics/skills",
"skill": "frontend-design"
},
{
"type": "bundle",
"name": "mattpocock-skills",
"repository": "https://github.com/mattpocock/skills"
}
]
}Project-Specific Configuration (./skills.config.json)
Override or extend global configuration per project:
{
"skills": [
{
"name": "tdd",
"repository": "https://github.com/custom/skills",
"skill": "tdd"
}
]
}Merge Behavior: Project skills with matching name override global skills.
Configuration Schema
Field | Type | Required | Description |
| string | ā | Unique skill identifier (alphanumeric, hyphens, underscores) |
| string | ā | Git HTTPS repository URL containing skill(s) |
| string | Folder name in repository; defaults to | |
| string |
|
Metadata Tracker (.agents/skills-manager.json)
Automatically maintained project metadata:
{
"version": "1.6.0",
"updatedAt": "2026-08-14",
"migrations": {
"1.0": "completed",
"1.6.0": "completed"
},
"skills": {
"find-skills": {
"type": "skill",
"source": "https://github.com/vercel-labs/skills",
"installedAt": "2026-08-14",
"version": "latest"
}
}
}MCP Tools Reference
When running within VS Code (Copilot Chat agent mode), Claude, or Antigravity Desktop, the following MCP tools are available:
Tool | Purpose |
| Diagnose workspace detection and configuration |
| Initialize project with skills |
| Update skills from global collection |
| Install missing skills only |
| Remove skills from project |
| Audit current installation |
| Validate skill completeness |
Architecture
Directory Structure
~/.ai-skills/
āāā skills.config.json # Global skill collection
āāā config.json # Workspace detection settings
āāā cache/
āāā find-skills/
āāā mattpocock-skills/
<project>/
āāā .agents/
ā āāā skills/ # Installed skills
ā āāā skills-manager.json # Installation metadata
āāā skills.config.json # Project config (optional)Design Patterns
Layered Architecture ā Clear separation between CLI, orchestration, services, and utilities
Idempotent Operations ā All commands are safe to run multiple times
Lazy Initialization ā Zero-config setup on first use
Configuration Merging ā Smart override semantics for project + global configs
Schema Versioning ā Automatic metadata migrations for forward compatibility
Troubleshooting
MCP Server Not Connecting
Symptom: Editor doesn't recognize the MCP server.
Solution:
Run diagnostics:
skills-manager-mcp doctorRe-run setup:
skills-manager-mcp setupRestart the editor
Check file permissions on MCP config files
Skills Installation Fails
Symptom: Error during bootstrap or install.
Solution:
Verify workspace detection:
skills-manager-mcp statusCheck network connectivity (repositories must be accessible)
Validate
skills.config.jsonJSON syntaxEnsure repository URLs use HTTPS
Review
doctoroutput for configuration issues
Workspace Not Detected
Symptom: status shows incorrect or no workspace.
Solution:
Run with explicit path:
skills-manager-mcp bootstrap /path/to/projectEnsure project contains a marker file:
package.json,.git,pnpm-lock.yaml, etc.Check
~/.ai-skills/config.jsonfor custom detection settings
Cache Issues
Symptom: Skill installation is slow or cached versions are stale.
Solution:
Clear cache manually:
rm -rf ~/.ai-skills/cacheRebuild cache:
skills-manager-mcp sync
Development
Prerequisites
Node.js 20.0.0+
pnpm (or npm)
TypeScript
Setup & Build
git clone https://github.com/your-org/skills-manager-mcp.git
cd skills-manager-mcp
pnpm install
pnpm run buildTesting
# Run tests
pnpm test
# Watch mode
pnpm test:watchProject Structure
src/
āāā cli.ts # CLI entry point
āāā index.ts # MCP server entry point
āāā skillManager.ts # Core orchestration
āāā commands/ # CLI command handlers
āāā services/ # Platform-specific services
āāā antigravityRegistry.ts
āāā vscodeRegistry.ts
āāā claudeCodeRegistry.ts
āāā cursorRegistry.ts
āāā codexRegistry.tsSupport & License
Documentation
Claude Setup Guide ā Detailed Claude integration instructions
Configuration Reference ā Skills config schema
Architecture Overview ā System design and data flow
Issues & Feedback
Report issues on GitHub Issues.
License
MIT License ā Copyright Ā© 2024-2026. See LICENSE for details.
Security & Privacy
No telemetry ā Your usage remains private
Local-only operation ā All processing happens on your machine
No automatic updates ā Manual npm updates only
Unencrypted configs ā Treat
~/.ai-skills/like sensitive configuration
Questions? Consult the CLAUDE_SETUP.md guide or open an issue on GitHub.
Available Tools
7 toolsbootstrap_projectA
Automatically bootstrap a new or existing project workspace by setting up .agents/skills, loading personal skill collection & project config, using global cache, installing missing skills, and updating version metadata tracker (.agents/skills-manager.json).
| Name | Required | Description | Default |
|---|---|---|---|
| configPath | No | Optional explicit path to a skills.config.json file. | |
| projectPath | No | Path to the target project workspace directory. AI agents should pass the user's currently active project workspace directory path here. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It lists specific side effects: setting up .agents/skills, loading config, using global cache, installing missing skills, and updating .agents/skills-manager.json. This is transparent about the write operations. It does not mention potential caveats like overwriting existing files or requiring network access, but the disclosed actions are substantial and unlikely to mislead.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence but efficiently packs all key information: the action (bootstrap), the scope (new or existing project workspace), and the specific steps. It is front-loaded with the primary purpose and avoids filler. Every clause contributes to understanding the tool's behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and the absence of an output schema, the description covers the main behaviors and artifacts affected. It does not describe return values or error scenarios, but the list of setup steps provides a solid understanding for an agent to select and invoke the tool. The presence of siblings adds context, and this description clearly positions bootstrap_project as the comprehensive setup action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: both configPath and projectPath have descriptions. The tool description adds no parameter-specific details beyond what the schema already provides. It mentions 'loading personal skill collection & project config' which may relate to configPath, but this is not explicit. The baseline of 3 is appropriate because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: automatically bootstrap a new or existing project workspace. It lists concrete actions (setting up .agents/skills, loading personal skill collection & project config, using global cache, installing missing skills, updating version metadata tracker) which distinguish it from sibling tools like install_skills or sync_skills by being the comprehensive setup operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: when bootstrapping a new or existing project workspace. It does not explicitly mention exclusions or alternative tools, but the phrase 'bootstrap a new or existing project workspace' implies it is the go-to for full setup, leaving install_skills for targeted installs. However, explicit guidance on when not to use it (e.g., 'for single-skill installs, use install_skills instead') is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_missing_skillsA
Check the status of project skills against merged project/global skills.config.json without triggering any installation.
| Name | Required | Description | Default |
|---|---|---|---|
| configPath | No | Optional explicit path to skills.config.json file. | |
| projectPath | No | Path to the target project workspace directory. AI agents should pass the user's currently active project workspace directory path here. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It usefully discloses that installation is not triggered, but it does not clarify what 'status' means, whether any state is modified, or what the output format looks like. This is a moderate gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that conveys the core operation and a key caveat with no filler or wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and annotations, the description is somewhat thin. It explains the check action but not what constitutes 'status' or the nature of the returned result. The parameter descriptions help, but overall the tool could benefit from clarifying expected outputs or side-effect guarantees.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already documented. The description does not add extra meaning beyond the schema, matching the baseline for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('check') and resource ('status of project skills'), references the merged config file, and explicitly notes it does not trigger installation. This distinguishes it from sibling tools like sync_skills and install_skills.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a read-only status check is needed without installation, which contrasts with sync/install siblings. However, it lacks explicit when-not-to-use or alternative tool recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workspace_infoA
Debugging tool to inspect the active project workspace resolution, detection source, server directory protection status, and workspace validity.
| Name | Required | Description | Default |
|---|---|---|---|
| projectPath | No | Path to the target project workspace directory. Pass the active project workspace folder path. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. The verb 'inspect' implies a read-only operation, but the description does not explicitly state that no changes are made, nor does it describe the return value or error behavior. It adds some transparency but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the tool's purpose ('Debugging tool') and enumerates specific aspects concisely without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple signature (one optional param, no output schema), and the description covers the main purpose. However, it could name the return value or clarify what 'validity' entails, but it's reasonably complete for a debugging helper.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a clear description of 'projectPath' with 100% coverage, so the tool description doesn't need to add more. It doesn't, which is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('inspect') and resource ('active project workspace'), enumerating concrete aspects (resolution, detection source, protection status, validity). It differentiates from sibling tools which are all setup/management actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Debugging tool' provides clear context for when to use it (during troubleshooting), and the read-oriented verb 'inspect' distinguishes it from the action-oriented siblings. However, it doesn't explicitly mention when not to use it or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
install_skillsA
Install missing project skills defined in project/global skills.config.json into .agents/skills. Uses workspace auto-detection, global cache, and version tracking.
| Name | Required | Description | Default |
|---|---|---|---|
| configPath | No | Optional explicit path to skills.config.json file. | |
| projectPath | No | Path to the target project workspace directory. AI agents should pass the user's currently active project workspace directory path here. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavioral traits. It reveals that the tool uses workspace auto-detection, global cache, and version tracking, and it implies only missing skills are installed. However, it does not specify whether existing skills are overwritten, if network access is required, or any side effects, leaving some ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose and followed by key behavioral details. Every sentence contributes information without redundancy or excessive length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description provides the core purpose and some behavioral details, but it lacks comprehensive coverage of side effects, prerequisites, or return behavior. It is adequate for basic understanding but not fully complete for an installer tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully covers both parameters with descriptions, giving a baseline of 3. The description adds value by explaining that workspace auto-detection can override projectPath and that the config can be project or global, which enriches the meaning of configPath and projectPath beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Install'), the resource ('missing project skills defined in project/global skills.config.json'), and the destination ('.agents/skills'). The mention of 'missing' and 'version tracking' differentiates it from sibling tools like sync_skills or check_missing_skills.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: to install missing skills based on configuration. It provides context about workspace auto-detection and global cache but does not explicitly name alternatives or when-not-to-use conditions. This is clear but lacks direct exclusions, so a score of 4 is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_installed_skillsA
List all currently installed skills inside the project (.agents/skills) along with version metadata tracker details.
| Name | Required | Description | Default |
|---|---|---|---|
| projectPath | No | Path to the target project workspace directory. AI agents should pass the user's currently active project workspace directory path here. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the operation is a listing, specifies the exact location (.agents/skills), and notes the inclusion of version metadata tracker details. This provides useful behavioral context, though it stops short of describing output format or side-effect absence.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It efficiently conveys the action, scope, and extra details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with one optional parameter and no output schema, the description gives sufficient context about what is listed and where. It doesn't explain return shape, but the simplicity of the tool makes this a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a detailed description for projectPath, achieving 100% coverage. The tool description adds no parameter-specific meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and names the resource 'installed skills inside the project (.agents/skills)', also mentioning 'version metadata tracker details'. This clearly distinguishes it from sibling tools like install_skills, remove_skills, and sync_skills.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intent is clear from the verb and scope, but there is no explicit guidance on when to use this tool versus alternatives such as get_workspace_info or sync_skills. Usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_skillsA
Remove one or an array of specified skills or bundles from the project workspace (.agents/skills) and update metadata tracking.
| Name | Required | Description | Default |
|---|---|---|---|
| skills | Yes | Array of skill or bundle names to remove. | |
| projectPath | No | Path to the target project workspace directory. AI agents should pass the user's currently active project workspace directory path here. | |
| removeFromConfig | No | Optional. If true, also removes skills from project skills.config.json to prevent auto-reinstallation. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosure. It does disclose the removal location and metadata tracking, but it does not mention that removal is likely irreversible, what happens to bundles containing multiple skills, or what 'update metadata tracking' means in practice. This leaves important behavioral context implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the action, target, location, and side effect in order. It contains no redundant or filler words and is easily scannable by an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a mutation with no output schema, and the description covers the action and location. However, it lacks indication of expected return behavior, confirmation of success, or consequences for bundled skills. For a destructive operation, more detail on reversibility and side effects would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters (skills, projectPath, removeFromConfig) are already fully documented. The description adds no new parameter detail beyond referring to 'specified skills or bundles', which mirrors the skills parameter. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Remove' and clearly identifies the resource ('skills or bundles') and the location ('.agents/skills'). It also notes the side effect of updating metadata tracking, distinguishing it from siblings like install_skills or sync_skills.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context makes the purpose clearāremoving skills or bundlesāand the verb 'remove' contrasts naturally with 'install' or 'sync'. However, it does not explicitly state when to prefer this tool over alternatives or mention exclusions (e.g., when not to use it).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sync_skillsC
Synchronize project workspace skills with your personal skill collection (~/.ai-skills/skills.config.json) and global cache.
| Name | Required | Description | Default |
|---|---|---|---|
| configPath | No | Optional explicit path to a skills.config.json file. | |
| projectPath | No | Path to the target project workspace directory. AI agents should pass the user's currently active project workspace directory path here. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description must disclose behavioral traits. It only mentions the act of synchronization and the target locations, but does not clarify the direction of sync, potential side effects (e.g., overwriting files), or whether this is a read or write operation. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no fluff. It leads with the verb and primary resource, though the phrase 'with your personal skill collection... and global cache' is slightly ambiguous. Overall, it is efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of output schema and annotations, the description is too thin. It fails to explain return values, side effects, or how this tool relates to sibling tools. For a sync operation with potential file mutations, this lacks critical context for an agent to use safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters (configPath, projectPath) having meaningful descriptions. The tool description adds little beyond the schema, only reinforcing the config path. Baseline 3 is appropriate since the schema already documents the parameters adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb 'Synchronize' and names the resources involved: project workspace skills, personal skill collection (~/.ai-skills/skills.config.json), and global cache. It distinguishes from sibling tools by implying a broader sync operation rather than install/remove/list, though it doesn't explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like install_skills or remove_skills. There is no mention of appropriate contexts, prerequisites, or exclusions, leaving the agent without direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool targets a distinct operation (inspect, bootstrap, sync, install, list, check, remove). There is minor overlap between sync_skills and install_skills as both can install missing skills, but their descriptions clarify different scopes (personal collection vs config-based).
All tool names follow a consistent verb_noun pattern in snake_case (e.g., get_workspace_info, list_installed_skills, remove_skills). This makes the set predictable and easy to navigate.
The 7 tools are well-scoped for a skills manager, covering setup, synchronization, installation, listing, checking, removal, and diagnostics. Each tool earns its place without redundancy or bloat.
The tool set covers the core skill-management lifecycle: bootstrap, sync, install, list, check, and remove. A minor gap is the absence of a way to inspect individual skill contents, but the existing surface handles the primary workflows effectively.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Manage portable AI agent playbooks, Agent Skills, MCP configurations, personas, and memory.
Search your team's shared AI-skill library, get install commands, and save skills from your agent.
Git-backed platform for skills, tools, and context for AI agents
Develop, manage, and debug Railway projects, services, and deployments from within agents.
Related MCP Servers
- AlicenseBqualityCmaintenanceManages .ai/ workspace folder, syncs assets with a cloud service, and generates environment-specific bootstrap files for AI context management.12MIT
- AlicenseBqualityDmaintenanceAutomates setup of local development environments for Python, Node.js, Flutter, Android, and more on macOS and Linux. Can be used as a standalone CLI or as an MCP server for AI assistant integration.10MIT
- AlicenseNot gradedqualityCmaintenanceLocal-first harness and ticket operations for AI assistants via CLI or MCP.2MIT

Nouva MCP Serverofficial
FlicenseNot gradedqualityAmaintenanceCentralized repository for modular, portable skills and memory, enabling AI agents and IDEs to access personalized tools and memory via stdio or SSE transport.1-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AbdulqaderAhmed/skills-manager-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server