Skip to main content
Glama
OraDavis

couchdrop-mcp

by OraDavis

couchdrop-mcp

Local stdio MCP server for Couchdrop. It lets MCP clients list Couchdrop files, inspect file metadata, download and upload files, list users and groups, and read folder permissions.

Requirements

  • Node.js 22 or newer

  • A Couchdrop API token

Related MCP server: MCP Local Filesystem Server

Couchdrop Token

Create or retrieve an API token from your Couchdrop account, then provide it to the server as COUCHDROP_API_TOKEN. Keep the token in your local MCP client configuration or shell environment. Do not commit it to source control.

Use a token with the narrowest access that fits your workflow.

Install And Configure

You can run the package with npx; no global install is required.

Claude Desktop

Add the server to your Claude Desktop MCP configuration, then restart Claude Desktop.

{
  "mcpServers": {
    "couchdrop": {
      "command": "npx",
      "args": ["-y", "couchdrop-mcp"],
      "env": {
        "COUCHDROP_API_TOKEN": "your-couchdrop-api-token"
      }
    }
  }
}

Codex

Codex reads MCP servers from ~/.codex/config.toml or a trusted project .codex/config.toml.

[mcp_servers.couchdrop]
command = "npx"
args = ["-y", "couchdrop-mcp"]

[mcp_servers.couchdrop.env]
COUCHDROP_API_TOKEN = "your-couchdrop-api-token"

Generic MCP Client

Configure the client to start a stdio server with this command:

{
  "command": "npx",
  "args": ["-y", "couchdrop-mcp"],
  "env": {
    "COUCHDROP_API_TOKEN": "your-couchdrop-api-token"
  }
}

If your client prefers an installed binary, install the package and run couchdrop-mcp as the stdio command.

Environment Variables

Variable

Required

Default

Description

COUCHDROP_API_TOKEN

Yes

None

Couchdrop API token sent to Couchdrop API and FileIO requests.

COUCHDROP_API_BASE

No

https://api.couchdrop.io

Base URL for Couchdrop management API requests.

COUCHDROP_FILEIO_BASE

No

https://fileio.couchdrop.io

Base URL for Couchdrop FileIO requests.

COUCHDROP_MAX_INLINE_BYTES

No

65536

Maximum bytes returned inline for downloads without outputPath.

Tools

All Couchdrop paths must start with /. Path segments must not contain ...

Tool

Arguments

Description

couchdrop_list_files

path optional, default /

Lists files and folders at a Couchdrop path.

couchdrop_get_file_info

path required

Gets metadata for a Couchdrop file or folder.

couchdrop_download_file

path required, outputPath optional

Downloads a file. Without outputPath, returns small UTF-8 text inline. With outputPath, saves the file locally.

couchdrop_upload_file

localPath required, destinationPath required

Uploads a local file to a Couchdrop path.

couchdrop_list_users

None

Lists Couchdrop users visible to the token.

couchdrop_list_groups

None

Lists Couchdrop groups visible to the token.

couchdrop_get_folder_permissions

path required

Gets permissions for a Couchdrop folder path.

Safety Notes

  • Tokens stay local to your MCP client configuration or environment. This server does not persist tokens.

  • v0.1 exposes no delete, move, chmod, user mutation, or group mutation tools.

  • couchdrop_upload_file writes to the requested destinationPath; check the path before calling it.

  • Use outputPath for large or binary downloads. Inline downloads are intended for small UTF-8 text files.

  • In v0.1, uploads and downloads saved with outputPath are buffered in memory before being sent or written.

Local Development

npm install
npm run typecheck
npm test
npm run build
npm run dev

To inspect the package contents before publishing:

npm run build
npm pack --dry-run

Contributing

Contributions are welcome. Keep changes small, add or update tests for behavior changes, and run the local verification commands before opening a pull request.

Do not commit real Couchdrop tokens, generated secrets, or private customer paths in tests or documentation.

License

MIT

Available Tools

7 tools
couchdrop_download_fileD
ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
outputPathNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

couchdrop_get_file_infoD
ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

couchdrop_get_folder_permissionsD
ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

couchdrop_list_filesD
ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo/

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

couchdrop_list_groupsD
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

couchdrop_list_usersD
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

couchdrop_upload_fileD
ParametersJSON Schema
NameRequiredDescriptionDefault
localPathYes
destinationPathYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

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. Dates show when Glama detected each change.

  1. 7 tool updatesv0.1.0
    • First observedcouchdrop_download_file
    • First observedcouchdrop_get_file_info
    • First observedcouchdrop_get_folder_permissions
    • First observedcouchdrop_list_files
    • First observedcouchdrop_list_groups
    • First observedcouchdrop_list_users
    • First observedcouchdrop_upload_file

TDQS

C2.1/5.0
Disambiguation5/5

Each tool targets a distinct file or administrative operation (download, get info, list, upload, permissions, groups, users) with no overlap in purpose, making them easily distinguishable even without descriptions.

Naming Consistency5/5

All tools follow the consistent 'couchdrop_verb_noun' pattern (e.g., couchdrop_download_file, couchdrop_list_users), with no mixing of conventions or ambiguous verbs.

Tool Count5/5

Seven tools is well-scoped for a file management and permissions service; not too few to feel thin nor too many to overwhelm, covering core operations without redundancy.

Completeness3/5

Covers key file operations (upload, download, list, info) and some admin actions (list users/groups, get permissions), but notably lacks file deletion, file update, and any user/group creation or modification, creating significant gaps for full lifecycle management.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/OraDavis/couchdrop-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server