Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BEE_API_URLNoThe URL of the Bee API endpoint. If omitted, the default Swarm Gateway will be used: https://api.gateway.ethswarm.org. Example: http://localhost:1633.https://api.gateway.ethswarm.org
BEE_FEED_PKNoThe private key of the Swarm Feed to use. If not provided, Swarm Feed functionality will be disabled.
AUTO_ASSIGN_STAMPNoWhether to automatically assign a postage stamp if none is provided. Default value is: true. Set to false to disable automatic stamp assignment.true
DEFERRED_UPLOAD_SIZE_THRESHOLD_MBNoSize threshold in megabytes for deferred uploads. Files larger than this size will be uploaded asynchronously. Default value is: 5 (MB).5

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tasks
{
  "list": {},
  "requests": {
    "tools": {
      "call": {}
    }
  }
}
tools
{}
logging
{}
prompts
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
upload_dataA

Upload arbitrary text data to Swarm as an immutable, content-addressed blob. Returns a Swarm reference hash that permanently identifies the uploaded bytes. Use this tool whenever the user asks to "upload data", "upload text", "store data", or similar, without mentioning a feed, topic, or memory. This is NOT a feed operation — if the user wants mutable, topic-indexed storage (i.e. mentions a feed, topic, or memory name), use update_feed instead. Only data is required. redundancyLevel and postageBatchId are optional — use their defaults and do NOT ask the user for them unless the user explicitly brings them up.

update_feedA

Update a mutable, topic-indexed Swarm feed with new data. Requires a memoryTopic supplied by the user. Use this tool ONLY when the user explicitly mentions a feed, topic, or memory name. If the user asks to upload data without mentioning a feed/topic/memory, use upload_data instead — do NOT prompt the user for a topic to route them here. postageBatchId is optional — do not ask the user for it unless they explicitly bring it up.

download_dataA

Download raw text data from a Swarm reference and return it as a string. Use this tool ONLY when the user explicitly asks for the text content, string content, or raw data behind a reference, or when the reference is known to have been uploaded via upload_data. If the user mentions "file", "files", "folder", or asks to "download" without specifying that they want the raw text content, use download_files instead. When in doubt about the reference type, prefer download_files — it handles both single files and folder manifests and can be saved to disk.

read_feedB

Retrieve the latest data from the feed of a given topic.

upload_fileA

Upload a SINGLE file to Swarm. To upload a local file, pass its filesystem path as data — the server reads the file itself (stdio mode only). Alternatively, pass the raw text content directly as data. This tool handles one file only — if the path refers to a directory, or the user mentions "folder", "directory", "the contents of", or otherwise asks to upload more than one file, use upload_folder instead and pass the path as its folderPath. Never ask the user for the file content when a path is given, and never pass a Swarm reference — references are the OUTPUT of this tool, not an input. Small files upload synchronously and return a reference. Large files (over the server's deferred-upload threshold) upload in the background and immediately return the final reference (computed locally) plus a tagId for query_upload_progress; the content becomes retrievable at the reference once the upload completes. With redundancyLevel > 0 only the tagId is returned immediately. Optional options (ignore if they are not requested): redundancyLevel: redundancy level for fault tolerance. Optional, value is 0 if not requested. postageBatchId: The postage stamp batch ID which will be used to perform the upload, if it is provided.

upload_folderA

Upload a folder (directory). Use this tool whenever the user mentions "folder", "directory", "the contents of", or asks to upload a path that refers to a directory rather than one file — including phrasings like "upload to Swarm folder ", where is the folder to upload, not a destination. Prefer this tool over upload_file when it is unclear whether a given path is a file or a directory: upload_file cannot upload a directory. folderPath is REQUIRED — pass the folder path from the user's message verbatim. Small folders upload synchronously and return the manifest reference. Large folders (over the server's deferred-upload threshold) upload in the background and return only a tagId; unlike upload_file, a folder's reference cannot be computed up front, so retrieve it by polling query_upload_progress with that tagId until processedPercentage is 100. Optional options (ignore if they are not requested): redundancyLevel: redundancy level for fault tolerance. Optional, value is 0 if not requested. postageBatchId: The postage stamp batch ID which will be used to perform the upload, if it is provided.

download_filesA

Download a file or folder from a Swarm reference. Handles both single files and folder manifests, saves them to disk (in stdio mode) or returns the file list. Use this tool whenever the user asks to "download" from a reference and mentions "file", "files", "folder", or does not specify the data type. Prefer this tool over download_data unless the user explicitly asks for the raw text/string content behind a reference. This is the safe default for downloads when the reference type is unknown.

Prompts

Interactive templates invoked by user choice

NameDescription
upload_data_promptUpload arbitrary text data to Swarm as an immutable, content-addressed blob. Returns a Swarm reference hash that permanently identifies the uploaded bytes. Use this tool whenever the user asks to "upload data", "upload text", "store data", or similar, without mentioning a feed, topic, or memory. This is NOT a feed operation — if the user wants mutable, topic-indexed storage (i.e. mentions a feed, topic, or memory name), use `update_feed` instead. Only `data` is required. `redundancyLevel` and `postageBatchId` are optional — use their defaults and do NOT ask the user for them unless the user explicitly brings them up.
update_feed_promptUpdate a mutable, topic-indexed Swarm feed with new data. Requires a `memoryTopic` supplied by the user. Use this tool ONLY when the user explicitly mentions a feed, topic, or memory name. If the user asks to upload data without mentioning a feed/topic/memory, use `upload_data` instead — do NOT prompt the user for a topic to route them here. `postageBatchId` is optional — do not ask the user for it unless they explicitly bring it up.
download_data_promptDownload raw text data from a Swarm reference and return it as a string. Use this tool ONLY when the user explicitly asks for the text content, string content, or raw data behind a reference, or when the reference is known to have been uploaded via `upload_data`. If the user mentions "file", "files", "folder", or asks to "download" without specifying that they want the raw text content, use `download_files` instead. When in doubt about the reference type, prefer `download_files` — it handles both single files and folder manifests and can be saved to disk.
read_feed_promptRetrieve the latest data from the feed of a given topic.
upload_file_promptUpload a SINGLE file to Swarm. To upload a local file, pass its filesystem path as `data` — the server reads the file itself (stdio mode only). Alternatively, pass the raw text content directly as `data`. This tool handles one file only — if the path refers to a directory, or the user mentions "folder", "directory", "the contents of", or otherwise asks to upload more than one file, use `upload_folder` instead and pass the path as its `folderPath`. Never ask the user for the file content when a path is given, and never pass a Swarm reference — references are the OUTPUT of this tool, not an input. Small files upload synchronously and return a reference. Large files (over the server's deferred-upload threshold) upload in the background and immediately return the final reference (computed locally) plus a tagId for query_upload_progress; the content becomes retrievable at the reference once the upload completes. With redundancyLevel > 0 only the tagId is returned immediately. Optional options (ignore if they are not requested): redundancyLevel: redundancy level for fault tolerance. Optional, value is 0 if not requested. postageBatchId: The postage stamp batch ID which will be used to perform the upload, if it is provided.
upload_folder_promptUpload a folder (directory). Use this tool whenever the user mentions "folder", "directory", "the contents of", or asks to upload a path that refers to a directory rather than one file — including phrasings like "upload to Swarm folder <path>", where <path> is the folder to upload, not a destination. Prefer this tool over `upload_file` when it is unclear whether a given path is a file or a directory: `upload_file` cannot upload a directory. `folderPath` is REQUIRED — pass the folder path from the user's message verbatim. Small folders upload synchronously and return the manifest `reference`. Large folders (over the server's deferred-upload threshold) upload in the background and return only a `tagId`; unlike `upload_file`, a folder's reference cannot be computed up front, so retrieve it by polling `query_upload_progress` with that tagId until processedPercentage is 100. Optional options (ignore if they are not requested): redundancyLevel: redundancy level for fault tolerance. Optional, value is 0 if not requested. postageBatchId: The postage stamp batch ID which will be used to perform the upload, if it is provided.
download_files_promptDownload a file or folder from a Swarm reference. Handles both single files and folder manifests, saves them to disk (in stdio mode) or returns the file list. Use this tool whenever the user asks to "download" from a reference and mentions "file", "files", "folder", or does not specify the data type. Prefer this tool over `download_data` unless the user explicitly asks for the raw text/string content behind a reference. This is the safe default for downloads when the reference type is unknown.
list_postage_stamps_promptList the available postage stamps. Optional options (ignore if they are not requested): leastUsed, limit, minUsage(%), maxUsage(%).
get_postage_stamp_promptGet a specific postage stamp based on postageBatchId.
create_postage_stamp_promptBuy a postage stamp based on size and duration. Buying a stamp spends BZZ and is not refundable. Both `size` and `duration` MUST be explicitly stated by the user. Do not infer, assume defaults, or synthesize plausible values for either. If the user has not stated a size, or has not stated a duration, STOP and ask the user for the missing value before calling this tool.
extend_postage_stamp_promptIncrease the duration (relative to current duration) and/or size of an existing postage stamp. Extending a stamp spends BZZ and is not refundable. Both `size` and `duration` are optional, but at least one must be provided. Only pass values the user has explicitly stated — do not infer, assume defaults, or synthesize plausible values. If the user's request is ambiguous about which dimension to extend or by how much, STOP and ask the user before calling this tool.
query_upload_progress_promptQuery upload progress for a specific upload session identified with the returned Tag ID. Also returns the final Swarm `reference` of the upload — use this to obtain the reference for a deferred upload (notably `upload_folder`, whose reference cannot be computed up front) once processedPercentage reaches 100.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.8/5.0

Scored across 7 tools

Disambiguation3/5

The upload family is mostly well-separated, but `upload_file` accepts raw text content in addition to paths, making it overlap with `upload_data` for text uploads. The download pair is better distinguished by explicit routing rules, though it still relies on subtle user phrasing.

Naming Consistency4/5

All tools follow a readable `verb_noun` snake_case pattern (`upload_folder`, `read_feed`, etc.). Minor inconsistency: `upload_file` is singular while `download_files` is plural, and `upload_data`/`upload_file` are semantically close despite different nouns.

Tool Count5/5

Seven tools is a reasonable scope for a storage-plus-feed MCP server. Each tool has a clear responsibility in the workflow, even if `upload_data` partially overlaps with `upload_file`.

Completeness2/5

The set covers upload/download and feed read/update, but both upload tools reference `query_upload_progress` for deferred uploads, and that tool is absent from the server. Large uploads therefore dead-end with only a tagId, which is a significant functional gap.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive