docbin
Give an agent a place to put large output. Build logs and reports get a stable versioned URL.
Should I use this
Quality & Safety
Findings (2)
- HIGH
- MEDIUMin create_doc
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"docbin": {
"url": "https://mcp.docbin.app/mcp"
}
}
}Remote endpoints
https://mcp.docbin.app/mcpstreamable-httpWhat it can do
Tool inventory
Tools (3)
🟡create_doc(name, content, content_type, language, visibility, ...)
Create a document and return its public URL. Re-using an existing name adds a new immutable version. Omit the name to get a random one. For content larger than ~10KB or any file already on disk, do NOT inline it here - run `docbin push <file> [--name <doc>]` in your shell instead (set DOCBIN_TOKEN to an API key from https://docbin.app/settings/keys). Inlining large content streams it through the model token-by-token and will time out.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Document name. A random slug is generated if omitted."
},
"content": {
"type": "string",
"description": "The HTML, Markdown, MDX, or code body of the document."
},
"content_type": {
"type": "string",
"enum": [
"html",
"md",
"mdx",
"code"
],
"description": "Defaults to html. 'mdx' renders Markdown with JSX components; 'code' renders a single syntax-highlighted block."
},
"language": {
"type": "string",
"description": "Syntax-highlight language hint, used when content_type is 'code' (e.g. 'rust')."
},
"visibility": {
"type": "string",
"enum": [
"private",
"unlisted",
"public"
],
"description": "Defaults to public. private = owner only; unlisted = anyone with the link; public = listed, searchable, and crawlable."
},
"files": {
"type": "array",
"description": "Optional: a multi-file group. When provided, supersedes content/content_type. The entry file is auto-selected (index/readme/main, else first). CROSS-FILE LINKS: to link from one file in the group to another, use a bare relative link to the sibling's filename, exactly as given in this `files` array - e.g. <a href=\"page2.html\">. The viewer intercepts it and switches the active file (updating the left-pane selection and the URL). Do NOT use absolute URLs, slugs, ./ prefixes, or #file- hashes for cross-file links. In-page anchor links within a file (e.g. #section) work as normal.",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"content": {
"type": "string"
},
"language": {
"type": "string"
}
},
"required": [
"name",
"content"
]
}
}
}
}Output Schema
{
"type": "object",
"properties": {
"handle": {
"type": "string"
},
"name": {
"type": "string"
},
"version": {
"type": "number"
},
"contentType": {
"type": "string"
},
"language": {
"type": [
"string",
"null"
]
},
"visibility": {
"type": "string"
},
"snippet": {
"type": "string"
},
"appUrl": {
"type": "string"
},
"rawUrl": {
"type": "string"
},
"deleted": {
"type": "boolean"
}
},
"required": [
"handle",
"name",
"version",
"appUrl",
"rawUrl"
]
}🟢get_doc(name, handle, version)
Fetch the raw stored content of a document. Defaults to your own handle and the latest version.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Document name."
},
"handle": {
"type": "string",
"description": "Owner handle. Defaults to the authenticated user."
},
"version": {
"type": "number",
"description": "Version number. Defaults to the latest."
}
},
"required": [
"name"
]
}Output Schema
{
"type": "object",
"properties": {
"handle": {
"type": "string"
},
"name": {
"type": "string"
},
"version": {
"type": "number"
},
"contentType": {
"type": "string"
},
"language": {
"type": [
"string",
"null"
]
},
"visibility": {
"type": "string"
},
"snippet": {
"type": "string"
},
"appUrl": {
"type": "string"
},
"rawUrl": {
"type": "string"
},
"deleted": {
"type": "boolean"
}
},
"required": [
"handle",
"name",
"version",
"appUrl",
"rawUrl"
]
}🟢search_docs(q)
Search your documents by name. Returns matches with their URLs and latest versions.
Input Schema
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Search query matched against doc names."
}
},
"required": [
"q"
]
}Output Schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"docs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"handle": {
"type": "string"
},
"name": {
"type": "string"
},
"latestVersion": {
"type": "number"
},
"appUrl": {
"type": "string"
}
},
"required": [
"handle",
"name",
"appUrl"
]
}
}
},
"required": [
"docs"
]
}Recommended Prompts
search_docssearch_docsget_docget_docsearch_docscreate_docCommunity
Evidence