Appwrite MCP Server
Enables interaction with Appwrite's backend services through natural language. Provides tools to manage databases, users, functions, teams, storage, and other Appwrite project resources via API integration.
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
- Installation
- IDE Integration:
- Local Development
- Debugging
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://<REGION>.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 |
--sites |
Enables the Sites 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://<REGION>.cloud.appwrite.io/v1" // Optional
}
}
}
}
Note: In case you see a
uvx ENOENTerror, ensure that you either adduvxto thePATHenvironment variable on your system or use the full path to youruvxinstallation in the config file.
Upon successful configuration, you should be able to see the server in the list of available servers in Claude Desktop.

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

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://<REGION>.cloud.appwrite.io/v1" // Optional
}
}
}
}

Usage with VS Code
Configuration
-
Update the MCP configuration file: Open the Command Palette (
Ctrl+Shift+PorCmd+Shift+P) and runMCP: Open User Configuration. It should open themcp.jsonfile in your user settings. -
Add the Appwrite MCP server configuration: Add the following to the
mcp.jsonfile:
{
"servers": {
"appwrite": {
"command": "uvx",
"args": ["mcp-server-appwrite", "--users"],
"env": {
"APPWRITE_PROJECT_ID": "<YOUR_PROJECT_ID>",
"APPWRITE_API_KEY": "<YOUR_API_KEY>",
"APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"
}
}
}
}
-
Start the MCP server: Open the Command Palette (
Ctrl+Shift+PorCmd+Shift+P) and runMCP: List Servers. In the dropdown, selectappwriteand click on the Start Server button. -
Use in Copilot Chat: Open Copilot Chat and switch to Agent Mode to access the Appwrite tools.

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.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.