{
  "markdown": "# Dropbox MCP Server\n\nA Model Context Protocol (MCP) server that provides read access to Dropbox files with advanced search and content extraction capabilities.\n\n## Features\n\n- **File Listing**: Browse files and folders in your Dropbox\n- **File Reading**: Read content from various file types (PDF, DOCX, TXT, code files)\n- **Search**: Search for files by name across your Dropbox\n- **Content Search**: Search for specific text within files\n- **File Info**: Get detailed metadata about files\n- **Smart Text Extraction**: Automatically extracts text from PDFs and DOCX files\n\n## Supported File Types\n\n- **PDF** - Text extraction with PyPDF2\n- **DOCX/DOC** - Document text extraction\n- **Text files** - TXT, MD, PY, JS, HTML, CSS, JSON, CSV\n\n## Installation\n\n### Prerequisites\n\n- Python 3.10 or higher\n- A Dropbox account and access token\n\n### Get a Dropbox Access Token\n\n1. Go to the [Dropbox App Console](https://www.dropbox.com/developers/apps)\n2. Click \"Create app\"\n3. Choose \"Scoped access\" and \"Full Dropbox\" access\n4. Name your app\n5. Go to the \"Permissions\" tab and enable:\n   - `files.metadata.read`\n   - `files.content.read`\n6. Go to the \"Settings\" tab and generate an access token\n\n### Install Dependencies\n\n```bash\npip install -e .\n```\n\nOr install manually:\n\n```bash\npip install mcp dropbox pydantic PyPDF2 python-docx\n```\n\n## Configuration\n\nSet your Dropbox access token as an environment variable:\n\n```bash\nexport DROPBOX_ACCESS_TOKEN=\"your_access_token_here\"\n```\n\n### For Claude Desktop\n\nAdd to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"dropbox\": {\n      \"command\": \"python\",\n      \"args\": [\"/path/to/your/dropbox_server.py\"],\n      \"env\": {\n        \"DROPBOX_ACCESS_TOKEN\": \"your_access_token_here\"\n      }\n    }\n  }\n}\n```\n\n### For Smithery\n\nThe server will automatically use the `DROPBOX_ACCESS_TOKEN` environment variable when deployed.\n\n## Available Tools\n\n### `list_files`\nList files and folders in a Dropbox directory.\n\n**Parameters:**\n- `folder_path` (optional): Path to folder (empty for root)\n- `max_files` (optional): Maximum items to return (default: 20)\n\n### `search_files`\nSearch for files by name.\n\n**Parameters:**\n- `query`: Search query\n- `file_types` (optional): File types to search (\"all\", \"pdf\", \"docx\", \"txt\", or comma-separated)\n- `max_results` (optional): Maximum results (default: 10)\n\n### `read_file`\nRead the full content of a file.\n\n**Parameters:**\n- `file_path`: Full path to the file\n- `max_length` (optional): Maximum characters to return (default: 5000, 0 for unlimited)\n\n### `get_file_info`\nGet detailed metadata about a file.\n\n**Parameters:**\n- `file_path`: Full path to the file\n\n### `search_file_content`\nSearch for text within specific files.\n\n**Parameters:**\n- `file_paths`: List of file paths to search\n- `query`: Text to search for\n- `context_chars` (optional): Characters of context around matches (default: 100)\n\n## Usage Examples\n\n### List files in root directory\n```python\nlist_files()\n```\n\n### Search for PDF files\n```python\nsearch_files(query=\"invoice\", file_types=\"pdf\", max_results=5)\n```\n\n### Read a specific file\n```python\nread_file(file_path=\"/documents/report.pdf\")\n```\n\n### Search within files\n```python\nsearch_file_content(\n    file_paths=[\"/documents/file1.txt\", \"/documents/file2.pdf\"],\n    query=\"important keyword\"\n)\n```\n\n## Development\n\n### Running Locally\n\n```bash\npython dropbox_server.py\n```\n\n### Testing\n\nMake sure your `DROPBOX_ACCESS_TOKEN` is set, then run the server and test with an MCP client.\n\n## Security Notes\n\n- Keep your Dropbox access token secure and never commit it to version control\n- Use environment variables or secure secret management\n- The server only provides read access to Dropbox files\n- Consider using app-scoped tokens with minimal permissions\n\n## License\n\nMIT License - feel free to use and modify as needed.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## Support\n\nFor issues and questions, please open an issue on GitHub.\n",
  "bytes": 3997,
  "sha": "a7350667e70759f1a57c320d3b4265c940711eff7f9288186616a5ec38dec933",
  "repo_slug": "cindyloo/dropbox-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_ai_smithery_cindyloo_dropbox_mcp_server_b16b6da8/readme"
}