- Home
- MCP servers
- Appwrite
Appwrite
- 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.