DM

dropbox/mcp-server-dash

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

10 stars 10 forks 质量 75 趋势 22Apache-2.0

Dropbox Dash MCP Server

概览

An MCP server that exposes Dropbox Dash search and file metadata via STDIO using the Python MCP server library (fastmcp). Authenticate with Dropbox, then search across all company content and fetch detailed file metadata and content. - dash_get_auth_url - Summary: Start Dropbox OAuth; returns the authorization URL. - Args: none - Returns (text): A short instruction message followed by the URL. - Notes: Use when not yet authenticated or when a token has expired. After approval in the browser, call dash_authenticate with the one-time code. Tokens are stored securely in your system keyring, so this is typically a one-time setup. - dash_authenticate - Summary: Complete OAuth using the one-time authorization code. - Args: - auth_code (string, required) - Returns (text): Account display name and email on success; a human-readable error on failure. - Notes: Persists a token for subsequent tool calls. Typically only needed once until the token expires or is revoked.

README

以下为原文 README 节选,完整内容请查看原文。

Dropbox Dash MCP Server

An MCP server that exposes Dropbox Dash search and file metadata via STDIO using the Python MCP server library (fastmcp). Authenticate with Dropbox, then search across all company content and fetch detailed file metadata and content.

Tools Implemented

  • dash_get_auth_url

    • Summary: Start Dropbox OAuth; returns the authorization URL.
    • Args: none
    • Returns (text): A short instruction message followed by the URL.
    • Notes: Use when not yet authenticated or when a token has expired. After approval in the browser, call dash_authenticate with the one-time code. Tokens are stored securely in your system keyring, so this is typically a one-time setup.
  • dash_authenticate

    • Summary: Complete OAuth using the one-time authorization code.
    • Args:
      • auth_code (string, required)
    • Returns (text): Account display name and email on success; a human-readable error on failure.
    • Notes: Persists a token for subsequent tool calls. Typically only needed once until the token expires or is revoked.
  • dash_company_search

    • Summary: Search company content indexed by Dropbox Dash.
    • Args:
      • query (string, required) — search text
      • file_type (string or null, optional) — one of: document, image, video, audio, pdf, presentation, spreadsheet; or null for no filter. Default: null. The value document is also treated as no filter.
      • connector (string or null, optional) — filter by connector source. Common connectors include confluence, dropbox, github, gmail, gong, google_calendar, google_drive, jira, microsoft_365, microsoft_teams, slack, workday, zoom, among others. Default: null for no connector filter.
      • start_time (string or null, optional) — filter results modified after this datetime (ISO 8601 format, e.g., 2025-10-30T16:24:12.071Z). Default: null for no start time filter.
      • end_time (string or null, optional) — filter results modified before this datetime (ISO 8601 format, e.g., 2025-10-31T16:24:12.071Z). Default: null for no end time filter.
      • max_results (integer, optional) — default 20, range 1..100
    • Returns (text): A formatted list of results. Each result includes labeled fields such as UUID:, Type:, URL:, Preview:, Description:, File Type:, MIME Type:, Source:, Creator:, Last Modified By:, Updated:, Source Updated:, Relevance:, Source ID:. Results are separated by a divider line.
    • Errors: Human-readable messages for invalid parameters or missing authentication.
  • dash_get_file_details

    • Summary: Fetch detailed metadata (and optional content snippet) for a result UUID.
    • Args:
      • uuid (string, required) — UUID from search results
在 GitHub 查看完整 README

安装

npx @modelcontextprotocol/inspector uv run src/mcp_server_dash.py
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "Dropbox Dash Search": { "command": "uv", "args": [ "--directory", "/path/to/mcp-server-dash/", "run", "src/mcp_server_dash.py" ], "env": { "APP_KEY": "your_dropbox_app_key" } } } }