@upstate-web/uwc-pipeline-mcp
v0.1.0
Published
MCP server that exposes a directory of Claude Agent Skills (Anthropic spec) as callable tools — list_skills and get_skill. Portable; works against any SKILL.md-compliant directory, including @upstate-web/uwc-skills.
Maintainers
Readme
@upstate-web/uwc-pipeline-mcp
MCP server that exposes a directory of Claude Agent Skills as callable tools —
list_skillsandget_skill. Pairs with@upstate-web/uwc-skills, but works against any Agent Skills-compliant directory.
What this is
A minimal Model Context Protocol server that surfaces Agent Skills over stdio. Point it at a directory of SKILL.md-compliant subdirectories and Claude Code (or any MCP-compatible client) can list and fetch them as structured tool calls.
Two tools shipped in v0.1.0:
| Tool | Arguments | Returns |
|---|---|---|
| list_skills | none | Slug, version, name, and description for every skill in the configured directory |
| get_skill | slug: string | Full SKILL.md content (frontmatter + body) for the named skill |
The server is deliberately content-agnostic. The bundled @upstate-web/uwc-skills is one valid skill source; anything that follows Anthropic's Agent Skills spec will work.
Install
npm install -g @upstate-web/uwc-pipeline-mcpOr install locally and invoke via npx:
npx @upstate-web/uwc-pipeline-mcpConfigure your skills directory
The server reads skills from the first match:
UWC_SKILLS_DIRenvironment variable, if set./node_modules/@upstate-web/uwc-skills/skills, if the package is installed in the working directory
If neither exists, list_skills returns an empty list with instructions.
# Point at an arbitrary directory
export UWC_SKILLS_DIR=/path/to/my/skills
npx @upstate-web/uwc-pipeline-mcpUse with Claude Code
Register as an MCP server:
claude mcp add uwc-pipeline-mcp -- npx @upstate-web/uwc-pipeline-mcpWith a custom skills directory:
claude mcp add uwc-pipeline-mcp \
--env UWC_SKILLS_DIR=/path/to/skills \
-- npx @upstate-web/uwc-pipeline-mcpThen in a Claude Code session, the tools appear as list_skills and get_skill. A typical flow:
- Claude calls
list_skills→ sees all available skill slugs + descriptions - Based on the current task, Claude calls
get_skill(slug)to load the full skill content - Claude applies the skill's guidance to your code
Smoke test
Verify the server works from the command line by piping JSON-RPC over stdio:
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"0"}}}
{"jsonrpc":"2.0","method":"notifications/initialized"}
{"jsonrpc":"2.0","id":2,"method":"tools/list"}
{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"list_skills","arguments":{}}}' | UWC_SKILLS_DIR=/path/to/skills npx @upstate-web/uwc-pipeline-mcpScope & non-goals
This package ships a deliberately narrow surface area:
- Read-only. No write tools; no mutation of skill content.
- No network calls. Reads local filesystem only.
- No pipeline-specific tools.
generate_phase_prompt,run_governance_agent,run_meta_retro_prompt,compile_knowledge_bundleare not shipped and not on the roadmap. Each requires UWC-specific schema, endpoints, or directory layout that would bind this package to a private stack. They fail our leakage test. Dropped, not deferred. - No authentication. stdio is the only transport; auth is the MCP client's responsibility.
If you need pipeline tooling beyond skill browsing, the source of truth for those patterns is published as skill content in @upstate-web/uwc-skills — load the relevant skill with get_skill and apply it yourself.
New tools enter this server only if they pass the same bar as new skills: portability (works without UWC infrastructure), leakage-free (no private schema, keys, or endpoints), and usefulness (value to a non-UWC developer). list_skills + get_skill are both read-only filesystem queries against a configurable directory — the canonical shape we'll stick to.
Build from source
git clone https://github.com/upstate-web-co/uwc-pipeline-mcp
cd uwc-pipeline-mcp
npm install
npm run build
node dist/index.jsRelated
- Skill bundle:
@upstate-web/uwc-skills - Agent Skills spec: docs.anthropic.com/en/docs/agents/skills
- MCP spec: modelcontextprotocol.io
- MCP TypeScript SDK:
@modelcontextprotocol/sdk
License
MIT. Use freely in commercial work.
