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

@natiwo/spectrum-mcp

v0.1.2

Published

MCP server for Spectrum semantic memory. Connect Claude, Gemini, Codex to persistent memory.

Downloads

209

Readme

@natiwo/spectrum-mcp

MCP server for Spectrum — give your AI persistent memory.

Works with Claude, Gemini, Codex, and any MCP-compatible client.

npm License: MIT


What This Does

Your AI forgets everything between sessions. This MCP server connects it to Spectrum, a local SQLite-based semantic memory system. Your AI can save context, recall decisions, and search by meaning across sessions.

You: "Remember that we use Tailwind 4 with the Catalyst preset"
AI:  [saves to Spectrum]

--- next day, new session ---

You: "What CSS framework do we use?"
AI:  [searches Spectrum] "You use Tailwind 4 with the Catalyst preset."

No cloud. No API keys. Everything on your machine.

Setup

Claude Code

Add to ~/.claude.json:

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

Claude Desktop

Add to claude_desktop_config.json:

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

Global install (faster startup)

npm install -g @natiwo/spectrum-mcp

Then use spectrum-mcp instead of npx:

{
  "mcpServers": {
    "spectrum": {
      "command": "spectrum-mcp"
    }
  }
}

Any MCP client

Spectrum MCP uses stdio transport. Point your client to the spectrum-mcp binary or npx @natiwo/spectrum-mcp.

Tools

The server exposes 7 tools:

| Tool | Description | |------|-------------| | memory_save | Save or update a memory (scope, key, value, optional tags) | | memory_get | Retrieve a specific memory by scope and key | | memory_list | List memories in a scope (with optional prefix filter) | | memory_delete | Delete a specific memory | | memory_search | Keyword search across keys and values | | memory_search_semantic | Search by meaning using embeddings | | memory_list_scopes | List all scopes with memory count |

Example tool calls

memory_save(scope: "project:my-app", key: "stack", value: "Next.js 15, PostgreSQL, Redis", tags: ["architecture"])
memory_get(scope: "project:my-app", key: "stack")
memory_search(query: "database", scope: "project:my-app")
memory_search_semantic(query: "which database did we choose?")
memory_list(scope: "project:my-app", prefix: "config")
memory_list_scopes()
memory_delete(scope: "project:my-app", key: "old-decision")

Scopes

Organize memories by context:

| Scope pattern | Use | |---------------|-----| | user | Personal preferences, coding style | | project:<name> | Project-specific architecture, decisions | | session | Session summaries, continuity | | team:<name> | Shared team knowledge | | debug | What broke, what fixed it |

Semantic Search

For search by meaning (not just keywords), install the optional dependency:

npm install -g @huggingface/transformers

The embedding model (all-MiniLM-L6-v2, 384D, ONNX) downloads on first use and runs locally. No API. No cloud. No latency.

Without it, memory_search_semantic falls back to keyword search.

Storage

All data in ~/.spectrum/spectrum.db (SQLite, WAL mode). One file. Copy it, back it up, sync it between machines.

Custom path:

{
  "mcpServers": {
    "spectrum": {
      "command": "spectrum-mcp",
      "env": {
        "SPECTRUM_DB_PATH": "/path/to/custom.db"
      }
    }
  }
}

Ecosystem

| Package | What | |---------|------| | @natiwo/spectrum | Core library | | @natiwo/spectrum-cli | CLI tool (spm) | | @natiwo/spectrum-mcp | MCP server (you are here) |

Documentation

Full documentation, API reference, and architecture: github.com/Natiwo/spectrum

License

MIT