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

@space-kraken/nebula-forge-mcp

v0.1.4

Published

forge-mcp — MCP server exposing forge workspace operations (generate, attach, remove, validate, export) as tools for agentic executors

Readme

@space-kraken/nebula-forge-mcp

MCP (Model Context Protocol) server that exposes forge workspace operations as tools, so an agentic executor (Claude Code, Cursor, any MCP client) can scaffold, couple and validate a forge workspace with the same guarantees as the CLI.

Every tool takes an explicit workspaceRoot, always runs the non-interactive path (nothing can hang on a prompt), returns structured JSON (what was created/edited, what validations ran) and surfaces forge's errors as message + actionable hint. Mutating tools keep the CLI's transactionality: a failed call leaves the workspace exactly as it was.

Install

The server runs over stdio; register it with your MCP client:

# Claude Code
claude mcp add forge -- npx -y @space-kraken/nebula-forge-mcp
// Claude Desktop, Cursor, or any mcpServers config
{
  "mcpServers": {
    "forge": { "command": "npx", "args": ["-y", "@space-kraken/nebula-forge-mcp"] }
  }
}

Requires Node >= 20. The server needs no credentials: every tool works on the workspace files only (synth/deploy stay in the CLI).

Tools

| Tool | What it does | |---|---| | list_model | The versioned model export (same as forge model --json) | | validate_workspace | Full load + validation verdict, with warnings | | generate_component | Create a component with bind/attach/subscribe couplings | | generate_endpoint | Route + controller + use case + test, in sync | | attach / detach | Manage couplings on existing components | | remove_component | Refuses while referenced; force cascades detaches | | regenerate_docs | Rewrite docs/architecture.md and AGENTS.md |

Point tools at a workspace by passing its absolute path as workspaceRoot (the directory holding forge.json). Creating a workspace itself is forge new — it installs dependencies, which an MCP tool should not do silently.

Versioning

The server is a thin shell over the CLI's programmatic API and pins @space-kraken/nebula-forge to the exact same version: forge-mcp x.y.z always drives forge x.y.z. Upgrade both together.

Development (from a checkout)

pnpm install && pnpm run build
claude mcp add forge-dev -- node <checkout>/packages/mcp/bin/run.js

Tool handlers live in src/tools.ts as pure functions over workspaceRoot (tests exercise them directly); src/server.ts only wires them into the stdio transport.