{"id":32462277,"url":"https://github.com/appwrite/mcp-for-api","last_synced_at":"2026-02-05T10:12:43.246Z","repository":{"id":279475448,"uuid":"938939797","full_name":"appwrite/mcp-for-api","owner":"appwrite","description":"Appwrite’s MCP server. Operating your backend has never been easier.","archived":false,"fork":false,"pushed_at":"2025-10-11T09:59:59.000Z","size":1710,"stargazers_count":60,"open_issues_count":6,"forks_count":18,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-01-29T02:00:12.023Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://appwrite.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appwrite.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-02-25T18:29:38.000Z","updated_at":"2025-12-04T13:16:38.000Z","dependencies_parsed_at":"2025-02-25T19:34:44.947Z","dependency_job_id":"ee097bd9-4302-48e1-85d1-15deb2839691","html_url":"https://github.com/appwrite/mcp-for-api","commit_stats":null,"previous_names":["christyjacob4/mcp-server-appwrite","christyjacob4/mcp","appwrite/mcp","appwrite/mcp-for-api"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/appwrite/mcp-for-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appwrite%2Fmcp-for-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appwrite%2Fmcp-for-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appwrite%2Fmcp-for-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appwrite%2Fmcp-for-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appwrite","download_url":"https://codeload.github.com/appwrite/mcp-for-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appwrite%2Fmcp-for-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29119228,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T09:40:36.738Z","status":"ssl_error","status_checked_at":"2026-02-05T09:36:49.977Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-26T12:02:02.465Z","updated_at":"2026-02-05T10:12:43.240Z","avatar_url":"https://github.com/appwrite.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Appwrite MCP server\n\nmcp-name: io.github.appwrite/mcp-for-api\n\n[![Install MCP Server](https://cursor.com/deeplink/mcp-install-light.svg)](https://cursor.com/install-mcp?name=appwrite\u0026config=eyJjb21tYW5kIjoidXZ4IG1jcC1zZXJ2ZXItYXBwd3JpdGUgLS11c2VycyIsImVudiI6eyJBUFBXUklURV9BUElfS0VZIjoiPHlvdXItYXBpLWtleT4iLCJBUFBXUklURV9QUk9KRUNUX0lEIjoiPHlvdXItcHJvamVjdC1pZD4iLCJBUFBXUklURV9FTkRQT0lOVCI6Imh0dHBzOi8vPFJFR0lPTj4uY2xvdWQuYXBwd3JpdGUuaW8vdjEifX0%3D)\n\n## Overview\n\nA Model Context Protocol server for interacting with Appwrite's API. This server provides tools to manage databases, users, functions, teams, and more within your Appwrite project.\n\n## Quick Links\n- [Configuration](#configuration)\n- [Installation](#installation)\n- IDE Integration:\n  - [Claude Desktop](#usage-with-claude-desktop)\n  - [Cursor](#usage-with-cursor)\n  - [Windsurf Editor](#usage-with-windsurf-editor)\n  - [VS Code](#usage-with-vs-code)\n- [Local Development](#local-development)\n- [Debugging](#debugging)\n\n## Configuration\n\n\u003e Before launching the MCP server, you must setup an [Appwrite project](https://cloud.appwrite.io/) and create an API key with the necessary scopes enabled.\n\nCreate a `.env` file in your working directory and add the following:\n\n```env\nAPPWRITE_PROJECT_ID=your-project-id\nAPPWRITE_API_KEY=your-api-key\nAPPWRITE_ENDPOINT=https://\u003cREGION\u003e.cloud.appwrite.io/v1\n```\n\nThen, open your terminal and run the following command\n\n### Linux and MacOS\n\n```sh\nsource .env\n```\n\n### Windows\n\n#### Command Prompt\n\n```cmd\nfor /f \"tokens=1,2 delims==\" %A in (.env) do set %A=%B\n```\n\n#### PowerShell\n\n```powershell\nGet-Content .\\.env | ForEach-Object {\n  if ($_ -match '^(.*?)=(.*)$') {\n    [System.Environment]::SetEnvironmentVariable($matches[1], $matches[2], \"Process\")\n  }\n}\n```\n\n## Installation\n\n### Using uv (recommended)\nWhen using [`uv`](https://docs.astral.sh/uv/) no specific installation is needed. We will\nuse [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-appwrite*.\n\n```bash\nuvx mcp-server-appwrite [args]\n```\n\n### Using pip\n\n```bash\npip install mcp-server-appwrite\n```\nThen run the server using \n\n```bash\npython -m mcp_server_appwrite [args]\n```\n\n### Command-line arguments\n\nBoth the `uv` and `pip` setup processes require certain arguments to enable MCP tools for various Appwrite APIs.\n\n\u003e When an MCP tool is enabled, the tool's definition is passed to the LLM, using up tokens from the model's available context window. As a result, the effective context window is reduced.  \n\u003e  \n\u003e The default Appwrite MCP server ships with only the Databases tools (our most commonly used API) enabled to stay within these limits. Additional tools can be enabled by using the flags below.\n\n| Argument | Description |\n| --- | --- |\n| `--tablesdb` | Enables the TablesDB API |\n| `--users` | Enables the Users API |\n| `--teams` | Enables the Teams API |\n| `--storage` | Enables the Storage API |\n| `--functions` | Enables the Functions API |\n| `--messaging` | Enables the Messaging API |\n| `--locale` | Enables the Locale API |\n| `--avatars` | Enables the Avatars API |\n| `--sites` | Enables the Sites API |\n| `--all` | Enables all Appwrite APIs |\n| `--databases` | Enables the Legacy Databases API |\n\n## Usage with Claude Desktop\n\nIn the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on MacOS) and head to the **Developer** tab. Clicking on the **Edit Config** button will take you to the `claude_desktop_config.json` file, where you must add the following:\n\n```json\n{\n  \"mcpServers\": {\n    \"appwrite\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"mcp-server-appwrite\"\n      ],\n      \"env\": {\n        \"APPWRITE_PROJECT_ID\": \"\u003cYOUR_PROJECT_ID\u003e\",\n        \"APPWRITE_API_KEY\": \"\u003cYOUR_API_KEY\u003e\",\n        \"APPWRITE_ENDPOINT\": \"https://\u003cREGION\u003e.cloud.appwrite.io/v1\" // Optional\n      }\n    }\n  }\n}\n\n```\n\n\u003e Note: In case you see a `uvx ENOENT` error, ensure that you either add `uvx` to the `PATH` environment variable on your system or use the full path to your `uvx` installation in the config file.\n\nUpon successful configuration, you should be able to see the server in the list of available servers in Claude Desktop.\n\n![Claude Desktop Config](images/claude-desktop-integration.png)\n\n## Usage with [Cursor](https://www.cursor.com/)\n\nHead to Cursor `Settings \u003e MCP` and click on **Add new MCP server**. Choose the type as `Command` and add the command below to the **Command** field.\n\n- **MacOS**\n\n```bash\nenv APPWRITE_API_KEY=your-api-key env APPWRITE_PROJECT_ID=your-project-id uvx mcp-server-appwrite\n```\n\n- **Windows**\n\n```cmd\ncmd /c SET APPWRITE_PROJECT_ID=your-project-id \u0026\u0026 SET APPWRITE_API_KEY=your-api-key \u0026\u0026 uvx mcp-server-appwrite\n```\n\n![Cursor Settings](./images/cursor-integration.png)\n\n## Usage with [Windsurf Editor](https://codeium.com/windsurf)\n\nHead to Windsurf `Settings \u003e Cascade \u003e Model Context Protocol (MCP) Servers` and click on **View raw config**. Update the `mcp_config.json` file to include the following:\n\n```json\n{\n  \"mcpServers\": {\n    \"appwrite\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"mcp-server-appwrite\"\n      ],\n      \"env\": {\n        \"APPWRITE_PROJECT_ID\": \"\u003cYOUR_PROJECT_ID\u003e\",\n        \"APPWRITE_API_KEY\": \"\u003cYOUR_API_KEY\u003e\",\n        \"APPWRITE_ENDPOINT\": \"https://\u003cREGION\u003e.cloud.appwrite.io/v1\" // Optional\n      }\n    }\n  }\n}\n```\n\n![Windsurf Settings](./images/windsurf-integration.png)\n\n## Usage with [VS Code](https://code.visualstudio.com/)\n\n### Configuration\n\n1. **Update the MCP configuration file**: Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`) and run `MCP: Open User Configuration`. It should open the `mcp.json` file in your user settings.\n\n2. **Add the Appwrite MCP server configuration**: Add the following to the `mcp.json` file:\n\n```json\n{\n  \"servers\": {\n    \"appwrite\": {\n      \"command\": \"uvx\",\n      \"args\": [\"mcp-server-appwrite\", \"--users\"],\n      \"env\": {\n        \"APPWRITE_PROJECT_ID\": \"\u003cYOUR_PROJECT_ID\u003e\",\n        \"APPWRITE_API_KEY\": \"\u003cYOUR_API_KEY\u003e\",\n        \"APPWRITE_ENDPOINT\": \"https://\u003cREGION\u003e.cloud.appwrite.io/v1\"\n      }\n    }\n  }\n}\n```\n\n3. **Start the MCP server**: Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`) and run `MCP: List Servers`. In the dropdown, select `appwrite` and click on the **Start Server** button.\n\n4. **Use in Copilot Chat**: Open Copilot Chat and switch to **Agent Mode** to access the Appwrite tools.\n\n![VS Code Settings](./images/vs-code-integration.png)\n\n## Local Development\n\n### Clone the repository\n\n```bash\ngit clone https://github.com/appwrite/mcp.git\n```\n\n### Install `uv`\n\n- Linux or MacOS\n\n```bash\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\n\n- Windows (PowerShell)\n\n```powershell\npowershell -ExecutionPolicy ByPass -c \"irm https://astral.sh/uv/install.ps1 | iex\"\n```\n\n### Prepare virtual environment\n\nFirst, create a virtual environment.\n\n```bash\nuv venv\n```\n\nNext, activate the virtual environment.\n\n- Linux or MacOS\n\n```bash\nsource .venv/bin/activate\n```\n\n- Windows\n\n```powershell\n.venv\\Scripts\\activate\n```\n\n### Run the server\n\n```bash\nuv run -v --directory ./ mcp-server-appwrite\n```\n\n## Debugging\n\nYou can use the MCP inspector to debug the server. \n\n```bash\nnpx @modelcontextprotocol/inspector \\\n  uv \\\n  --directory . \\\n  run mcp-server-appwrite\n```\n\nMake sure your `.env` file is properly configured before running the inspector. You can then access the inspector at `http://localhost:5173`.\n\n## License\n\nThis MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappwrite%2Fmcp-for-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappwrite%2Fmcp-for-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappwrite%2Fmcp-for-api/lists"}