Claude Code skills and plugins: what they are, how to install them, and SpringRoll's deploy skill

A skill teaches Claude Code a procedure. An MCP server gives it tools. A plugin packages skills, tools and more into one install. SpringRoll uses two of these: an MCP server with the tools to deploy and share apps, and a skill with the procedure for doing it well. This guide explains each piece, shows where it lives and how to install it, and sets up SpringRoll as the worked example.

GuidesBy Published 5 min read

On this page

Skills, MCP servers, plugins, hooks and subagents

These five pieces are easy to confuse. All of them work on their own; a plugin is only needed to package several together.

Scroll sideways to see all columns. With the table focused, use the arrow keys.

The pieces you can add to Claude Code, with SpringRoll's use of each (source: Claude Code documentation, reviewed 7 November 2026).
PieceWhat it isWhere it livesSpringRoll
SkillA SKILL.md file of instructions Claude loads when relevant, or you run as /name~/.claude/skills/ or .claude/skills/ in a projectThe springroll skill: the deployment procedure, run as /springroll
MCP serverTools and data Claude can callAdded with claude mcp addSpringRoll's remote MCP server: springroll.deploy, springroll.deploy.status and more
PluginA package of skills, agents, hooks and MCP servers installed as one unitA directory with .claude-plugin/plugin.json, installed with /pluginNot needed: the skill and MCP server cover deployment
HookA command Claude Code runs at a point in its lifecycle, such as after every editSettings, or a plugin's hooks fileNot needed
SubagentA specialised agent Claude can delegate work toAgent definition files, or a pluginNot needed

What is a Claude Code skill?

A skill is a folder containing a SKILL.md file: YAML frontmatter that tells Claude when to use it, followed by the instructions Claude follows when it runs. Only the description is recommended; the folder name becomes the command. Claude loads a skill on its own when your request matches its description, or you run it directly as /skill-name with arguments.

Unlike CLAUDE.md, a skill's body loads only when it is used, so long procedures do not crowd every conversation. Custom slash commands have been merged into skills: .claude/commands/deploy.md and .claude/skills/deploy/SKILL.md both create /deploy. Claude Code skills follow the Agent Skills open standard, so the same folder can work in other tools that support it.

This example turns a team's release process into a skill that uses SpringRoll's MCP tools. Saved as ~/.claude/skills/ship/SKILL.md, it creates /ship. disable-model-invocation stops Claude from running a deploy on its own; Anthropic recommends that setting for workflows with side effects.

---
description: Build this project and deploy it to the team through SpringRoll. Use when the user asks to ship, publish or deploy the app.
disable-model-invocation: true
---

1. Run the production build and fix any errors before continuing.
2. Call springroll.placement.preview and show me the placement receipt.
3. After I confirm, call springroll.deploy and follow springroll.deploy.status until READY or failure.
4. Report the app URL, the provider and plan chosen, and who can open the app.

Where Claude Code skills live

Where you save a skill decides who gets it. Project skills load from the working directory and each parent up to the repository root.

Scroll sideways to see all columns. With the table focused, use the arrow keys.

Claude Code skill locations (source: Claude Code skills documentation, reviewed 7 November 2026).
LocationPathWho gets it
Personal~/.claude/skills/<name>/SKILL.mdYou, in every project on this machine
Project.claude/skills/<name>/SKILL.mdEveryone working in the repository, once committed
Nested<subdir>/.claude/skills/<name>/SKILL.mdSessions started in or below that folder
Plugin<plugin>/skills/<name>/SKILL.mdWherever the plugin is enabled, as /plugin-name:skill-name
EnterpriseThe managed settings directoryEveryone your organization deploys it to

How to install a Claude Code skill

The simplest install is a copy: put the skill's folder in ~/.claude/skills/ for yourself or .claude/skills/ in the repository for your team. Skills published on GitHub can also be installed with the open-source skills CLI from Vercel Labs, which supports Claude Code, Codex, Cursor and many other agents. It installs into the current project by default; add -g for every project, and --skill to pick one skill from a repository that holds several.

npx skills add <owner/repo>                    # every skill in the repository
npx skills add <owner/repo> --skill <name>     # one skill
npx skills add <owner/repo> -g                 # for all your projects
npx skills list                                # what is installed
npx skills update                              # update installed skills
npx skills remove <name>

Add SpringRoll's skill and MCP server to Claude Code

SpringRoll needs both pieces. The MCP server gives Claude the tools to deploy, follow builds and share apps; the skill gives it SpringRoll's deployment procedure, plus app-record templates for Next.js, Node, Docker, Redis and Cloudflare D1 projects. Connect the server first, because the skill uses it.

Run the two commands below in your project folder, start Claude Code, run /mcp to sign in to SpringRoll, then type /springroll deploy. Claude follows the skill: it inspects the project, shows you the proposed deployment and placement, and follows the build to its real result.

claude mcp add --transport http springroll https://springroll.dev/api/mcp
npx skills add springroll-dev/springroll-skill --skill springroll

# start Claude Code, run /mcp to sign in, then:
/springroll deploy

What is a Claude Code plugin, and how do you install one?

A plugin is a directory of skills, agents, hooks, MCP servers or other components that Claude Code installs and loads as one unit, usually with a manifest at .claude-plugin/plugin.json. Plugins come from catalogs: Claude Code adds Anthropic's official catalog the first time you start an interactive session, and you can add others from GitHub repositories or folders. Run /plugin and install from the Discover tab.

Choose a scope when you install: user (you, in every project), project (everyone in the repository, through the committed .claude/settings.json) or local (you, in this repository only). A plugin's skills appear as /plugin-name:skill-name. Everything a plugin runs, it runs as you, so read what it contains first. Disable one without uninstalling it with /plugin or claude plugin disable.

An enabled plugin costs context in every session: the names and descriptions of its skills and agents are in Claude's context on every turn, even when unused. Keep only the plugins you use.

Skill, plugin or MCP server: which should you use?

Match the piece to the job. Deployment needs two: a tool to act on the hosting platform and a procedure for doing it safely, which is why SpringRoll ships as an MCP server and a skill.

  • Claude should follow a procedure or house rules: write a skill.
  • Claude should read from or act on another system, such as a deployment platform or database: add an MCP server.
  • Something must happen every time without Claude deciding, such as formatting after each edit: use a hook.
  • You want to hand several of these to a team as one versioned install: package them as a plugin.

Frequently asked questions

Where are Claude Code skills stored?

Personal skills are in ~/.claude/skills/<name>/SKILL.md and project skills in .claude/skills/<name>/SKILL.md. Plugin skills live inside the plugin's skills folder.

What is the difference between a skill and a slash command?

They have been merged. A file in .claude/commands/ and a skill in .claude/skills/ both create the same /command; skills add supporting files and control over when Claude uses them.

Do Claude Code skills work in Codex?

Skills follow the Agent Skills open standard, and the skills CLI installs them into Codex as well as Claude Code. Claude Code-specific frontmatter fields may be ignored elsewhere.

How do I add SpringRoll to Claude Code?

Add SpringRoll's MCP server with claude mcp add and its skill with the skills CLI, sign in with /mcp, then run /springroll deploy. Together they give Claude the tools and the procedure.