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

pipeline-mcp

v2.3.3

Published

Thin JSON-RPC MCP proxy for Pipeline. Tools, workflow-skill resources, execution classifications, and routing stay server-owned, with optional toolsets for smaller agent contexts.

Readme

pipeline-mcp

Use the Pipeline AI agent team directly from Claude Code, Cursor, Codex, Claude Desktop, or any MCP-aware agent. The public team is Strategist, GTM Engineer, Reply Agent, SDR Agent, and GTM Lead.

The full hosted tool catalog for campaigns, prospects, enrichment, research, signals, content, CRM, conversations, analytics, and workflows.

v2.3 is a thin proxy. Tools, workflow-skill resources, execution classifications, and routing live on the Pipeline server. The client forwards the MCP protocol without duplicating business logic.


Install

Claude Code

Add to ~/.claude.json (or run claude mcp add):

{
  "mcpServers": {
    "pipeline": {
      "command": "npx",
      "args": ["-y", "pipeline-mcp", "--api-key", "pipeline_pat_YOUR_TOKEN", "--workspace", "client-workspace"]
    }
  }
}

Cursor

Add to your Cursor MCP config:

{
  "mcpServers": {
    "pipeline": {
      "command": "npx",
      "args": ["-y", "pipeline-mcp", "--api-key", "pipeline_pk_YOUR_KEY"]
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "pipeline": {
      "command": "npx",
      "args": ["-y", "pipeline-mcp", "--api-key", "pipeline_pk_YOUR_KEY"]
    }
  }
}

Codex CLI

codex mcp add pipeline npx -y pipeline-mcp --api-key pipeline_pk_YOUR_KEY

Any MCP-aware client

Run pipeline-mcp --api-key pipeline_pk_YOUR_KEY and point your client at its stdio. Or run a loopback-only HTTP proxy. HTTP clients must send their own Pipeline key on every request:

pipeline-mcp --http --port 3000
curl \
  -H "Authorization: Bearer pipeline_pk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' \
  http://127.0.0.1:3000

Authenticate to Pipeline

  1. Sign in at pipeline.help
  2. Settings → API Keys → Create a personal token or workspace service key
  3. Copy the credential (shown only once). Personal tokens use pipeline_pat_...; workspace service keys use pipeline_pk_...

A personal token follows your live workspace memberships and permissions. It can work across client workspaces where you are an invited admin or member. Use list-workspaces first, then configure --workspace <id-or-slug> when the account has multiple workspaces. Pipeline does not choose the newest or first workspace automatically.

This credential authenticates the MCP client to Pipeline. It is separate from connected sourcing, enrichment, LinkedIn, and model credentials. Those remain workspace connections under Pipeline's BYOK model. A personal token does not grant a provider capability that the selected workspace has not connected.

Global install

npm i -g pipeline-mcp

Then reference pipeline-mcp directly in your MCP config (skip the npx -y prefix).


Configuration

| Flag | Env | Default | Purpose | |---|---|---|---| | --api-key <key> | PIPELINE_API_KEY | none | Required for stdio. HTTP mode ignores launch-time keys and requires auth per request. | | --base-url <url> | PIPELINE_BASE_URL | https://app.pipeline.help/api | Override for staging | | --http | none | off | Run as a loopback-only HTTP proxy instead of stdio | | --port <n> | none | 3000 | Port for --http mode | | --toolsets <names> | PIPELINE_MCP_TOOLSETS | full | Comma-separated core, campaigns, tables, content, engagement, operations, or full. | | --workspace <value> | PIPELINE_WORKSPACE | none | Workspace ID or slug for workspace-scoped calls. Required when a personal token can access multiple workspaces. | | --version | none | none | Print version | | --help | none | none | Print help |


Two AI modes

Pipeline supports two explicit paths:

  1. External-agent reasoning. Codex or another MCP client uses its own subscription to reason, reads Pipeline resources and workspace context, authors artifacts locally, then calls deterministic or provider-backed operations to validate and persist the result.
  2. Pipeline backend AI. The Pipeline app uses its backend model path for its agent team. Contract operations classified as pipeline_hosted_ai use that same path and require explicit consent with allowHostedAi: true.

generate-content and create-strategy-ideas are Pipeline backend AI operations. They are not local Codex skills. In the external-agent path, use get-content-authoring-context, get-gtm-context, and Pipeline resources, then author with Codex and save the result with a draft-only operation.

Every operation advertises one execution class:

  • deterministic: no additional Pipeline-hosted inference.
  • provider_call: invokes a connected workspace provider.
  • pipeline_hosted_ai: requires allowHostedAi: true before the server will dispatch it.

For shell-native coding agents, prefer the companion CLI:

npm i -g pipeline-gtm
pipeline init
pipeline list-campaigns --status active

Same auth and contract, with compact JSON and predictable exit codes. See the CLI README.

Pipeline workflow skills are exposed through resources/list and resources/read, including campaign building, enrichment tables, content, engagement, and general GTM operations. Workspace role skills, versions, hashes, provider requirements, and resource URIs use the same authenticated resource surface.

Use --toolsets core,campaigns,tables to keep the advertised operation set small. Skill resources remain available regardless of selected toolsets. full remains the compatibility default.

Canonical Codex draft path

Use the Strategist and GTM Engineer resources as instructions, not as separate public teammates:

  1. Call resources/list, then read pipeline://skill/strategist-constitution and pipeline://skill/pipeline-build-campaign.
  2. Call get-gtm-context. For a LinkedIn post, also call get-content-authoring-context.
  3. Let Codex author the campaign brief, message, or LinkedIn post locally with its own subscription.
  4. Validate caller-authored campaign work with validate-campaign-brief or validate-table-blueprint.
  5. Persist only a reviewable artifact with save-campaign-brief or save-content-post.

The verified campaign pattern uses exactly five prospects for the pilot. It writes five rows to a brief-bound table, saves five draft sequence touches, creates a draft campaign, and enrolls the five rows as pending executions. Enrollment does not start the campaign. Starting, publishing, scheduling, messaging, and sending connection requests remain separate operations outside this draft path.

Content generation is LinkedIn-only. get-content-authoring-context reads the active voice, inspiration, intelligence, and workspace context for local authoring. get-post reads a persisted draft. save-content-post can only save a LinkedIn draft and cannot schedule or publish it.

For engagement, list-tracked-posts is the deterministic read for posts discovered from tracked LinkedIn profiles. A tracked profile must exist before save-comment-draft has an eligible post. In the verified live run, all six bounded track-influencer lookups returned Failed to fetch LinkedIn profile, all used shouldFollow: false, and no tracked profile, comment draft, or follow attempt was created.

ElevenLabs is currently visible through list-integrations. Assignment readiness and preview are not exposed to API-key MCP, CLI, SDK, or REST surfaces, so an external agent cannot safely preview or change an assignment through this contract.


How it works

Claude Code / Cursor / Codex
        │  (stdio, MCP protocol)
        ▼
    pipeline-mcp (this package, ~250 LOC)
        │  (HTTPS, JSON-RPC 2.0)
        ▼
https://app.pipeline.help/api/mcp-server
        │
        ▼
    the full hosted tool catalog (campaigns, prospects, signals, CRM, …)

All schemas and handlers live on the server. This package is a thin layer of network plumbing. When Pipeline adds a tool, it is immediately callable without an npm update.


License

MIT © Pipeline