Appwrite

Provides automated Appwrite backend control with 143 tools for databases, storage, users, and more.
  • javascript

0

GitHub Stars

javascript

Language

6 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "song-junhyeong-appwrite-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@jun-b/appwrite-mcp@latest"
      ],
      "env": {
        "APPWRITE_API_KEY": "your-api-key",
        "APPWRITE_ENDPOINT": "https://cloud.appwrite.io/v1",
        "APPWRITE_PROJECT_ID": "your-project-id"
      }
    }
  }
}

You enable AI agents to fully automate Appwrite backend operations with the MCP server. This server exposes a wide range of tools to manage databases, storage, users, functions, messaging, and more, so your client apps can react to events and automate workflows without writing custom back-end code.

How to use

Install the MCP server client on your development machine or run it in your automation environment. You will connect to the MCP server using the provided command and environment variables, then start building automated backends with the 143 available tools. After you configure a server, your Appwrite client can subscribe to Realtime events and react to data changes, user actions, and system health signals.

How to install

Prerequisites: you need Node.js and npm installed on your machine. You will run a command to install the MCP client globally, then a command to start the MCP server with your Appwrite project credentials.

npm install -g @jun-b/appwrite-mcp@latest

Or run directly with npx:

npx @jun-b/appwrite-mcp@latest --project-id <id> --api-key <key>

Configuration and usage notes

Set your Appwrite project credentials as environment variables when starting the MCP server. You can also configure a local or CI environment to inject these values securely.

Common environment variables you’ll use:

  • APPWRITE_PROJECT_ID
  • APPWRITE_API_KEY
  • APPWRITE_ENDPOINT (optional, defaults to Appwrite cloud endpoint)

API client setup and Realtime

After you create your backend structures with MCP tools, you can use Appwrite’s Client SDK to subscribe to Realtime events. For example, you can listen for document changes in a collection and react to those changes in real time from your frontend or serverless functions.

Available tools

create_database

Create a new database in Appwrite with initial collections and attributes.

get_database

Retrieve details about a specific database.

list_databases

List all databases in the project.

update_database

Update database metadata or configuration.

delete_database

Delete a database.

create_collection

Create a new collection within a database.

get_collection

Fetch details of a collection.

list_collections

List all collections in a database.

update_collection

Update collection settings or attributes.

delete_collection

Remove a collection.

create_document

Create a document in a collection.

get_document

Retrieve a document by ID.

list_documents

List documents in a collection with optional filters.

update_document

Update a document's fields.

delete_document

Delete a document.

create_documents

Bulk create multiple documents in a single operation.

update_documents

Bulk update documents by query or criteria.

delete_documents

Bulk delete documents by query.

upsert_document

Create or update a document in one call.

increment_document_attribute

Atomically increment numeric document attributes.

create_string_attribute

Add a string attribute to a collection.

create_integer_attribute

Add an integer attribute to a collection.

create_float_attribute

Add a float attribute to a collection.

create_boolean_attribute

Add a boolean attribute to a collection.

create_email_attribute

Add an email attribute to a collection.

create_enum_attribute

Add an enum attribute to a collection.

create_datetime_attribute

Add a datetime attribute to a collection.

create_url_attribute

Add a URL attribute to a collection.

create_ip_attribute

Add an IP address attribute to a collection.

create_relationship_attribute

Add a relationship attribute to link records across collections.

create_point_attribute

Add a GeoJSON Point attribute for coordinates.

create_polygon_attribute

Add a GeoJSON Polygon attribute for geographic boundaries.

update_string_attribute

Update a string attribute on a collection.

update_integer_attribute

Update an integer attribute on a collection.

update_float_attribute

Update a float attribute on a collection.

update_boolean_attribute

Update a boolean attribute on a collection.

update_email_attribute

Update an email attribute on a collection.

update_enum_attribute

Update an enum attribute on a collection.

update_datetime_attribute

Update a datetime attribute on a collection.

update_url_attribute

Update a URL attribute on a collection.

update_ip_attribute

Update an IP attribute on a collection.

update_relationship_attribute

Update a relationship attribute on a collection.

list_attributes

List all attributes for a collection.

get_attribute

Get details of a single attribute.

delete_attribute

Delete an attribute from a collection.

create_index

Create an index on a collection for faster queries.

list_indexes

List all indexes on a collection.

get_index

Get details of a specific index.

delete_index

Delete an index from a collection.

create_user

Create a new user in the system.

get_user

Fetch a user by ID.

list_users

List users in the project.

update_user

Update user details, including email, name, password, and phone.

delete_user

Delete a user account.

update_user_labels

Update user labels/tags.

update_user_status

Update the user's status (active, disabled, etc.).

update_user_prefs

Update user preferences.

get_user_prefs

Retrieve user preferences.

list_user_sessions

List active sessions for a user.

delete_user_sessions

Delete one or all user sessions.

list_user_memberships

List teams or memberships for a user.

list_user_logs

Retrieve user activity logs.

create_bucket

Create a storage bucket.

get_bucket

Get bucket details.

list_buckets

List all storage buckets.

update_bucket

Update bucket configuration.

delete_bucket

Delete a storage bucket.

create_file

Upload a file (Base64 encoded) into a bucket.

get_file

Retrieve a file by ID.

list_files

List files in a bucket.

update_file

Update file metadata.

delete_file

Delete a file.

get_file_url

Get a downloadable or viewable URL for a file.

create_function

Create a new serverless function.

get_function

Get details of a function.

list_functions

List all functions.

update_function

Update function configuration.

delete_function

Delete a function.

create_deployment

Upload function code as a deployment (Base64 tar.gz).

get_deployment

Retrieve a function deployment.

list_deployments

List all deployments for a function.

update_deployment

Update a deployment.

delete_deployment

Delete a deployment.

create_execution

Start a function execution.

get_execution

Get execution details.

list_executions

List executions for a function.

delete_execution

Delete an execution record.

create_variable

Create a runtime variable for a function.

get_variable

Get a runtime variable.

list_variables

List all runtime variables.

update_variable

Update a runtime variable.

delete_variable

Delete a runtime variable.

list_runtimes

List available runtimes for functions.

get_health

Check overall MCP health.

get_health_db

Check database health.

get_health_cache

Check cache health.

get_health_storage

Check storage health.

get_health_all

Run a comprehensive health check across all components.

create_topic

Create a messaging topic.

get_topic

Get a topic by ID.

list_topics

List all topics.

update_topic

Update a topic.

delete_topic

Delete a topic.

create_subscriber

Create a topic subscriber.

list_subscribers

List subscribers for a topic.

delete_subscriber

Delete a subscriber.

create_email

Create and send an email message.

create_sms

Create and send an SMS message.

create_push

Create and send a push notification.

get_message

Retrieve a message.

list_messages

List messages.

delete_message

Delete a message.

list_providers

List available providers for messaging.

get_provider

Get details of a messaging provider.

delete_provider

Delete a messaging provider.

create_smtp_provider

Create an SMTP provider configuration.

get_avatar_initials

Generate an avatar from initials.

get_avatar_image

Fetch an avatar image from a URL.

get_qr_code

Generate a QR code.

get_favicon

Retrieve a website favicon.

get_browser_icon

Retrieve a browser icon.

get_credit_card_icon

Retrieve a credit card provider icon.

get_flag

Get a country flag image.

list_countries

List all countries.

list_countries_eu

List EU countries.

list_countries_phones

List countries with phone codes.

list_continents

List all continents.

list_languages

List all languages.

list_currencies

List all currencies.

list_codes

List locale codes.

graphql_query

Execute GraphQL queries.

graphql_mutation

Execute GraphQL mutations.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational