npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@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.

Readme

@upstate-web/uwc-pipeline-mcp

MCP server that exposes a directory of Claude Agent Skills as callable tools — list_skills and get_skill. Pairs with @upstate-web/uwc-skills, but works against any Agent Skills-compliant directory.

License: MIT

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-mcp

Or install locally and invoke via npx:

npx @upstate-web/uwc-pipeline-mcp

Configure your skills directory

The server reads skills from the first match:

  1. UWC_SKILLS_DIR environment variable, if set
  2. ./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-mcp

Use with Claude Code

Register as an MCP server:

claude mcp add uwc-pipeline-mcp -- npx @upstate-web/uwc-pipeline-mcp

With a custom skills directory:

claude mcp add uwc-pipeline-mcp \
  --env UWC_SKILLS_DIR=/path/to/skills \
  -- npx @upstate-web/uwc-pipeline-mcp

Then in a Claude Code session, the tools appear as list_skills and get_skill. A typical flow:

  1. Claude calls list_skills → sees all available skill slugs + descriptions
  2. Based on the current task, Claude calls get_skill(slug) to load the full skill content
  3. 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-mcp

Scope & 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_bundle are 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.js

Related

License

MIT. Use freely in commercial work.