Install
$ agentstack add mcp-jotbirdhq-mcp-server-jotbird ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
mcp-server-jotbird
An MCP server for JotBird that lets any LLM publish Markdown as beautifully formatted, shareable web pages.
Write a document in conversation, publish it with one tool call, and get back a live URL. Supports full Markdown — headings, code blocks, tables, footnotes, math, task lists, and more. Update or delete pages by slug.
Works with Claude, ChatGPT, Gemini, and any MCP-compatible client.
Quick start
1. Get an API key
Sign in at jotbird.com, open Account > API keys, and generate a key.
2. Add to your client
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"jotbird": {
"command": "npx",
"args": ["-y", "mcp-server-jotbird"],
"env": {
"JOTBIRD_API_KEY": "jb_your_key_here"
}
}
}
}
Claude Code
claude mcp add jotbird -e JOTBIRD_API_KEY=jb_your_key_here -- npx -y mcp-server-jotbird
ChatGPT
ChatGPT requires a remote (HTTP) MCP server — it doesn't support local stdio servers directly. You'll need to run a proxy that exposes the server over HTTP with a public tunnel:
JOTBIRD_API_KEY=jb_your_key_here npx mcp-proxy --shell --tunnel -- npx -y mcp-server-jotbird
This starts the server and prints a public tunnel URL (e.g. https://funny-eel-44.tunnel.gla.ma).
Then in ChatGPT:
- Go to Settings > Apps > Advanced settings and enable Developer mode
- Click New App, give it a name, and paste the tunnel URL with
/mcpappended (e.g.https://funny-eel-44.tunnel.gla.ma/mcp) - Set authentication to No Auth and click Create
- In a new chat, select Developer mode from the model picker and enable the app
See OpenAI's MCP docs for details.
Gemini CLI
Edit .gemini/settings.json (project-level) or ~/.gemini/settings.json (global):
{
"mcpServers": {
"jotbird": {
"command": "npx",
"args": ["-y", "mcp-server-jotbird"],
"env": {
"JOTBIRD_API_KEY": "$JOTBIRD_API_KEY"
}
}
}
}
Or add via CLI:
gemini mcp add jotbird npx -e JOTBIRD_API_KEY=jb_your_key_here -- -y mcp-server-jotbird
See Gemini CLI MCP docs for details.
Other MCP clients
Any client that supports the Model Context Protocol over stdio can use this server. Set the JOTBIRD_API_KEY environment variable and run:
npx -y mcp-server-jotbird
3. Use it
Ask your LLM things like:
- "Write a blog post about X and publish it to JotBird"
- "Publish these meeting notes as a shareable page"
- "Update my published page 'my-notes' with this new section"
- "Show me all my published pages"
- "Take down the page with slug 'old-draft'"
- "Publish this at my namespace as 'project-notes'" (Pro)
Tools
publish
Publish Markdown content as a formatted web page with a shareable URL. To update an existing page, pass its slug. Pro users with a username can publish at a permanent namespaced URL by passing namespaced: true.
| Parameter | Required | Description | |-----------|----------|-------------| | markdown | Yes | Markdown content (max 256 KB). Supports footnotes, task lists, definition lists, math ($…$ and $$…$$), and inline HTML. | | title | No | Page title. If omitted, the first H1 in the Markdown is used. | | slug | No | For flat documents: slug of an existing page to update. Omit to publish a new page with an auto-generated slug. For namespaced documents (namespaced: true): required — publishes at @username/slug. Use list_documents to find slugs. | | namespaced | No | When true, publish at your namespace: share.jotbird.com/@username/slug. Requires Pro and a username set in Account Settings. |
list_documents
List the user's published pages. Returns each page's title, URL, slug, expiration date, and username (for namespaced pages).
No parameters.
delete
Permanently delete a published page and its shareable URL. Cannot be undone.
| Parameter | Required | Description | |-----------|----------|-------------| | slug | Yes | Slug of the page to delete. Use list_documents to find slugs. | | namespaced | No | When true, delete the document at @username/slug instead of the flat URL. Requires Pro and a username. |
Namespaced URLs (Pro)
Pro users with a username set in Account Settings can publish at permanent, human-readable URLs like share.jotbird.com/@username/my-page. Just ask your AI:
> "Publish this at my namespace as 'project-notes'." > → share.jotbird.com/@clayton-myers/project-notes
Namespaced pages never expire and keep the same URL across updates. Set your username in Account Settings at jotbird.com.
Limits
| | Free | Pro | |--|------|-----| | Published pages | 10 | Unlimited | | Publishes per hour | 10 | 100 | | Page expiration | 90 days | Never | | Max markdown size | 256 KB | 256 KB |
Environment variables
| Variable | Required | Description | |----------|----------|-------------| | JOTBIRD_API_KEY | Yes | Your JotBird API key (jb_...) | | JOTBIRD_API_URL | No | API base URL (default: https://www.jotbird.com) |
Development
npm install
npm run build
Test locally:
JOTBIRD_API_KEY=jb_your_key node dist/index.js
License
MIT
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jotbirdhq
- Source: jotbirdhq/mcp-server-jotbird
- License: MIT
- Homepage: https://www.jotbird.com/mcp
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.