Skip to content
PluginStats

@growthbook/mcp weekly downloads statistics

By growthbook (4 listings) · npm · MCP servers

Thin MCP server for GrowthBook — skill loader + authenticated API passthrough

View on npm Stale · Oct 18, 2026

@growthbook/mcp has 1,889 recorded weekly downloads on npm.

Weekly downloads
1,889
Official API · Oct 18, 2026
7-day growth
—
Insufficient history
30-day growth
—
Insufficient history
90-day growth
—
Insufficient history
Rank
—
Among tracked npm listings

About @growthbook/mcp

GrowthBook MCP Thin

A thin MCP server for GrowthBook with four tools:

ToolPurpose
growthbook_list_skillsList top-level skill entry points (name + description)
growthbook_read_skillReturn a listed skill or qualified child workflow (feature-flags or feature-flags/references/flag-create)
growthbook_api_readAuthenticated GET passthrough to the GrowthBook API
growthbook_api_writeAuthenticated POST/PUT/PATCH/DELETE passthrough

Competence lives in the skills repo and is bundled at build time. Capability is split into read vs write API tools (no per-endpoint formatters) so clients can honor readOnlyHint / destructiveHint correctly.

Tools are prefixed with growthbook_ so they stay unambiguous when a client has multiple MCP servers loaded.

Install / run

npm install
npm run build

Point your MCP client at the compiled entrypoint:

{
  "mcpServers": {
    "growthbook": {
      "command": "node",
      "args": ["/absolute/path/to/growthbook-mcp/server/index.js"],
      "env": {
        "GB_API_KEY": "your_api_key_or_pat",
        "GB_API_URL": "https://api.growthbook.io"
      }
    }
  }
}

Or run the published package:

npx @growthbook/mcp

Environment variables

VariableRequiredDefaultPurpose
GB_API_KEYYes for stdio; optional for HTTP OAuth—GrowthBook API key or personal access token
GB_API_URLNohttps://api.growthbook.ioAPI base URL (self-hosted) and default OAuth AS issuer
GB_MCP_TRANSPORTNostdiostdio or http
GB_MCP_PORTNo3333HTTP listen port (when transport=http)
GB_MCP_HOSTNo127.0.0.1HTTP bind host
GB_MCP_URLYes for HTTP—Public MCP base URL stamped into OAuth resource metadata (server refuses to start in HTTP mode without it)
GB_MCP_KEEP_ALIVE_TIMEOUT_MSNo90000Idle keep-alive timeout in HTTP mode. Must exceed the idle timeout of any load balancer in front, or the LB can reuse a connection the server has already closed and the request fails with a 502
GB_OAUTH_ISSUERNoGB_API_URLGrowthBook OAuth AS issuer URL
GB_HTTP_HEADER_*No—Extra request headers (e.g. GB_HTTP_HEADER_CF_ACCESS_TOKEN)
GB_SKILLS_ENABLEDNotrueSet to false / 0 to disable skill tools
HTTP + OAuth mode
OAUTH_AS_ENABLED=1  # on the GrowthBook API
GB_MCP_TRANSPORT=http GB_API_URL=http://localhost:3100 GB_MCP_PORT=3333 npm start

Clients connect to:

  • http://127.0.0.1:3333/mcp — full (skills + API read/write)
  • http://127.0.0.1:3333/mcp/api — capability-only (growthbook_api_read + growthbook_api_write)

Unauthenticated requests receive 401 with WWW-Authenticate pointing at /.well-known/oauth-protected-resource, which advertises the GrowthBook Authorization Server.

Before handling MCP, the server probes GrowthBook REST (GET /api/v1/) with the bearer. A 401 from that probe (or later from an API tool) yields HTTP 401 with error="invalid_token" so the MCP client can refresh — instead of surfacing "This API key has expired" as a tool error. A 403 is treated as an accepted bearer (permission denied ≠ invalid token) so clients are not forced into a refresh loop.

Capability-only mode

HTTP (recommended for remote): point the client at /mcp/api instead of /mcp:

{
  "mcpServers": {
    "growthbook": {
      "url": "http://127.0.0.1:3333/mcp/api"
    }
  }
}
PathTools
/mcpgrowthbook_list_skills, growthbook_read_skill, growthbook_api_read, growthbook_api_write (unless GB_SKILLS_ENABLED=false)
/mcp/apigrowthbook_api_read, growthbook_api_write only

stdio / process-wide: set env so skills are never registered:

"env": {
  "GB_API_KEY": "...",
  "GB_SKILLS_ENABLED": "false"
}

When skills are disabled, only the API read/write tools are registered. growthbook_list_skills and growthbook_read_skill are not exposed.

How skills are bundled

npm run build   # tsc && bundle-skills

scripts/bundle-skills.mjs copies the top-level skill tree from the canonical skills checkout, preserving structure:

skills/<skill>/SKILL.md                   → server/skills/<skill>/SKILL.md
skills/<skill>/references/<workflow>.md   → server/skills/<skill>/references/<workflow>.md

Source path resolution:

  1. SKILLS_SRC env var (path to the skills repo root)
  2. agent-skills.local.json — { "path": "../skills" }, relative to the repo root. Gitignored; copy agent-skills.local.json.example
  3. skills-src/ — what CI and the Docker build vendor

There is no implicit sibling lookup. ../skills resolves to whatever happens to be at that path, which makes a local build silently disagree with the commit CI builds from.

CI, cloud deploys, and releases all read agent-skills.lock.json and check out that exact skills commit. To ship upstream skill changes, update the commit in the lock file. Local development can point at any checkout with agent-skills.local.json or SKILLS_SRC.

The skills repo stays the source of truth — this package does not maintain a fork of skill content. New skills flow through automatically, except those named in the small blocklist in bundle-skills.mjs. Currently only gb-setup is blocked because it configures the gb-call shell adapter rather than GrowthBook itself.

Per-skill scripts/ directories are not copied. Relative `references/foo.md` links are rewritten to qualified `feature-flags/references/foo` paths so growthbook_read_skill can resolve them.

Using skills with the API tools

Bundled skills still show workflows as:

gb-call GET /api/v1/projects
gb-call POST /api/v2/features ./payload.json
```…

Description from the npm listing.

  • growthbook
  • mcp
  • modelcontextprotocol
  • featureflags
  • experiments

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

@growthbook/mcp weekly downloads on npm, last 90 days: 1,889 weekly downloads as of Oct 18, 2026.@growthbook/mcpWeekly downloads on npm · Last 90 days1,889downloads / week1.7K1.8K1.9K2K2.1KJul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekOct 18, 2026 – Oct 18, 2026 · 1 observations · Updated Oct 18, 2026pluginstats.com
@growthbook/mcp weekly downloads on npm, last 90 days: 1,889 weekly downloads as of Oct 18, 2026.

7/30/90-day growth

@growthbook/mcp weekly downloads growth on npm: 7-day growth unavailable, 30-day growth unavailable, 90-day growth unavailable.@growthbook/mcpWeekly downloads growth on npm1,889downloads / week now7-day growthinsufficient historyInsufficient history30-day growthinsufficient historyInsufficient history90-day growthinsufficient historyInsufficient historyGrowth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
@growthbook/mcp weekly downloads growth on npm: 7-day growth unavailable, 30-day growth unavailable, 90-day growth unavailable.

Ranking history

@growthbook/mcp has no ranking history on npm yet.@growthbook/mcpnpm ranking · by weekly downloads · Last 90 daysNo ranking observations in this periodno observations · 0 observations · Updated Oct 18, 2026pluginstats.com
@growthbook/mcp has no ranking history on npm yet.

Listing placement

All npm2,422 listings · 122 pages · 1,213 shown · page 70, #8 (overall #1,388)
All npm: every listing in weekly downloads order

Listing placement

MCP servers301 listings · 16 pages · page 15, #2 (overall #282)
MCP servers: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (1)
Recent weekly downloads observations for @growthbook/mcp
Date (UTC)Weekly downloadsChange vs. previous
1,889—

Similar npm MCP servers plugins

All 20 @growthbook/mcp alternatives

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/@growthbook/mcp. First seen Oct 22, 2026; last successful collection Oct 22, 2026. See the methodology.