Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

mcp

MCP.Pizza Chef: appwrite

The Appwrite MCP server is a Model Context Protocol server designed to interact with Appwrite's API, enabling management of databases, users, functions, teams, and more within Appwrite projects. It simplifies backend operations by providing structured, real-time context and tools for developers to integrate Appwrite services into AI workflows and applications. The server supports configuration via environment variables and integrates with popular IDEs like Claude Desktop, Cursor, and Windsurf Editor for enhanced developer experience.

Use This MCP server To

Manage Appwrite databases via LLM-driven commands Automate user and team management in Appwrite projects Invoke Appwrite cloud functions through natural language requests Integrate Appwrite backend operations into AI-powered IDEs Debug and develop Appwrite projects with real-time context Configure and manage Appwrite API keys and endpoints programmatically

README

Appwrite MCP server

Overview

A 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.

Quick Links

Configuration

Before launching the MCP server, you must setup an Appwrite project and create an API key with the necessary scopes enabled.

Create a .env file in your working directory and add the following:

APPWRITE_PROJECT_ID=your-project-id
APPWRITE_API_KEY=your-api-key
APPWRITE_ENDPOINT=https://cloud.appwrite.io/v1

Then, open your terminal and run the following command

Linux and MacOS

source .env

Windows

Command Prompt
for /f "tokens=1,2 delims==" %A in (.env) do set %A=%B
PowerShell
Get-Content .\.env | ForEach-Object {
  if ($_ -match '^(.*?)=(.*)$') {
    [System.Environment]::SetEnvironmentVariable($matches[1], $matches[2], "Process")
  }
}

Installation

Using uv (recommended)

When using uv no specific installation is needed. We will use uvx to directly run mcp-server-appwrite.

uvx mcp-server-appwrite [args]

Using pip

pip install mcp-server-appwrite

Then run the server using

python -m mcp_server_appwrite [args]

Command-line arguments

Both the uv and pip setup processes require certain arguments to enable MCP tools for various Appwrite APIs.

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.

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.

Argument Description
--databases Enables the Databases API
--users Enables the Users API
--teams Enables the Teams API
--storage Enables the Storage API
--functions Enables the Functions API
--messaging Enables the Messaging API
--locale Enables the Locale API
--avatars Enables the Avatars API
--all Enables all Appwrite APIs

Usage with Claude Desktop

In 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:

{
  "mcpServers": {
    "appwrite": {
      "command": "uvx",
      "args": [
        "mcp-server-appwrite"
      ],
      "env": {
        "APPWRITE_PROJECT_ID": "your-project-id",
        "APPWRITE_API_KEY": "your-api-key",
        "APPWRITE_ENDPOINT": "https://cloud.appwrite.io/v1" // Optional
      }
    }
  }
}

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.

Upon successful configuration, you should be able to see the server in the list of available servers in Claude Desktop.

Claude Desktop Config

Usage with Cursor

Head to Cursor Settings > MCP and click on Add new MCP server. Choose the type as Command and add the command below to the Command field.

  • MacOS
env APPWRITE_API_KEY=your-api-key env APPWRITE_PROJECT_ID=your-project-id uvx mcp-server-appwrite
  • Windows
cmd /c SET APPWRITE_PROJECT_ID=your-project-id && SET APPWRITE_API_KEY=your-api-key && uvx mcp-server-appwrite

Cursor Settings

Usage with Windsurf Editor

Head to Windsurf Settings > Cascade > Model Context Protocol (MCP) Servers and click on View raw config. Update the mcp_config.json file to include the following:

{
  "mcpServers": {
    "appwrite": {
      "command": "uvx",
      "args": [
        "mcp-server-appwrite"
      ],
      "env": {
        "APPWRITE_PROJECT_ID": "your-project-id",
        "APPWRITE_API_KEY": "your-api-key",
        "APPWRITE_ENDPOINT": "https://cloud.appwrite.io/v1" // Optional
      }
    }
  }
}

Windsurf Settings

Local Development

Clone the repository

git clone https://github.com/appwrite/mcp.git

Install uv

  • Linux or MacOS
curl -LsSf https://astral.sh/uv/install.sh | sh
  • Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Prepare virtual environment

First, create a virtual environment.

uv venv

Next, activate the virtual environment.

  • Linux or MacOS
source .venv/bin/activate
  • Windows
.venv\Scripts\activate

Run the server

uv run -v --directory ./ mcp-server-appwrite

Debugging

You can use the MCP inspector to debug the server.

npx @modelcontextprotocol/inspector \
  uv \
  --directory . \
  run mcp-server-appwrite

Make sure your .env file is properly configured before running the inspector. You can then access the inspector at http://localhost:5173.

License

This 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.

mcp FAQ

How do I configure the Appwrite MCP server?
Create an Appwrite project, generate an API key with required scopes, then set APPWRITE_PROJECT_ID, APPWRITE_API_KEY, and APPWRITE_ENDPOINT in a .env file before running the server.
Can I use the Appwrite MCP server with different IDEs?
Yes, it integrates with IDEs like Claude Desktop, Cursor, and Windsurf Editor for seamless development workflows.
What Appwrite services can this MCP server manage?
It supports managing databases, users, functions, teams, and other Appwrite project resources.
Is local development supported for the Appwrite MCP server?
Yes, the server supports local development and debugging to streamline your workflow.
How secure is the connection between the MCP server and Appwrite?
Security depends on using API keys with appropriate scopes and HTTPS endpoints to protect data in transit.
Can I extend the Appwrite MCP server functionality?
Yes, you can customize and extend it by modifying the server code or integrating additional Appwrite APIs.
What environment variables are required to run the server?
APPWRITE_PROJECT_ID, APPWRITE_API_KEY, and APPWRITE_ENDPOINT must be set in your environment before launching.