RemNote MCP Bridge
Bridges RemNote knowledge base with AI assistants via MCP, allowing AI to read, create, search, and update notes in your personal knowledge management system.
README
RemNote MCP Bridge
Connect RemNote to AI assistants (Claude, GPT, etc.) via the Model Context Protocol (MCP). This project enables bidirectional communication, allowing AI to read and write directly to your RemNote knowledge base.
What is MCP?
Model Context Protocol is an open standard by Anthropic that allows AI assistants to interact with external tools and data sources. With this bridge, your AI assistant becomes a true PKM companion.
Features
Core Capabilities
- Create Notes - AI can create new notes with titles, content, and tags
- Search Knowledge Base - Full-text search across all your Rems
- Read Notes - Access note content and hierarchical children
- Update Notes - Modify existing notes, append content, manage tags
- Daily Journal - Append entries to today's daily document
Plugin Features
- Auto-tagging - Automatically tag notes created via MCP (configurable)
- Session Statistics - Track created/updated/journal entries/searches
- Action History - View last 10 MCP actions with timestamps
- Configurable Settings - Customize behavior through RemNote settings
- Real-time Status - Connection status indicator in sidebar widget
⚠️ Important: Deploy Your Own Server
Security Notice: Each user must deploy their own MCP server instance. Do not share server URLs between users, as this could expose your RemNote data to others.
Quick Start Options
Option A: Local Development (Recommended for testing)
- Server runs on your computer
- No cloud deployment needed
- Works with Claude Desktop only
Option B: Cloud Deployment (Required for Claude Mobile)
- Deploy to Railway, Render, or similar
- Enables Claude Mobile access
- Each user needs their own deployment
See server/README.md for detailed deployment instructions.
Installation
1. Install the RemNote Plugin
Option A: Marketplace (once approved)
- Search for "MCP Bridge" in RemNote's Plugin marketplace
Option B: Development Mode
git clone https://github.com/AlexHagemeister/remnote-mcp-bridge.git
cd remnote-mcp-bridge
npm install
npm run dev
Then in RemNote: Settings → Plugins → Build → Develop from localhost
2. Deploy Your MCP Server
⚠️ Critical: Each user must deploy their own server instance for security.
Option A: Local Server (Easiest)
cd server
npm install
npm run dev
Server runs at http://localhost:3002
Option B: Railway Deployment (For Claude Mobile)
- Fork this repository to your GitHub account
- Deploy to Railway:
cd server railway login railway init railway up - Note your URL:
https://your-app-name.up.railway.app
See server/README.md for detailed deployment guides including Render, Fly.io, and Docker.
3. Configure RemNote Plugin
In RemNote: Settings → Plugins → MCP Bridge
Set WebSocket server URL to:
- Local:
ws://127.0.0.1:3002 - Railway:
wss://your-app-name.up.railway.app
4. Configure Your AI Assistant
For Claude Desktop/Web
Go to Settings → Connectors → Add custom connector
Enter your server URL:
- Local:
http://localhost:3002/sse - Railway:
https://your-app-name.up.railway.app/sse
For Claude Mobile
Add custom connector with your Railway URL:
https://your-app-name.up.railway.app/sse
Note: Claude Mobile requires a cloud-deployed server (Railway, Render, etc.)
Configuration
Access plugin settings in RemNote via Settings > Plugins > MCP Bridge:
| Setting | Description | Default |
|---|---|---|
| Auto-tag MCP notes | Add a tag to all AI-created notes | true |
| Auto-tag name | Tag name for AI-created notes | MCP |
| Journal entry prefix | Prefix for journal entries | [Claude] |
| Add timestamp to journal | Include time in journal entries | true |
| WebSocket server URL | MCP server connection URL | ws://127.0.0.1:3002 |
| Default parent Rem ID | Parent for new notes (empty = root) | `` |
MCP Tools Available
Once connected, your AI assistant can use these tools:
| Tool | Description |
|---|---|
remnote_create_note |
Create a new note with title, content, parent, tags. Optional markAs to create as document or folder. |
remnote_search |
Search the knowledge base with query and filters |
remnote_read_note |
Read a note's content and children by ID |
remnote_update_note |
Update title, append content, add/remove tags. Optional markAs to convert to document or folder. |
remnote_append_journal |
Add an entry to today's daily document |
remnote_status |
Check connection status |
Example Usage
Once everything is connected, you can ask your AI assistant things like:
- "Create a note about the meeting we just had"
- "Search my notes for information about project X"
- "Add a journal entry: Finished the MCP integration today!"
- "Find all my notes tagged with 'Ideas' and summarize them"
- "Update my 'Reading List' note with this new book"
Architecture
┌─────────────────┐ SSE/HTTP ┌─────────────────┐
│ Claude App │◄──────────────────►│ MCP Server │
│ (Mobile/Desktop)│ /sse endpoint │ (server/ dir) │
└─────────────────┘ └────────┬────────┘
│
WebSocket
wss://:PORT
│
┌───────▼────────┐
│ RemNote Plugin │
│ (In browser) │
└───────┬────────┘
│
Plugin SDK
│
┌───────▼────────┐
│ RemNote │
│ Knowledge Base │
└────────────────┘
The MCP server bridges two protocols:
- SSE (Server-Sent Events) for Claude clients
- WebSocket for the RemNote plugin running in your browser
Development
Plugin (runs in RemNote)
# install dependencies
npm install
# run in dev mode (hot reload)
npm run dev
# build for production
npm run build
# output: PluginZip.zip
Server (runs on Railway or locally)
cd server
# install dependencies
npm install
# run in dev mode
npm run dev
# build
npm run build
# run production
npm start
Troubleshooting
Plugin shows "Disconnected"
- Ensure YOUR MCP server is running (local or deployed)
- Check the WebSocket URL in RemNote plugin settings:
- Local:
ws://127.0.0.1:3002 - Railway:
wss://your-app-name.up.railway.app(use YOUR deployment URL)
- Local:
- Verify your server is accessible:
curl https://your-app-name.up.railway.app/health - Look for errors in RemNote's developer console (Cmd+Option+I)
"Invalid event setCustomCSS" errors
- These are cosmetic errors from development mode
- They don't affect functionality
- They won't appear in production builds
Notes not appearing
- Check if a default parent ID is set (might be creating under a specific Rem)
- Verify the auto-tag setting isn't filtering your view
Data Privacy
Important: This plugin sends your RemNote data to external services.
When you use this plugin:
- RemNote data is transmitted to the MCP server you configure (local or remote)
- The MCP server forwards this data to AI assistants (Claude, GPT, etc.) that you connect
- Data includes note titles, content, tags, and hierarchical structure based on the tools invoked
What data is sent?
The plugin only sends data when:
- You explicitly invoke an MCP tool (create, search, read, update notes)
- The AI assistant requests access to your RemNote data
Data flow:
RemNote (your browser) → MCP Server (your deployment) → AI Assistant (Claude/GPT)
Security recommendations:
- Deploy your own server - Never share server URLs with other users
- Each user needs their own deployment - Sharing servers exposes data to others
- Review tool calls before allowing AI to execute them
- Use local server for maximum security (no internet transmission)
- No data is stored by the MCP server - it only bridges connections
- Keep your server URL private - Treat it like a password
Why each user needs their own server:
The MCP server acts as a bridge between your RemNote and AI assistants. If multiple users connect to the same server, their data could potentially be mixed or exposed to each other. Always deploy your own instance.
By using this plugin, you acknowledge that your RemNote data will be transmitted to the services you configure.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
MIT License - see LICENSE for details.
Links
| Resource | URL |
|---|---|
| GitHub Repo | https://github.com/AlexHagemeister/remnote-mcp-bridge |
| Plugin Files (GitHub Pages) | https://alexhagemeister.github.io/remnote-mcp-bridge/ |
| Server Deployment Guide | server/README.md |
Acknowledgments
- RemNote for the amazing PKM tool
- Anthropic for Claude and the MCP protocol
- The RemNote plugin community for inspiration
- Original concept by Quentin Tousart
Made with Claude - This plugin was developed in collaboration with Claude AI.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.