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., "@MCP Plugin TemplateHow do I add a new tool to the server/index.js file?"
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.
MCP Plugin Template
A GitHub template for packaging any MCP server as an installable Claude Code plugin. Zero dependencies — just Node.js.
For plugin authors
1. Use this template
Click "Use this template" on GitHub to create your own repo.
2. Add your MCP server
Edit server/index.js — add tools and resources to the objects at the top of the file. The included server implements the MCP protocol directly with no dependencies.
If you need npm packages, add them to package.json and see Adding dependencies below.
3. Fill in the placeholders
Search for YOUR_ across the repo and replace:
Placeholder | Where | What |
|
| Your plugin's name (kebab-case) |
|
| What your plugin does |
|
| Your name |
|
| Your email |
|
| Your GitHub username |
|
| Your GitHub repo name |
4. Distribute
Share your repo — users install the plugin directly from the GitHub URL.
Important: The plugin is read from the repository's default branch. Make sure your changes are merged to
main/masterbefore distributing.
For users installing a plugin built from this template
VS Code: Type /plugins in the Claude Code prompt box, then add the plugin's GitHub repo URL.
CLI:
claude plugin add https://github.com/AUTHOR/REPOHow it works
your-plugin/
├── .claude-plugin/
│ └── plugin.json # Plugin metadata
├── .mcp.json # MCP server declaration
├── server/
│ └── index.js # Your MCP server (edit this)
├── package.json # Plugin metadata
└── README.md.mcp.jsontells Claude Code to start your server vianode server/index.jsThe server implements the MCP protocol (JSON-RPC over stdio) with no external dependencies
${CLAUDE_PLUGIN_ROOT}points to the plugin's install directory
Adding dependencies
If your server needs npm packages:
Add them to
package.jsonCreate
hooks/hooks.jsonwith aSessionStarthook to auto-install them:
{
"hooks": {
"SessionStart": [
{
"hooks": [
{
"type": "command",
"command": "diff -q \"${CLAUDE_PLUGIN_ROOT}/package.json\" \"${CLAUDE_PLUGIN_DATA}/package.json\" >/dev/null 2>&1 || (cd \"${CLAUDE_PLUGIN_DATA}\" && cp \"${CLAUDE_PLUGIN_ROOT}/package.json\" . && npm install --production) || rm -f \"${CLAUDE_PLUGIN_DATA}/package.json\""
}
]
}
]
}
}Add
NODE_PATHto.mcp.jsonso your server can find the installed modules:
{
"mcpServers": {
"your-plugin": {
"command": "node",
"args": ["${CLAUDE_PLUGIN_ROOT}/server/index.js"],
"env": {
"NODE_PATH": "${CLAUDE_PLUGIN_DATA}/node_modules"
}
}
}
}This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.