A Model Context Protocol (MCP) server that acts as an AI agent "skills library manager". It provides tools to manage and share AI rules/skills across different projects and IDEs.
English | 简体中文
Agent-Skills-Manager-MCP (MCP Server)
A Model Context Protocol (MCP) server that acts as an AI agent "skills library manager". It provides tools to manage and share AI rules/skills across various AI-enhanced IDEs and agent frameworks.
Features
- Query: Read from a central library of AI skills. Supports both flat
.mdfiles and Standard Agent Skills Format (directories containingSKILL.mdwith standard YAML metadata). - Push: Extract IDE-specific rule files (like
.cursor/rules/something.mdcwith frontmatter) and save them to the central skill library precisely adopting the standard<skill_name>/SKILL.mdformat. - Pull (Project): Pull a designated skill from the central library and format it for the specific environment in the current project (e.g., injecting YAML frontmatter natively).
- Pull (Global): Pull a designated skill and format it natively into the user's global tool rules directory.
- Delete (Opt-In): Delete a skill permanently from the central library. By default, this destructive tool is disabled to prevent accidental data loss. It must be explicitly enabled by passing the
AGENT_SKILLS_ENABLE_DELETE=trueenvironment variable to the MCP server.
Configurable Paths (ide-config.json)
Yes, this configuration file is fully functional and actively controls where skills are saved!
The server dynamically manages destination paths per AI tool. Upon first run, it generates a data/ide-config.json next to your skills library.
[!TIP] On Path Accuracy: Due to version updates and environmental differences among various tools, the default generated paths may not be 100% accurate. You are encouraged to manually adjust the paths in
ide-config.jsonto match your actual toolchain layout.
Example structure:
{
"cursor": {
"project": {
"rulesLocation": ".cursor/rules",
"skillsLocation": ".cursor/skills"
},
"global": {
"rulesLocation": "~/.cursor/rules",
"skillsLocation": "~/.cursor/skills"
}
},
"my-custom-cli": {
"project": {
"rulesLocation": ".mycli/rules",
"skillsLocation": ".mycli/agents"
},
...
}
How it works:
- Dynamic Resolution: Whenever an AI tool requests to pull a skill (using the
pull_skill_to_projectorpull_skill_to_globaltool), it passes itside_name. The MCP server looks up that name inide-config.json. - Project Locations: Paths under
projectare resolved relative to your current workspace root (e.g.,.cursor/skillsbecomes/path/to/your/project/.cursor/skills). - Global Locations: Paths under
globalthat start with~/are automatically resolved to your operating system's absolute user home directory (e.g.,~/.aider/skillsseamlessly becomesC:\Users\Username\.aider\skillson Windows or/Users/User/.aider/skillson Mac). - Custom Tools: You can add any brand new CLI tool or AI editor simply by creating a new key in the JSON file. The MCP server will instantly support pulling skills into it.
- Tool Variants: Different AI assistants or editors may have different path requirements. You can easily adapt the target locations by editing
ide-config.jsonto match your local setup. The server will seamlessly route files to the correct folders even if the assistant uses a generic identifier.
⚠️ Note on "Rules" Management: While
ide-config.jsonincludes entries forrulesLocationalongsideskillsLocation, this tool is primarily optimized for Standard Skills (directories containing aSKILL.mdand auxiliary files synced toskillsLocation). The synchronization and formatting logic for disjoint flatrulesfiles remains experimental and incomplete.
Build and Run
Prerequisites
- Node.js >= 20
- npm
Installation
git clone https://github.com/MTQwQ/agent-skills-manager-mcp.git
cd agent-skills-manager-mcp
npm install
Development
npm run dev
Build
npm run build
Then you can start the built server using:
npm start
Note: Depending on your environment, you might need to point the MCP client to the exact path of the script using node /absolute/path/to/agent-skills-manager-mcp/build/index.js.
Configuration Example
In your editor's MCP settings, add a new stdio connection:
{
"mcpServers": {
"agent-skills-manager-mcp": {
"command": "node",
"args": [
"/absolute/path/to/agent-skills-manager-mcp/build/index.js"
]
}
}
}
Enabling the Delete Tool (Optional)
If you must use the delete_skill_from_library tool, you must inject the opt-in environment flag into your IDE connection settings like this:
{
"mcpServers": {
"agent-skills-manager-mcp": {
"command": "node",
"args": [
"/absolute/path/to/agent-skills-manager-mcp/build/index.js"
],
"env": {
"AGENT_SKILLS_ENABLE_DELETE": "true"
}
}
}
}
Other Tools (Example)
For Windsurf, you might define it in your mcp.json or equivalent configuration:
{
"mcpServers": {
"agent-skills-manager-mcp": {
"command": "node",
"args": [
"/absolute/path/to/agent-skills-manager-mcp/build/index.js"
]
}
}
}
(Remember to replace /absolute/path/to/agent-skills-manager-mcp with the actual location on your file system.)
Data Directory
By default, the server manages a data/skills/ directory alongside the project's root. Skills are stored there in the Standard Agent Skills Format (each skill is a directory containing a SKILL.md file and other related technical assets).