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

@silicaos/mcp

v0.2.1

Published

Silica MCP server — operate on a Silica workspace as a Yjs peer from any MCP-compatible client (Claude Code, Cursor, etc.)

Readme

@silicaos/mcp

Model Context Protocol server for Silica. Lets Claude Code (and any MCP client) operate on a Silica workspace as a Yjs peer — features, tasks, slot docs, activity notes.

Install in any project

Once you've signed in to the Silica desktop app at least once, register the server in your project's MCP config:

{
  "mcpServers": {
    "silica": {
      "command": "npx",
      "args": ["-y", "@silicaos/mcp"]
    }
  }
}

Locations:

  • Claude Code: ~/.claude.json top-level mcpServers (global) or <repo>/.mcp.json (per-repo)
  • Cursor: ~/.cursor/mcp.json or <repo>/.cursor/mcp.json
  • Any other MCP-compatible client: see its docs for the equivalent file

No cwd, no monorepo checkout, no per-project install. npx pulls the bundle and runs it.

One-command setup

Even faster than hand-editing config files: from inside a target repo,

npx -y @silicaos/mcp install

This will:

  • Pick (or prompt for) which workspace to bind this directory to
  • Detect Claude Code (.claude/) and Cursor (.cursor/) and merge the silica entry into .mcp.json and/or .cursor/mcp.json
  • Drop a .silica.json so the MCP can resolve the workspace fast
  • Register the directory with your workspace so the desktop app sees it
  • Append a Silica block to AGENTS.md (only if the file exists)

Options:

| Flag | Effect | |---|---| | --workspace ws_xxx | Pin a specific workspace_id | | --client claude\|cursor\|all | Restrict which client configs get touched | | --global | Write to ~/.claude.json (Claude Code) / ~/.cursor/mcp.json (Cursor) instead of per-repo | | --no-agents-md | Skip the AGENTS.md append | | --force | Overwrite an existing .silica.json | | --dry-run | Compute changes, print diff, write nothing |

Reverse with:

npx -y @silicaos/mcp uninstall

Authentication

The server reads your Clerk JWT from ~/.config/silica/credentials, written by the Silica desktop app on every successful sign-in. If the file is missing or expired, sign in to the desktop app again to refresh it.

Workspace resolution

In order of priority:

  1. SILICA_WORKSPACE_ID environment variable
  2. .silica.json at the project root containing { "workspace_id": "ws_..." }
  3. Auto-detect: matches cwd against the local_path of any directory connected to one of your workspaces (set via Settings → Connected directories in the desktop app)

Tools

  • list_features({ in_motion?: boolean }) — list features in the workspace
  • create_feature({ title }) — create a feature
  • list_tasks({ feature_id }) — list tasks for a feature
  • create_task({ feature_id, title, description? }) — append a task
  • complete_task({ task_id, completed? }) — toggle completion
  • read_slot({ slot_id }) — read a slot doc as Markdown
  • update_slot({ slot_id, markdown }) — replace a slot doc (V1: lossy on rich structure; high-fidelity edits live in the desktop TipTap editor)
  • append_note({ feature_id, text }) — append an activity entry

V1 limitations

  • Token expiry: the server reads the token at connect; if a long session outlives the JWT, the WS client auto-reconnects on close. If ~/.config/silica/credentials itself goes stale, sign in to the desktop app again.
  • Slot serialization: Markdown round-trip loses some rich-text structure. Use the desktop editor for fidelity-critical edits.

Developing in this monorepo

For working on the MCP server itself:

pnpm --filter @silicaos/mcp dev        # run from source via tsx
pnpm --filter @silicaos/mcp build      # bundle to dist/ with tsup
pnpm --filter @silicaos/mcp typecheck  # tsc --noEmit

If you want to point Claude Code at the in-repo source (instead of npm), register:

{
  "mcpServers": {
    "silica-dev": {
      "command": "pnpm",
      "args": ["--silent", "--filter", "@silicaos/mcp", "dev"],
      "cwd": "/absolute/path/to/Silica"
    }
  }
}

Publishing

The package is published from dist/. prepublishOnly builds. Workflow:

cd apps/mcp
pnpm version patch        # or minor / major
pnpm publish --access public

Tag-based CI publish is TBD.