bucket-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@bucket-mcpfind the pasta recipe from that reel I saved last week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
bucket-mcp
MCP server for Bucket — connect Claude to your Bucket so it can search, read, and download everything you've saved: Instagram reels, TikToks, tweets, YouTube videos, links, and notes.
you: "grab that pasta reel I saved last week and pull the recipe out of the transcript"
claude: searches your bucket → reads the transcript → downloads the video into your projectSetup
1. Get an API key — log in at bucketai.net → Settings → Claude Connector → Generate API Key. Copy it (it's shown once).
2. Add to Claude Code:
claude mcp add bucket -e BUCKET_API_KEY=bk_your_key_here -- npx -y bucket-mcpOr Claude Desktop — add to claude_desktop_config.json:
{
"mcpServers": {
"bucket": {
"command": "npx",
"args": ["-y", "bucket-mcp"],
"env": { "BUCKET_API_KEY": "bk_your_key_here" }
}
}
}Related MCP server: mcp-server-claude
Tools
Tool | What it does |
| Semantic search over everything you've saved ("that pasta place video") |
| Browse recent saves, filterable by category ( |
| Full detail: complete transcript, summary, OCR text, visual description, locations |
| Download a saved reel/TikTok/tweet video as an MP4 into your working directory |
| Save a URL into your Bucket from Claude |
Configuration
Env var | Required | Default |
| yes | — |
| no | Bucket production API |
Development
npm install
npm run build
BUCKET_API_KEY=bk_... node dist/index.js # speaks MCP over stdioLicense
MIT
Available Tools
5 toolsdownload_videoA
Download a saved item's video (reel/TikTok/tweet video) as an MP4 file written to the local filesystem. Returns the absolute path of the written file.
| Name | Required | Description | Default |
|---|---|---|---|
| message_id | Yes | The item's id (from search_bucket or list_recent) | |
| output_path | No | Where to write the file (default ./bucket_<id>.mp4 in the current directory) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosure. It transparently states the side effect (writing to local filesystem) and the return type (absolute path). It does not mention overwrite behavior or error handling, but for a simple download tool the key behaviors are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, and contains no filler. Every word contributes to understanding the tool's purpose, output, and side effect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter tool with no output schema, the description covers the purpose, the operation, the side effect, and the return value. The schema provides additional parameter details, and together they give a complete picture. No critical information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: both message_id and output_path have detailed descriptions already in the input schema. The tool description adds only general context about the file type (MP4) and return path, not additional parameter-level semantics. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Download'), the resource ('a saved item's video'), the output format ('as an MP4 file'), and the return value ('absolute path'). It distinguishes from siblings by focusing on video download and filesystem output, which is unique among the listed tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when you need a saved item's video as a local MP4 file. It provides clear context but does not explicitly name alternatives or exclusions. The schema for message_id further signals that it works with items from search_bucket or list_recent, complementing the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_itemA
Full detail for one saved item: complete transcript, summary, OCR text, visual description, locations, and original URL.
| Name | Required | Description | Default |
|---|---|---|---|
| message_id | Yes | The item's id (from search_bucket or list_recent) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the return content but does not explicitly state that the operation is read-only, how errors are handled, or any auth/rate-limit constraints. For a simple retrieval tool, it is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the core purpose ('Full detail for one saved item') and efficiently lists the output fields with no redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 parameter, no output schema), the description adequately covers what the tool does and what it returns. It could be improved by explicitly guiding when to use it, but it is mostly complete for an agent to recognize its purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the only parameter (message_id) with a clear description. The tool description adds context about why the id is used (to get full detail) but does not add new semantic details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves full detail for one saved item, listing specific fields (transcript, summary, OCR text, visual description, locations, URL). This distinguishes it from siblings like search_bucket and list_recent which are for finding items, and download_video/save_to_bucket for other operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you need complete details for a single item, but it does not explicitly state when to use versus alternatives. The schema parameter description mentions 'from search_bucket or list_recent' but that is outside the tool description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_recentA
List recently saved Bucket items, optionally filtered by category (e.g. instagram, tiktok, twitter, youtube, recipes, fitness…).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max items (default 20) | |
| category | No | Single category filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states a read-only 'List' operation and the category filter, but does not explicitly mention that it doesn't modify data, how items are ordered (beyond 'recently'), or any default limit behavior (though the schema covers the limit default). This is adequate but lacks some behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and resource, then adds the optional filter. No filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter list tool, the description and schema together provide sufficient information for an agent to select and invoke the tool. The only gap is that there is no output schema, and the description doesn't specify the return structure, but it does clearly say what items are listed, so this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already has 100% coverage for both parameters (limit with default and max/min; category as single filter). The description adds only example categories, which is helpful but not critical. Since the schema provides full parameter semantics, the description doesn't need to add much, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a clear resource ('recently saved Bucket items') and includes an optional category filter with examples. It distinguishes itself from siblings like search_bucket, get_item, and download_video by focusing on list/recent behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: to list recently saved items, optionally filtering by category. It doesn't explicitly name alternatives or state when not to use it, but the context is clear enough for an agent to choose between list_recent and search_bucket or get_item.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_to_bucketA
Save a URL (reel, TikTok, tweet, article…) into the user's Bucket. Bucket extracts, summarizes, and categorizes it in the background.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL to save |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that Bucket 'extracts, summarizes, and categorizes it in the background,' which is useful behavioral context. However, it does not mention mutation, potential side effects, authentication needs, or error conditions, leaving gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the primary action, and contains no filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema, the description covers the core action and background processing adequately. It lacks an explicit mention of return value or confirmation, but given the low complexity, this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage with a generic description ('The URL to save'), and the tool description adds meaning by listing accepted URL types ('reel, TikTok, tweet, article…'), clarifying the expected format and scope beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Save') and resource ('the user's Bucket'), and enumerates URL types ('reel, TikTok, tweet, article…'), clearly distinguishing it from sibling tools like search_bucket or list_recent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (save a URL into the Bucket) but does not explicitly state when to use this tool versus alternatives or provide any exclusions. Sibling tools exist but are not referenced, so guidance remains implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_bucketA
Semantic search over everything saved in the user's Bucket (reels, TikToks, tweets, links, notes). Returns matches with summaries; use get_item for full detail.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 10) | |
| query | Yes | Natural-language search query, e.g. 'that pasta recipe reel' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the transparency burden. It discloses that search is semantic, covers all saved content types, returns summaries, and that get_item is needed for full detail. It does not mention pagination, ordering, or failure modes, but includes enough behavioral context for a basic understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first states what the tool does, the second states the return behavior and points to get_item. No wasted words, information is front-loaded and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given moderate complexity (2 params, no output schema), the description is reasonably complete. It defines the search scope, result nature (summaries), and next step for full detail. Minor gaps like default ordering or explicit limit behavior exist but are not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both query and limit are already explained in the schema with examples. The description adds an example query in the text but does not provide additional semantic value beyond what the schema offers. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Semantic search') and a specific resource ('everything saved in the user's Bucket'), listing content types. It distinguishes this tool from siblings like list_recent, get_item, and download_video by focusing on search across all saved content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool: when you need semantic search over saved items. It explicitly tells the user to use get_item for full detail after receiving summaries, which is a useful pointer to an alternative. However, it does not explicitly mention when NOT to use it versus list_recent or other siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v0.1.0- First observed
download_video - First observed
get_item - First observed
list_recent - First observed
save_to_bucket - First observed
search_bucket
TDQS
Scored across 5 tools
Each tool serves a distinct purpose: search, list recent, get detail, download video, and save. There is no overlap in actions or resources, making it easy for an agent to select the correct tool.
Most tools follow a clear verb_noun pattern (search_bucket, get_item, download_video, save_to_bucket), but 'list_recent' omits the noun and 'save_to_bucket' includes a preposition, creating a minor inconsistency. Overall, the style is still predictable and readable.
Five tools is well-scoped for a content saving and retrieval service. Each tool covers a distinct operation without unnecessary redundancy, and the count falls comfortably within the ideal range.
The set covers the main workflow (save, search, list, get detail, download) but lacks a delete operation, which is a fundamental part of managing saved content. This is a notable gap that could force agents to leave items in the bucket indefinitely.
Maintenance
Related MCP Connectors
- MysocialOAuthio.mysocial
Social media MCP server: your Instagram, TikTok, YouTube, LinkedIn and Threads history for your AI.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
- mcpOAuthai.butlerbrain
Persistent memory for AI assistants. Save once; recall from Claude, ChatGPT, or any MCP client.
- TaprootOAuthcom.taproothq
Persistent memory layer for AI tools. Save and recall notes across Claude and other MCP clients.
Related MCP Servers
- AlicenseAqualityDmaintenanceA Model Context Protocol (MCP) server that enables Claude or other LLMs to fetch content from URLs, supporting HTML, JSON, text, and images with configurable request parameters.33MIT
- AlicenseNot gradedqualityDmaintenanceMCP Memory Server for Claude Code that provides persistent context across sessions using semantic search (RAG).Apache 2.0
- AlicenseNot gradedqualityDmaintenanceAn MCP server for storing and retrieving thoughts, notes, and ideas with semantic vector search, enabling integration with Claude Desktop and other MCP clients.MIT
- FlicenseAqualityBmaintenancePersistent knowledge-base MCP server. Semantic search with source citations over saved YouTube videos, podcasts, articles and PDFs — one endpoint for every MCP-capable AI client.28-