AppwriteMCP-Kri8tivemike

Kri8tivemike/AppwriteMCP-Kri8tivemike

3.2

If you are the rightful owner of AppwriteMCP-Kri8tivemike and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A comprehensive Model Context Protocol (MCP) Server for Appwrite with 38+ tools covering database, storage, and user management operations.

Tools
38
Resources
0
Prompts
0

AppwriteMCP-Kri8tivemike

A comprehensive Model Context Protocol (MCP) Server for Appwrite with 38+ tools covering database, storage, and user management operations. Designed for seamless integration with Cursor IDE and self-hosted Appwrite instances.

šŸš€ Features

38 Comprehensive Tools

Database Operations (5 tools)
  • appwrite_list_databases - List all databases
  • appwrite_create_database - Create new database
  • appwrite_get_database - Get database details
  • appwrite_update_database - Update database name
  • appwrite_delete_database - Delete database
Collection Operations (5 tools)
  • appwrite_list_collections - List collections in database
  • appwrite_create_collection - Create new collection
  • appwrite_get_collection - Get collection details
  • appwrite_update_collection - Update collection
  • appwrite_delete_collection - Delete collection
Attribute Operations (9 tools)
  • appwrite_list_attributes - List collection attributes
  • appwrite_create_string_attribute - Add string attribute
  • appwrite_create_integer_attribute - Add integer attribute
  • appwrite_create_float_attribute - Add float attribute
  • appwrite_create_boolean_attribute - Add boolean attribute
  • appwrite_create_email_attribute - Add email attribute
  • appwrite_create_url_attribute - Add URL attribute
  • appwrite_create_datetime_attribute - Add datetime attribute
  • appwrite_delete_attribute - Delete attribute
Document Operations (5 tools)
  • appwrite_list_documents - List documents in collection
  • appwrite_create_document - Create new document
  • appwrite_get_document - Get document by ID
  • appwrite_update_document - Update document
  • appwrite_delete_document - Delete document
Storage Operations (7 tools)
  • appwrite_list_buckets - List storage buckets
  • appwrite_create_bucket - Create new bucket
  • appwrite_get_bucket - Get bucket details
  • appwrite_update_bucket - Update bucket
  • appwrite_delete_bucket - Delete bucket
  • appwrite_list_files - List files in bucket
  • appwrite_get_file - Get file details
  • appwrite_delete_file - Delete file
User Management Operations (6 tools)
  • appwrite_list_users - List all users
  • appwrite_create_user - Create new user
  • appwrite_get_user - Get user details
  • appwrite_update_user - Update user information
  • appwrite_delete_user - Delete user
  • appwrite_update_user_status - Block/unblock user

šŸ“‹ Prerequisites

  • Node.js 18+ and npm
  • Appwrite instance (self-hosted or cloud)
  • Cursor IDE with MCP support
  • Appwrite API Key with appropriate permissions

šŸ› ļø Installation

1. Clone the Repository

git clone https://github.com/Kri8tivemike/AppwriteMCP-Kri8tivemike.git
cd AppwriteMCP-Kri8tivemike

2. Install Dependencies

npm install

3. Build the Project

npm run build

āš™ļø Configuration

1. Environment Setup

Create a .env file in the project root:

APPWRITE_ENDPOINT=https://your-appwrite-instance.com/v1
APPWRITE_PROJECT_ID=your-project-id
APPWRITE_API_KEY=your-api-key
APPWRITE_BUCKET_ID=default

2. Cursor IDE Configuration

Add to your Cursor MCP configuration file (mcp-config-custom.json):

{
  "mcpServers": {
    "appwrite": {
      "command": "node",
      "args": ["./dist/index.js"],
      "cwd": "/path/to/AppwriteMCP-Kri8tivemike",
      "env": {
        "APPWRITE_ENDPOINT": "https://your-appwrite-instance.com/v1",
        "APPWRITE_PROJECT_ID": "your-project-id",
        "APPWRITE_API_KEY": "your-api-key",
        "APPWRITE_BUCKET_ID": "default"
      }
    }
  }
}

šŸš€ Usage

Testing the MCP Server

Run the test script to verify functionality:

# Windows PowerShell
.\test-mcp-server.ps1

# Linux/macOS
chmod +x test-mcp-server.sh
./test-mcp-server.sh

Using in Cursor IDE

  1. Restart Cursor IDE after configuration
  2. Open MCP Tools panel in Cursor
  3. See all 38 tools available for use
  4. Use tools directly in your conversations with Cursor

Example Usage

// Create a database
await appwrite_create_database({
  databaseId: "my_database",
  name: "My Application Database"
});

// Create a collection
await appwrite_create_collection({
  databaseId: "my_database",
  collectionId: "users",
  name: "Users Collection"
});

// Add attributes
await appwrite_create_string_attribute({
  databaseId: "my_database",
  collectionId: "users",
  key: "name",
  size: 255,
  required: true
});

// Create a document
await appwrite_create_document({
  databaseId: "my_database",
  collectionId: "users",
  data: {
    name: "John Doe",
    email: "john@example.com"
  }
});

šŸ“ Project Structure

AppwriteMCP-Kri8tivemike/
ā”œā”€ā”€ src/
│   └── index.ts              # Main MCP server implementation
ā”œā”€ā”€ dist/                     # Compiled JavaScript output
ā”œā”€ā”€ .env                      # Environment variables (create this)
ā”œā”€ā”€ .gitignore               # Git ignore rules
ā”œā”€ā”€ package.json             # Project dependencies
ā”œā”€ā”€ tsconfig.json            # TypeScript configuration
ā”œā”€ā”€ mcp-config-custom.json   # Cursor MCP configuration
ā”œā”€ā”€ test-mcp-server.ps1      # Windows test script
ā”œā”€ā”€ test-mcp-server.sh       # Linux/macOS test script
└── README.md                # This file

šŸ”§ Development

Building

npm run build

Testing

npm test

Adding New Tools

  1. Add tool definition to the tools array in src/index.ts
  2. Add corresponding handler in the switch statement
  3. Rebuild the project: npm run build
  4. Test the new functionality

šŸ›”ļø Security

  • Never commit your .env file or API keys
  • Use environment variables for all sensitive configuration
  • Limit API key permissions to only what's needed
  • Regularly rotate your API keys

šŸ“š Documentation

Appwrite Documentation

MCP Documentation

šŸ¤ Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'Add amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a Pull Request

šŸ“ License

This project is licensed under the MIT License - see the file for details.

šŸ™ Acknowledgments

  • Appwrite Team for the excellent backend platform
  • Model Context Protocol team for the MCP specification
  • Cursor IDE team for MCP integration

šŸ“ž Support


Made with ā¤ļø by Kri8tivemike