@stashmcp/server
v0.2.7
Published
MCP server for context management across AI tools
Maintainers
Readme
@stashmcp/server
MCP server for context management across AI tools
Stash is a Model Context Protocol (MCP) server that allows you to save and retrieve context information across different AI tools. Built with Node.js/TypeScript, it provides a simple yet powerful way to maintain context continuity in your AI workflows.
Why Stash?
Ever copy-pasting context between Claude Desktop and Claude Code? Starting a new chat and losing your conversation history? Switching between AI tools and having to re-explain everything? Stash solves this by letting you save context once and retrieve it anywhere.
Quick Start
Prerequisites: Node.js version 18 or higher (Download here)
If you don't have Node.js installed:
- macOS/Windows: Download the installer from nodejs.org and run it (choose the LTS version)
- Verify installation: Open a terminal and run
node --version(should show v18 or higher)
Once Node.js is installed, add this to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"stash": {
"command": "npx",
"args": ["-y", "@stashmcp/server"]
}
}
}Restart Claude Desktop, and you're ready to go! No installation needed.
Example Workflow
Quick save (let Claude decide):
"Claude, summarize this conversation and save it to my stash"
Claude will automatically choose a relevant name and tags.
Organized save (you decide):
"Claude, save this as 'custom-hooks' with tags 'react,frontend'"
Later, retrieve it:
"Claude, get my 'custom-hooks' context"
or "Claude, search my stash for React"
Cross-tool usage:
- Save in Claude Desktop while researching
- Retrieve in Claude Code while coding
- Search in a new chat when you forgot the name
That's it. No copy-paste, no lost context.
Features
- 📝 Save & Retrieve: Store context information with names and tags
- 🔍 Search: Full-text search across all saved contexts
- 🏷️ Tag-based Organization: Filter and organize contexts with tags
- 🔒 Privacy-First: All data stored locally in
~/.stash/ - 📊 Optional Telemetry: Opt-in anonymous usage analytics
- 🔄 Data Compatibility: Works seamlessly with the .NET version
How to Use
Once configured, just ask Claude naturally:
Save something:
"Claude, save this API documentation as 'stripe-api' with tags 'api,payment'"
Retrieve it later:
"Claude, get my 'stripe-api' context"
List everything:
"Claude, show me all my saved contexts"
Search your stash:
"Claude, search my stash for 'authentication'"
Filter by tag:
"Claude, show me all contexts tagged 'python'"
Delete when done:
"Claude, delete the 'old-notes' context"
Alternative Installation Methods
Global Install
If you prefer a global installation instead of npx:
npm install -g @stashmcp/serverThen update your Claude Desktop config to use the stash-mcp command:
{
"mcpServers": {
"stash": {
"command": "stash-mcp"
}
}
}Data Storage
All data is stored locally in ~/.stash/:
contexts.json: Your saved contexts (compatible with .NET version)config.json: Telemetry configurationtelemetry.log: Anonymous usage data (if enabled)
Privacy
All data stored locally on your machine. Optional telemetry is opt-in only (disabled by default) and never collects your content, context names, search queries, or any personal information. View telemetry details
For Developers
Available Tools
All MCP tools are prefixed with stash__:
Context Management
stash__save_context: Save context with name, content, and optional tagsname: string (required) - Unique identifier content: string (required) - The information to save tags: string (optional) - Comma-separated tags (e.g., "api,python,research")stash__get_context: Retrieve a saved context by namename: string (required) - Context identifierstash__list_contexts: List all contexts, optionally filtered by tagtag: string (optional) - Filter by specific tagstash__search_contexts: Search contexts by keywordquery: string (required) - Search termstash__delete_context: Delete a context by namename: string (required) - Context identifier
Telemetry Management
stash__telemetry_status: Check telemetry status and what's trackedstash__enable_telemetry: Enable anonymous usage analyticsstash__disable_telemetry: Disable telemetry collectionstash__telemetry_stats: View telemetry statisticsstash__export_telemetry: Export all telemetry data (JSONL format)stash__clear_telemetry: Clear all telemetry data
Troubleshooting
Server not starting
Check that Node.js is installed:
node --version # Should be >= 18.0.0Windows-specific Issues
Error: "Cannot read properties of null (reading 'Enabled')"
This error occurs when the telemetry config file is corrupted or has permission issues. To fix:
Delete the config file:
Remove-Item "$env:USERPROFILE\.stash\config.json" -ErrorAction SilentlyContinueRestart Claude Desktop
The config will be regenerated automatically
Configuration in Claude Desktop (Windows)
Use the node command explicitly in your config:
{
"mcpServers": {
"stash": {
"command": "node",
"args": ["C:\\Users\\YourUsername\\AppData\\Roaming\\npm\\node_modules\\@stashmcp\\server\\dist\\index.js"]
}
}
}Or use npx for a simpler, more reliable approach:
{
"mcpServers": {
"stash": {
"command": "npx",
"args": ["-y", "@stashmcp/server"]
}
}
}Tool not appearing in Claude Desktop
- Restart Claude Desktop after configuration changes
- Check the configuration file path is correct
- Verify JSON syntax in configuration file
- On Windows, check Claude Desktop logs:
%APPDATA%\Claude\logs\
Data not persisting
- Ensure
~/.stash/directory has write permissions - Check disk space availability
- Review stderr output for error messages
Telemetry Details
Telemetry is opt-in only and disabled by default. When enabled:
What's Tracked ✓
- Feature usage counts (save, get, list, search, delete)
- Error rates and types
- Performance metrics (content sizes, tag counts)
What's NOT Tracked ✗
- Your context content
- Context names
- Search queries
- Any personal information
All telemetry data is:
- Stored locally in
~/.stash/telemetry.log - Viewable anytime with
stash__export_telemetry - Clearable anytime with
stash__clear_telemetry
To enable or disable telemetry, ask Claude:
"Claude, enable telemetry for Stash" "Claude, disable telemetry for Stash"
Version Information
- Current Version: 0.2.4
- MCP SDK: 0.5.0
- Node.js: >=18.0.0
Support
For questions and support, please refer to the npm package documentation.
Acknowledgments
Built with:
- @modelcontextprotocol/sdk - MCP protocol implementation
- TypeScript - Type-safe JavaScript
