mcp-server-silverbullet
An MCP server that connects a SilverBullet space over its HTTP filesystem API, exposing a scoped prefix of notes to AI agents with read/write/delete capabilities.
README
mcp-server-silverbullet
English · 한국어
An MCP server that connects a SilverBullet space over
its HTTP filesystem API (/.fs) and exposes only a chosen prefix to AI
agents. It provides five tools plus resources, so you can attach your notes to an
agent without handing over the whole space. Runs with npx — no install needed.
Features
- Prefix scoping — the agent sees only what lives under one prefix (the folder's contents plus its namesake page). Enforced in code, not in the prompt.
- Scope gating — allow
readonly, or addwrite/delete. Tools that aren't allowed are never registered in the first place. - Path hardening — absolute paths,
.., encoded traversal, and anything outside the prefix are all rejected. - Token isolation — the SilverBullet token stays in the server environment and is never exposed to the LLM.
Note — this is a guardrail for the LLM, not a multi-tenant security boundary. SilverBullet's
SB_AUTH_TOKENgrants full space access (there are no prefix-scoped tokens), so use it only in an environment you control.
Setup
Requires Node.js ≥ 20 and a SilverBullet instance with SB_AUTH_TOKEN configured.
Add the following to your MCP client (Claude Code, Cursor, Claude Desktop, etc.):
{
"mcpServers": {
"silverbullet": {
"command": "npx",
"args": ["-y", "@bong-u/mcp-server-silverbullet@0.1.0"],
"env": {
"SILVERBULLET_MCP_BASE_URL": "https://notes.example.com",
"SILVERBULLET_MCP_TOKEN": "<SB_AUTH_TOKEN>",
"SILVERBULLET_MCP_PREFIX": "projects/work",
"SILVERBULLET_MCP_SCOPES": "read"
}
}
}
}
| Variable | Required | Default | Description |
|---|---|---|---|
SILVERBULLET_MCP_BASE_URL |
✅ | — | SilverBullet instance URL. |
SILVERBULLET_MCP_TOKEN |
✅ | — | SB_AUTH_TOKEN. Never passed to the LLM. |
SILVERBULLET_MCP_PREFIX |
— | whole space | Subpath the agent may access, e.g. projects/work. |
SILVERBULLET_MCP_SCOPES |
— | read,write,delete |
Allowed operations (must include read). |
SILVERBULLET_MCP_TIMEOUT_MS |
— | 15000 |
Request timeout (ms). |
SILVERBULLET_MCP_MAX_SEARCH_BYTES |
— | 1000000 |
Max file size search_files will scan. |
SILVERBULLET_MCP_USER_AGENT |
— | mcp-server-silverbullet/<version> |
User-Agent sent upstream. |
If a required variable is missing or malformed, the server exits immediately with a clear error.
Tools
Paths keep the prefix's top segment (notes.md, notes/todo.md). Feed a path
returned by list_files straight into read_file.
| Tool | Scope | Description |
|---|---|---|
list_files |
read |
List files under the prefix (optionally within a subpath). |
read_file |
read |
Read a file — text as utf8, binary as base64. |
write_file |
write |
Create or replace a file. |
delete_file |
delete |
Delete a file. |
search_files |
read |
Substring search over file names and text content. |
Files are also exposed as resources: silverbullet://notes/todo.md.
Development
npm install
cp .env.example .env # fill in instance URL + token
npm run dev # run straight from source (tsx), loading .env
npm run lint # biome
npm run typecheck # tsc --noEmit
npm test # vitest
npm run build # compile to dist/
CI runs lint · typecheck · test · build on Node 20, 22, and 24.
License
MIT
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.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
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.