What is this?
The Appwrite MCP Server is a dedicated Model Context Protocol server implementation for Appwrite, an open-source backend-as-a-service platform. It acts as a middleware layer translating MCP protocol calls into Appwrite SDK operations, enabling AI agents and language models to interact with databases, storage buckets, authentication systems, cloud functions, real-time subscriptions, and event triggers seamlessly.
By adopting the MCP standard, it provides a uniform interface for CRUD operations, file uploads, function triggers, and event handling, all secured by Appwrite’s built-in authentication and permission model. This reduces boilerplate, enforces fine-grained access control, and supports private-by-default deployments across public or edge infrastructure, making it ideal for enterprise and research teams building sophisticated agentic workflows.
Quick Start
Install the server using npm:
npm install @modelcontextprotocol/server-appwrite
Then add it to your MCP client configuration:
{
"mcpServers": {
"appwrite": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-appwrite"],
"env": {
"API_KEY": "your-api-key-here"
}
}
}
}
Key Features
Feature 1: Rapid onboarding—install and configure in minutes using standard NPM commands and environment variables.
Feature 2: Uniform API interface—supports CRUD operations, file management, function triggers, authentication, and real-time data through the MCP protocol.
Feature 3: Secure and extensible workflows—leverages Appwrite’s authentication and permission model for role-based and attribute-based access control, with support for custom functions and webhooks.
Example Usage
One common use case is fetching user purchase history into an LLM context to generate personalized recommendations.
// Example code
const result = await client.callTool({
name: "documents.list",
arguments: {
collectionId: "purchases",
filters: [["userId", "=", "USER_ID"]],
limit: 50
}
});
This code retrieves up to 50 purchase documents for a given userId, which can then be passed to an LLM for personalized suggestion generation.
Configuration
The server accepts the following environment variables:
API_KEY – Your Appwrite API key with appropriate project scopes.
MCP_PORT (optional) – Port on which the MCP server listens (default: 4000).
Available Tools/Resources
documents.list: Retrieve document lists from a specified collection.
storage.createFile: Upload files to Appwrite Storage buckets with permissions.
Who Should Use This?
This server is perfect for:
Use case 1: AI developers integrating LLMs with Appwrite backend services.
Use case 2: Teams building multi-agent workflows that require secure, standardized data access.
Use case 3: Enterprises needing a scalable, compliant solution for AI-driven applications.
Conclusion
With the Appwrite MCP Server, you get a standardized, secure, and extensible interface to Appwrite’s backend, streamlining AI and agentic development. Give it a try and simplify your integration process!
Check out the GitHub repository for more information and to contribute.