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

@jaumemory/mcp-server

v0.3.2

Published

MCP server providing persistent memory capabilities for AI assistants like Claude

Readme

JauMemory MCP Server

A Model Context Protocol (MCP) server that provides persistent memory capabilities for AI assistants like Claude. Store, recall, and analyze information across conversations with intelligent memory management.

Features

  • 🧠 Persistent Memory: Store information that persists across all sessions
  • 🔍 Smart Recall: Search memories using keywords or semantic similarity
  • 📊 Pattern Analysis: Automatically detect patterns and extract insights
  • 🏷️ Automatic Classification: Memories are automatically categorized (errors, solutions, insights, questions)
  • 🔄 Memory Consolidation: Merge related memories to prevent redundancy
  • 🎯 Importance Scoring: Content-based importance assessment with learning value metrics
  • 🤝 Multi-Agent Support: Coordinate between multiple AI agents with notifications and assignments
  • 🚀 Production Ready: Connects to JauMemory cloud service with secure authentication

Prerequisites

  • Node.js 18.0.0 or higher
  • npm or yarn
  • JauMemory account (free tier available at mem.jau.app)

Installation

From NPM

npm install -g @jaumemory/mcp-server

From GitHub

git clone https://github.com/Jau-app/jaumemory-mcp-server.git
cd jaumemory-mcp-server
npm install
npm run build

Configuration

Claude Desktop

Add to your Claude desktop configuration file:

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

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

Claude Code

Add to your Claude Code configuration:

MacOS/Linux: ~/.config/claude/claude_code_config.json Windows: %APPDATA%\claude\claude_code_config.json

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

Cursor

  1. Open Cursor Settings
  2. Navigate to MCP section
  3. Add new MCP server with command: npx -y @jaumemory/mcp-server

Or edit configuration file:

MacOS/Linux: ~/.cursor/mcp_config.json Windows: %APPDATA%\Cursor\mcp_config.json

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

Cline

Add to Cline MCP settings:

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

Windsurf

Add to Windsurf MCP configuration:

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

GitHub Copilot

Add to GitHub Copilot MCP settings:

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

ChatGPT (Plus/Pro Required)

Add to ChatGPT MCP configuration:

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

Advanced Configuration (Optional)

Environment variables are not required for basic setup. Authentication is handled automatically via the mcp_login tool.

However, you can optionally create a .env file to pre-configure your username and email:

# Optional: Pre-configure credentials (authentication still required via mcp_login)
JAUMEMORY_USERNAME=your-username
[email protected]

# Optional: Logging configuration
LOG_LEVEL=info
NODE_ENV=production

Note: Even with environment variables set, you must still authenticate using the mcp_login tool on first use.

Authentication

First-Time Setup

  1. Launch your AI assistant (Claude Desktop, Cursor, etc.) - the MCP server will start automatically
  2. Use the mcp_login tool to initiate authentication
  3. Click the approval link that opens in your browser
  4. Complete the authentication in your web browser
  5. The server will automatically store your credentials securely

That's it! No configuration files or environment variables needed for basic setup.

Usage

MCP Tools Available

Once integrated with Claude, you'll have access to these tools:

Core Memory Tools

remember - Store a new memory with automatic classification

remember({
  content: "Important insight about TypeScript generics",
  tags: ["typescript", "learning"],
  importance: 0.8,
  shortcuts: ["--insight", "--high"]
})

recall - Search and retrieve memories

recall({
  query: "typescript generics",
  limit: 10,
  mode: "keyword" // or "semantic" for AI-powered search
})

forget - Delete a specific memory

forget({
  memoryId: "550e8400-e29b-41d4-a716-446655440000"
})

update - Update an existing memory

update({
  memoryId: "memory-id",
  content: "Updated content",
  importance: 0.9
})

Analysis Tools

analyze - Analyze patterns and extract insights

analyze({
  timeRange: "week" // or "day", "month", "all"
})

consolidate - Consolidate similar memories

consolidate({
  similarityThreshold: 0.7,
  minGroupSize: 2
})

memory_stats - Get statistics about memories

memory_stats({
  query: "project-name",
  timeRange: { start: "2024-01-01", end: "2024-12-31" }
})

Multi-Agent Features

create_agent - Create an AI agent with personality

create_agent({
  name: "Code Reviewer",
  personalityTraits: ["analytical", "detail-oriented"],
  specializations: ["code-review", "best-practices"]
})

check_notifications - Check for agent notifications

check_notifications({
  agentId: "reviewer-001"
})

Shortcuts System

Quick memory creation with metadata flags:

remember({
  content: "Fix authentication bug",
  shortcuts: ["--bug", "--high", "--assign @backend-dev", "--project webapp"]
})

Available shortcuts:

  • Types: --todo, --task, --bug, --question, --note
  • Status: --pending, --wip, --done, --blocked [reason]
  • Priority: --low, --medium, --high, --urgent
  • Assignment: --assign @agent-name, --notify @agent1,@agent2
  • Context: --project name, --thread id, --parent memory-id

Memory Types

JauMemory automatically classifies memories:

  • 🔴 Error: Problems and bugs encountered
  • Solution: Fixes and resolutions
  • 💡 Insight: Patterns and realizations
  • Question: Unknowns and research needs

Development

# Install dependencies
npm install

# Run in development mode
npm run dev

# Build for production
npm run build

# Run tests
npm test

# Lint code
npm run lint

Project Structure

jaumemory-mcp-server/
├── src/                # TypeScript source code
│   ├── index.ts        # Main entry point
│   ├── auth/           # Authentication logic
│   ├── client/         # gRPC client code
│   ├── tools/          # MCP tool implementations
│   └── utils/          # Utility functions
├── dist/               # Compiled JavaScript
├── proto/              # Protocol buffer definitions
└── package.json        # Package configuration

Troubleshooting

Windows Installation Issues

If you encounter TAR_ENTRY_ERROR errors on Windows when using npx:

Solution 1: Use global installation

# Run in PowerShell as Administrator
npm install -g @jaumemory/mcp-server --force

Then update your config to use the global command:

{
  "mcpServers": {
    "jaumemory": {
      "command": "jaumemory-mcp-server",
      "args": []
    }
  }
}

Solution 2: Clear npm cache

npm cache clean --force
npm config set fetch-retries 10
npm config set fetch-timeout 60000
npx -y @jaumemory/mcp-server

Solution 3: Local installation

mkdir C:\JauMemory
cd C:\JauMemory
npm install @jaumemory/mcp-server

Then use in config:

{
  "mcpServers": {
    "jaumemory": {
      "command": "node",
      "args": ["C:\\JauMemory\\node_modules\\@jaumemory\\mcp-server\\dist\\index.js"]
    }
  }
}

Authentication Issues

  1. Ensure you have a valid JauMemory account
  2. Check your username and email are correct
  3. Look for the approval link in your browser
  4. Check logs: LOG_LEVEL=debug npm start

Connection Problems

  1. Verify internet connection
  2. Check if JauMemory service is available at https://mem.jau.app
  3. Ensure firewall allows HTTPS/gRPC connections
  4. Try clearing auth cache and re-authenticating

Claude Integration

  1. Verify MCP configuration in Claude desktop
  2. Restart Claude after configuration changes
  3. Check Claude logs for MCP errors
  4. Ensure Node.js version is 18.0.0 or higher

Security

  • Authentication uses secure MCP approval flow
  • Credentials are encrypted and stored securely
  • All communication uses HTTPS/TLS
  • No sensitive data is logged

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

Acknowledgments


Made with ❤️ for the AI assistant community