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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@contextstream/mcp-server

v0.3.15

Published

MCP server exposing ContextStream public API - code context, memory, search, and AI tools for developers

Readme

ContextStream MCP Server

npm version GitHub

🧠 Your AI's Permanent Brain — Across Every Tool, Every Conversation

Tired of re-explaining your codebase to AI every single time?

ContextStream gives your AI persistent memory that follows you everywhere. Decisions remembered. Context preserved. No more repeating yourself.

Website: contextstream.io | Docs: contextstream.io/docs/mcp


✨ Why ContextStream?

The Problem

  • Close a chat with Cursor → Open a new one → AI forgot everything
  • Switch from Claude to Windsurf → Start explaining from scratch
  • New team member joins → Days of onboarding conversations
  • "Why did we build it this way?" → No one remembers

The Solution

ContextStream is a universal memory layer for AI coding tools. It works with Cursor, Claude Code, Windsurf, VS Code, and any MCP-compatible client.

You: "Initialize session and remember we use PostgreSQL with TypeScript strict mode"
...later, in a NEW conversation...
You: "What are my preferences for this project?"
AI: "You prefer TypeScript with strict mode, and you're using PostgreSQL."

It remembers. Across sessions. Across tools. Forever.


🚀 2-Minute Setup

1. Get your API key (30 seconds)

Sign up at contextstream.io → Settings → API Keys → Create one.

2. Add to your MCP config (60 seconds)

Cursor / Claude Code / Windsurf / VS Code:

{
  "mcpServers": {
    "contextstream": {
      "command": "npx",
      "args": ["-y", "@contextstream/mcp-server"],
      "env": {
        "CONTEXTSTREAM_API_URL": "https://api.contextstream.io",
        "CONTEXTSTREAM_API_KEY": "your_api_key"
      }
    }
  }
}

Codex CLI: Add to ~/.codex/config.toml:

[mcpServers.contextstream]
command = "npx"
args = ["-y", "@contextstream/mcp-server"]

[mcpServers.contextstream.env]
CONTEXTSTREAM_API_URL = "https://api.contextstream.io"
CONTEXTSTREAM_API_KEY = "your_api_key"

3. Try it out (30 seconds)

Start a chat and say:

"Initialize session and remember that I prefer TypeScript with strict mode"

Then start a brand new conversation and ask:

"What are my preferences?"

It remembers.


🔥 Beyond Memory — That's Just the Beginning

ContextStream isn't just memory storage. It understands your code.

Impact Analysis

"What breaks if I change the UserService class?"

See all dependencies and side effects before refactoring.

Decision History

"Why did we choose PostgreSQL over MongoDB?"

Recall past decisions with full context and reasoning.

Semantic Code Search

"Find where we handle rate limiting"

Search by meaning, not just keywords. Find code by intent.

Knowledge Graph

"Show dependencies for the auth module"

Visualize connections between code, decisions, and docs.


📊 60+ MCP Tools at Your Fingertips

🔍 Code Search & Context

| Tool | Description | |------|-------------| | search_semantic | Find code by meaning, not just keywords | | search_hybrid | Combines semantic + keyword for best results | | search_pattern | Regex-based code search | | ai_context | Automatically gather relevant code, docs, and memory |

🧠 Memory & Knowledge

| Tool | Description | |------|-------------| | session_remember | Quick natural language memory ("Remember I prefer TypeScript") | | session_recall | Quick recall ("What were the auth decisions?") | | memory_create_event | Store decisions, insights, and context | | memory_search | Find relevant past context | | memory_decisions | Get decision summaries |

📊 Code Intelligence

| Tool | Description | |------|-------------| | graph_dependencies | Understand what depends on what | | graph_call_path | Trace execution flows | | graph_impact | Understand change impact | | graph_circular_dependencies | Find problematic cycles | | graph_unused_code | Identify dead code |

🤖 AI Integration

| Tool | Description | |------|-------------| | ai_context | Build LLM-ready context from your codebase | | ai_enhanced_context | Deep analysis with memory integration | | ai_plan | AI-powered development planning | | ai_tasks | Break down work into actionable tasks |

🚀 Session Management

| Tool | Description | |------|-------------| | session_init | Initialize conversation with auto-context | | context_smart | Get relevant context for any message | | session_capture | Store context to memory | | session_compress | Compress chat history to memory |

See all 60+ tools →


✨ Auto-Context (v0.3.0+)

Context loads automatically on the first tool call. No manual setup required.

═══════════════════════════════════════════
🧠 AUTO-CONTEXT LOADED (ContextStream)
═══════════════════════════════════════════
📁 Workspace: my-project
📂 Project: backend-api

📋 Recent Decisions:
   • Use PostgreSQL for persistence
   • JWT for authentication

🧠 Recent Context:
   • [decision] API design patterns
   • [preference] TypeScript strict mode
═══════════════════════════════════════════

Works with all MCP clients — no client-side changes required.


🛡️ Privacy & Security

  • Encrypted at rest — All data encrypted with AES-256
  • No training on your data — We never use your code to train AI
  • You control access — Workspace permissions & API keys
  • Self-host option — Enterprise can self-host for full control

🏆 Why Not Built-in Memory?

| Built-in memory | ContextStream | |-----------------|---------------| | ✗ Vendor lock-in — switch tools, lose everything | ✓ Universal — Cursor, Claude, Windsurf, any MCP tool | | ✗ Expires or resets over time | ✓ Persistent forever — never lose context (paid plans) | | ✗ No semantic search | ✓ Semantic search — find anything across all history | | ✗ Personal only — teammates start from zero | ✓ Team memory — shared context, instant onboarding | | ✗ No API access | ✓ 60+ MCP tools — full API and automation | | ✗ Memory isolated from code | ✓ Knowledge graph — decisions linked to code | | ✗ Clunky to use | ✓ Natural language — "remember X", "what did we decide about Y?" |


📖 Full Tool Reference

| Tool | Description | |------|-------------| | auth_me | Get current user profile |

| Tool | Description | |------|-------------| | workspaces_list | List accessible workspaces | | workspaces_get | Get workspace details | | workspaces_create | Create a new workspace | | workspaces_overview | Get workspace summary | | workspaces_analytics | Get usage analytics | | workspaces_content | List workspace content |

| Tool | Description | |------|-------------| | projects_list | List projects (by workspace) | | projects_get | Get project details | | projects_create | Create a new project | | projects_overview | Get project summary | | projects_statistics | Get code statistics | | projects_files | List indexed files | | projects_index | Trigger re-indexing | | projects_index_status | Check indexing status |

| Tool | Description | |------|-------------| | search_semantic | Semantic vector search | | search_hybrid | Combined semantic + keyword | | search_keyword | Traditional keyword search | | search_pattern | Regex pattern search | | search_suggestions | Get search suggestions |

| Tool | Description | |------|-------------| | memory_create_event | Store a memory event | | memory_get_event | Retrieve an event | | memory_update_event | Update an event | | memory_delete_event | Remove an event | | memory_list_events | List events in workspace | | memory_bulk_ingest | Bulk import events | | memory_distill_event | Extract key insights | | memory_create_node | Create knowledge node | | memory_get_node | Get knowledge node | | memory_update_node | Update knowledge node | | memory_delete_node | Remove knowledge node | | memory_supersede_node | Replace with new version | | memory_list_nodes | List knowledge nodes | | memory_search | Search memory | | memory_decisions | Get decision summaries | | memory_timeline | Get chronological timeline | | memory_summary | Get condensed summary |

| Tool | Description | |------|-------------| | graph_related | Find related knowledge nodes | | graph_path | Find path between nodes | | graph_decisions | Decision history in graph | | graph_dependencies | Query code dependencies | | graph_call_path | Trace call paths | | graph_impact | Analyze change impact | | graph_circular_dependencies | Find circular deps | | graph_unused_code | Find dead code | | graph_contradictions | Find conflicting info |

| Tool | Description | |------|-------------| | ai_context | Build LLM context | | ai_enhanced_context | Deep context with memory | | ai_embeddings | Generate embeddings | | ai_plan | Generate dev plan | | ai_tasks | Generate tasks |

| Tool | Description | |------|-------------| | session_init | Initialize conversation | | session_get_user_context | Get user preferences | | session_capture | Store context to memory | | session_smart_search | Search with context enrichment | | session_remember | Quick natural language memory | | session_recall | Quick natural language recall | | context_smart | Get relevant context for message | | session_compress | Compress chat history to memory | | session_summary | Get compact workspace summary | | session_delta | Get changes since timestamp |


🔌 Pre-built Prompts

| Prompt | Description | |--------|-------------| | explore-codebase | Get a codebase overview | | capture-decision | Document an ADR | | review-context | Build code review context | | investigate-bug | Debug investigation helper | | explore-knowledge | Navigate knowledge graph | | onboard-to-project | Generate onboarding guide | | analyze-refactoring | Find refactoring opportunities | | build-context | Build comprehensive LLM context |


⚙️ Environment Variables

| Variable | Required | Description | |----------|----------|-------------| | CONTEXTSTREAM_API_URL | Yes | API base URL (https://api.contextstream.io) | | CONTEXTSTREAM_API_KEY | Yes | Your API key from contextstream.io |


🔗 Links


🤝 Contributing

We welcome contributions! Here's how you can help:

  1. Report bugs — Open an issue at GitHub Issues
  2. Request features — Share your ideas in the issues
  3. Submit PRs — Fork the repo and submit pull requests

Development

# Clone the repo
git clone https://github.com/contextstream/mcp-server.git
cd mcp-server

# Install dependencies
npm install

# Run in development mode
npm run dev

# Build for production
npm run build

# Type check
npm run typecheck

📄 License

MIT