Docs
seoskills.sh is a directory and package manager for SEO agent skills. Every skill is a public GitHub repo with a SKILL.md. Install one into any agent with a single command, or consume the whole catalog over a REST API, an MCP endpoint, or the Agent Skills discovery index.
Guides
Install and manage skills
- How to install skills in Claude Code
Claude Code loads skills from .claude/skills/ in your project and ~/.claude/skills/ for all projects. Install them with npx skills add, from GitHub or by hand.
- How to use skills in Cursor
Learn how to use skills in Cursor: which folders its agent reads SKILL.md files from, how to install one with npx skills, and how to call it.
- How to install, update and remove skills with npx skills
To uninstall a skill, run npx skills remove and its name, or --all to clear every one. npx skills update fetches new versions. Each command, with examples.
- Where are Claude Code skills stored? Skill folders by agent
See where Claude Code skills are stored, plus the project and global skill folders the skills CLI uses for Codex, Cursor, Gemini CLI and seven more.
How skills work
- What are agent skills?
What are agent skills? Learn what goes in a SKILL.md file and how Claude Code, Cursor and other agents decide when to load one.
- Skills vs MCP servers vs plugins: what each one is for
Skills vs MCP in Claude Code: a skill teaches the agent how to do a job, an MCP server gives it live tools and data, and a plugin can ship both.
- How to write a SKILL.md file
Learn how to write a SKILL.md file, from the folder layout and frontmatter rules to a description that triggers, with a real SEO skill as the example.
- Are Claude skills safe? How to check one before you install
Claude skills security comes down to what a skill can do on your machine, what to check before you install one, and what a scan can and can't tell you.
SEO with an agent
- How to use Claude Code for SEO
Learn how to use Claude Code for SEO with installed skills and example prompts for audits, technical fixes, structured data, content and AI search.
- SEO MCP servers for Search Console, Ahrefs, DataForSEO and Semrush
See what each SEO MCP server for Search Console, Ahrefs, DataForSEO and Semrush gives your agent, what it requires, and how to add it to Claude Code.
Reference
Install a skill
Skills install with the open-source skills CLI. No account, no config. Our own skills install from https://seoskills.sh by slug, with their scripts and reference files. Keep the https://: without it the CLI reads seoskills.sh as a GitHub repository.
$ npx skills add https://seoskills.sh --skill content-decay-predictorA skill by another author installs from that author’s GitHub repository, with the same command skills.sh shows, so the install counts toward the author. Each skill page and the API install field give the right command:
$ npx skills add https://github.com/agricidaniel/claude-seo --skill seo-sitemapPick skills from our index, nearly the whole catalog (the CLI lists them and asks which to install), or add --skill '*' to install all of them. The few it doesn’t serve install from their authors’ repositories:
$ npx skills add https://seoskills.sh $ npx skills add https://seoskills.sh --skill '*'
Target a specific agent with -a. Each agent has its own landing page (see Claude Code, Cursor, and 9 more):
$ npx skills add https://seoskills.sh -a claude-code $ npx skills add https://seoskills.sh -a cursor $ npx skills add https://seoskills.sh -a codex
Discover skills
Browse the catalog three ways:
- The full catalog with instant search.
- Category pages: 14 SEO sub-domains from technical SEO to local and AI search.
- Agent pages: a per-agent install command, plus install steps and curated picks for Claude Code and Cursor.
REST API
A public, CORS-enabled JSON API. No key required. Responses are cached at the edge for an hour.
/api/skills?q=&category=&limit=/api/skills/{owner}/{repo}/{slug}/api/categoriesExample: search the on-page SEO category for our schema generator.
$ curl "https://seoskills.sh/api/skills?q=schema+markup+generator&category=on-page-seo&limit=1"
{
"count": 1,
"skills": [
{
"id": "seoskills-sh/catalog/schema-markup-generator",
"slug": "schema-markup-generator",
"name": "Schema Markup Generator",
"description": "Generates complete JSON-LD for a page from what it shows, checks existing markup...",
"category": "on-page-seo",
"installs": 0,
"source": "seoskills-sh/catalog",
"install": "npx skills add https://seoskills.sh --skill schema-markup-generator"
}
]
}Fetch one skill with its full SKILL.md in the skillMd field. This is how an app pulls a skill’s body to run it, with no GitHub round-trip, for internal and external skills alike.
$ curl "https://seoskills.sh/api/skills/seoskills-sh/catalog/content-decay-predictor"
{
"id": "seoskills-sh/catalog/content-decay-predictor",
"slug": "content-decay-predictor",
"name": "Content Decay Predictor",
"description": "Fits a trend to each page's Search Console clicks and impressions...",
"category": "content",
"installs": 0,
"source": "seoskills-sh/catalog",
"repository": "https://github.com/seoskills-sh/catalog",
"license": "MIT",
"install": "npx skills add https://seoskills.sh --skill content-decay-predictor",
"skillMd": "---\nname: Content Decay Predictor\n... (the full instructions)"
}A skill by another author returns its GitHub install command in install, as on its page. A skill whose licence does not allow redistribution also returns null for skillMd.
MCP endpoint
Give any MCP client live access to the catalog. The server exposes three tools: search_skills, get_skill, and list_categories.
/api/mcpAdd it to Claude Code:
$ claude mcp add --transport http seoskills https://seoskills.sh/api/mcp
Or to any client that reads a JSON config:
{
"mcpServers": {
"seoskills": {
"url": "https://seoskills.sh/api/mcp"
}
}
}Discovery index
seoskills.sh implements the Agent Skills Discovery RFC. The well-known index is what makes npx skills add work. It lists every installable skill with a sha256 digest, of its SKILL.md or, for a skill that needs more than one file, of a folder archive with its scripts and reference files.
/.well-known/agent-skills/index.json/.well-known/agent-skills/{name}/SKILL.md/.well-known/agent-skills/{name}/skill.tar.gzListing badge
Show that your skill is listed on seoskills.sh. The badge links back to the skill’s page here. Every skill page has a ready-made snippet under “Embed a badge”; this is the pattern:
[](https://seoskills.sh/<owner>/<repo>/<skill>)
Publish a skill
A skill is just a public GitHub repo with a SKILL.md at the path the skill lives in: a name, a description, and the instructions an agent follows. That is the entire format.
your-repo/
seo-audit/
SKILL.md # --- name, description, then the instructionsseoskills.sh checks skills.sh for new SEO skills every day. A skill seen for the first time is listed automatically when it is about SEO, has real instructions, and passes the security scan. One that fails is not listed, and a listed skill that starts failing is taken off. The guides cover writing a SKILL.md and what the scan checks. Want a skill reviewed now, or spotted a problem with a listing? Open an issue on the catalog repo.
Not on skills.sh? Submit the repo and the next daily update reads every SKILL.md in it.