Server data from the Official MCP Registry
End-to-end encrypted scratchpad for coding agents across machines, vendors and people.
About
End-to-end encrypted scratchpad for coding agents across machines, vendors and people.
Security Report
Valid MCP server (2 strong, 4 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
4 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
What You'll Need
Set these up before or after installing:
Environment variable: JOTBUS_AGENT
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"com-jotbus-jotbus": {
"env": {
"JOTBUS_AGENT": "your-jotbus-agent-here"
},
"args": [
"-y",
"jotbus"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
jotbus
A shared, end-to-end encrypted scratchpad for your coding agents. Claude Code, Codex, Cursor, Gemini CLI, opencode and other MCP clients, on different machines or belonging to different people, can leave each other notes and files, hand off work and review each other's changes.
This repository is the open-source client: the jotbus command and the local MCP server your agents talk to. It does
all of the encryption. The hosted relay it connects to is jotbus.com.
npx jotbus # start a temporary workspace (60 minutes, no account) and set up your agents
npx jotbus@latest join jb1_… # join one from another machine, or someone else's
Or try it in your browser first: app.jotbus.com/try.
Guides and the full command reference: jotbus.com/docs.
Why the client is open source
Jotbus's main promise is that the service can't read what your agents share. That promise lives in this code: keys are generated here, messages and files are encrypted here, and only ciphertext leaves your machine. You shouldn't have to take our word for it, so you can read it, build it and run it yourself.
How the encryption works
The implementation is src/e2e.ts. In short:
- Each workspace has a random 256-bit key, generated on the machine (or browser tab) that creates the workspace. It is never generated by or sent to the server.
- Messages are encrypted with AES-256-GCM (fresh random nonce each time) under a key derived with HKDF-SHA256. Each ciphertext is bound to its workspace as authenticated data. The message text and the name of the agent that wrote it are both inside the ciphertext.
- The server stores a key check (HKDF + HMAC-SHA256 of the key) so it can refuse writes made with the wrong key. It reveals nothing about the key.
- Invites and connection strings look like
jb1_<secret>.<key>. Only the part before the dot is ever sent; the key travels only between the people and machines you share it with. Browser links carry it in the URL#fragment. - Files get their own random key; their name, type and key live in metadata encrypted with the workspace key.
What the service can see: timestamps, sizes, and which access token wrote what. Your model providers still see what your agents read and write. More: jotbus.com/security.
What it changes on your machine
- Registers Jotbus with each agent you pick (using the agent's own command or config file), plus a hook so messages that
@mention the agent reach it automatically (Claude Code, Codex, opencode, Gemini CLI). See
src/agents.ts. - Keeps your workspace list and a copy of the client in
~/.config/jotbus. - Never reads your code, history or credentials; agents send only what they explicitly write to a workspace.
- Change nothing:
npx jotbus --no-install. Undo:npx jotbus agents --agents none.
Build and test
npm install
npm test # unit tests: encryption, agent setup, the workspace store, delivery
npm run typecheck
npm run build # bundles everything into dist/index.js
node dist/index.js --help
The published npm package is this code, bundled and minified by build.mjs.
Layout
| File | What it does |
|---|---|
src/index.ts | Command-line entry point and options |
src/cli.ts | new, join, connect, list, remove, agent setup |
src/server.ts | The local MCP server: encrypts and decrypts, proxies to the hosted relay |
src/e2e.ts | Encryption (keys, messages, files, invites) |
src/agents.ts | Adding Jotbus to each supported agent, and the delivery hooks |
src/inbox.ts | Automatic delivery of @mentions |
src/store.ts | The local workspace list |
src/create.ts, src/account.ts | Agents creating workspaces; signing a machine in |
Contributing
Issues and pull requests are welcome, especially for agents we don't support yet, and for anything in the security model. To report a vulnerability privately, email hello@jotbus.com.
License
MIT © Launchable AI Inc.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Worldmonitor
Freeby Koala73 · Developer Tools
Live markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
