mcp-server-appwrite 0.1.4__py3-none-any.whl → 0.2.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,4 @@
1
1
  from __future__ import annotations
2
- from typing import List
3
2
  import asyncio
4
3
  import os
5
4
  import argparse
@@ -18,6 +17,7 @@ from appwrite.services.functions import Functions
18
17
  from appwrite.services.locale import Locale
19
18
  from appwrite.services.avatars import Avatars
20
19
  from appwrite.services.messaging import Messaging
20
+ from appwrite.services.sites import Sites
21
21
  from appwrite.exception import AppwriteException
22
22
  from .tool_manager import ToolManager
23
23
  from .service import Service
@@ -32,6 +32,7 @@ def parse_args():
32
32
  parser.add_argument('--messaging', action='store_true', help='Enable Messaging service')
33
33
  parser.add_argument('--locale', action='store_true', help='Enable Locale service')
34
34
  parser.add_argument('--avatars', action='store_true', help='Enable Avatars service')
35
+ parser.add_argument('--sites', action='store_true', help='Enable Sites service')
35
36
  parser.add_argument('--all', action='store_true', help='Enable all services')
36
37
  return parser.parse_args()
37
38
 
@@ -51,6 +52,7 @@ client = Client()
51
52
  client.set_endpoint(endpoint)
52
53
  client.set_project(project_id)
53
54
  client.set_key(api_key)
55
+ client.add_header('x-sdk-name', 'mcp')
54
56
 
55
57
  # Initialize tools manager
56
58
  tools_manager = ToolManager()
@@ -60,6 +62,7 @@ def register_services(args):
60
62
  if args.all:
61
63
  args.databases = args.users = args.teams = args.storage = True
62
64
  args.functions = args.messaging = args.locale = args.avatars = True
65
+ args.sites = True
63
66
 
64
67
  # Register services based on CLI arguments
65
68
  if args.databases:
@@ -78,6 +81,8 @@ def register_services(args):
78
81
  tools_manager.register_service(Service(Locale(client), "locale"))
79
82
  if args.avatars:
80
83
  tools_manager.register_service(Service(Avatars(client), "avatars"))
84
+ if args.sites:
85
+ tools_manager.register_service(Service(Sites(client), "sites"))
81
86
 
82
87
  # If no services were specified, enable databases by default
83
88
  if not any([args.databases, args.users, args.teams, args.storage,
@@ -125,7 +130,7 @@ async def _run():
125
130
  write_stream,
126
131
  InitializationOptions(
127
132
  server_name="appwrite",
128
- server_version="0.1.4",
133
+ server_version="0.2.0",
129
134
  capabilities=server.get_capabilities(
130
135
  notification_options=NotificationOptions(),
131
136
  experimental_capabilities={},
@@ -1,21 +1,17 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mcp-server-appwrite
3
- Version: 0.1.4
3
+ Version: 0.2.1
4
4
  Summary: MCP (Model Context Protocol) server for Appwrite
5
5
  License-File: LICENSE
6
6
  Requires-Python: >=3.12
7
- Requires-Dist: appwrite>=9.0.3
7
+ Requires-Dist: appwrite>=11.1.0
8
8
  Requires-Dist: docstring-parser>=0.16
9
9
  Requires-Dist: mcp[cli]>=1.3.0
10
10
  Description-Content-Type: text/markdown
11
11
 
12
12
  # Appwrite MCP server
13
13
 
14
- <!-- Cover image will go here once available -->
15
-
16
- <a href="https://glama.ai/mcp/servers/xkj2px7r0v">
17
- <img width="380" height="200" src="https://glama.ai/mcp/servers/xkj2px7r0v/badge" alt="Appwrite MCP server" />
18
- </a>
14
+ [![Install MCP Server](https://cursor.com/deeplink/mcp-install-light.svg)](https://cursor.com/install-mcp?name=appwrite&config=eyJjb21tYW5kIjoidXZ4IG1jcC1zZXJ2ZXItYXBwd3JpdGUgLS11c2VycyIsImVudiI6eyJBUFBXUklURV9BUElfS0VZIjoiPHlvdXItYXBpLWtleT4iLCJBUFBXUklURV9QUk9KRUNUX0lEIjoiPHlvdXItcHJvamVjdC1pZD4iLCJBUFBXUklURV9FTkRQT0lOVCI6Imh0dHBzOi8vPFJFR0lPTj4uY2xvdWQuYXBwd3JpdGUuaW8vdjEifX0%3D)
19
15
 
20
16
  ## Overview
21
17
 
@@ -28,6 +24,7 @@ A Model Context Protocol server for interacting with Appwrite's API. This server
28
24
  - [Claude Desktop](#usage-with-claude-desktop)
29
25
  - [Cursor](#usage-with-cursor)
30
26
  - [Windsurf Editor](#usage-with-windsurf-editor)
27
+ - [VS Code](#usage-with-vs-code)
31
28
  - [Local Development](#local-development)
32
29
  - [Debugging](#debugging)
33
30
 
@@ -40,7 +37,7 @@ Create a `.env` file in your working directory and add the following:
40
37
  ```env
41
38
  APPWRITE_PROJECT_ID=your-project-id
42
39
  APPWRITE_API_KEY=your-api-key
43
- APPWRITE_ENDPOINT=https://cloud.appwrite.io/v1
40
+ APPWRITE_ENDPOINT=https://<REGION>.cloud.appwrite.io/v1
44
41
  ```
45
42
 
46
43
  Then, open your terminal and run the following command
@@ -108,6 +105,7 @@ Both the `uv` and `pip` setup processes require certain arguments to enable MCP
108
105
  | `--messaging` | Enables the Messaging API |
109
106
  | `--locale` | Enables the Locale API |
110
107
  | `--avatars` | Enables the Avatars API |
108
+ | `--sites` | Enables the Sites API |
111
109
  | `--all` | Enables all Appwrite APIs |
112
110
 
113
111
  ## Usage with Claude Desktop
@@ -123,9 +121,9 @@ In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on
123
121
  "mcp-server-appwrite"
124
122
  ],
125
123
  "env": {
126
- "APPWRITE_PROJECT_ID": "your-project-id",
127
- "APPWRITE_API_KEY": "your-api-key",
128
- "APPWRITE_ENDPOINT": "https://cloud.appwrite.io/v1" // Optional
124
+ "APPWRITE_PROJECT_ID": "<YOUR_PROJECT_ID>",
125
+ "APPWRITE_API_KEY": "<YOUR_API_KEY>",
126
+ "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1" // Optional
129
127
  }
130
128
  }
131
129
  }
@@ -170,9 +168,9 @@ Head to Windsurf `Settings > Cascade > Model Context Protocol (MCP) Servers` and
170
168
  "mcp-server-appwrite"
171
169
  ],
172
170
  "env": {
173
- "APPWRITE_PROJECT_ID": "your-project-id",
174
- "APPWRITE_API_KEY": "your-api-key",
175
- "APPWRITE_ENDPOINT": "https://cloud.appwrite.io/v1" // Optional
171
+ "APPWRITE_PROJECT_ID": "<YOUR_PROJECT_ID>",
172
+ "APPWRITE_API_KEY": "<YOUR_API_KEY>",
173
+ "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1" // Optional
176
174
  }
177
175
  }
178
176
  }
@@ -181,6 +179,36 @@ Head to Windsurf `Settings > Cascade > Model Context Protocol (MCP) Servers` and
181
179
 
182
180
  ![Windsurf Settings](./images/windsurf-integration.png)
183
181
 
182
+ ## Usage with [VS Code](https://code.visualstudio.com/)
183
+
184
+ ### Configuration
185
+
186
+ 1. **Update the MCP configuration file**: Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`) and run `MCP: Open User Configuration`. It should open the `mcp.json` file in your user settings.
187
+
188
+ 2. **Add the Appwrite MCP server configuration**: Add the following to the `mcp.json` file:
189
+
190
+ ```json
191
+ {
192
+ "servers": {
193
+ "appwrite": {
194
+ "command": "uvx",
195
+ "args": ["mcp-server-appwrite", "--users"],
196
+ "env": {
197
+ "APPWRITE_PROJECT_ID": "<YOUR_PROJECT_ID>",
198
+ "APPWRITE_API_KEY": "<YOUR_API_KEY>",
199
+ "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"
200
+ }
201
+ }
202
+ }
203
+ }
204
+ ```
205
+
206
+ 3. **Start the MCP server**: Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`) and run `MCP: List Servers`. In the dropdown, select `appwrite` and click on the **Start Server** button.
207
+
208
+ 4. **Use in Copilot Chat**: Open Copilot Chat and switch to **Agent Mode** to access the Appwrite tools.
209
+
210
+ ![VS Code Settings](./images/vs-code-integration.png)
211
+
184
212
  ## Local Development
185
213
 
186
214
  ### Clone the repository
@@ -1,10 +1,10 @@
1
1
  mcp_server_appwrite/__init__.py,sha256=Od9oaUg_ckgJ4jIGa2HijocyauWDPjIC7cBRiV0P4s8,214
2
2
  mcp_server_appwrite/__main__.py,sha256=bdaX6xMmFugzSR2QMdXJqanRx_Jh25jACJDqjE9cKEc,75
3
- mcp_server_appwrite/server.py,sha256=JxNLY1O5lMUXUkBd2_kvN5mrh6dWsRPzX1VHi-XwCFs,5498
3
+ mcp_server_appwrite/server.py,sha256=KxLXrqIHllcRt_bF6QQ5FJIcDNIuc-XGaGk2qbK6BPU,5757
4
4
  mcp_server_appwrite/service.py,sha256=H_Qr8bYFyXuJVwsPsWFi1xx12-aPM75yblKj11L4V2c,4640
5
5
  mcp_server_appwrite/tool_manager.py,sha256=AfRjLyMpplYjF2VJna7frXDiDUZKRN8WQu9R8j3dxPc,718
6
- mcp_server_appwrite-0.1.4.dist-info/METADATA,sha256=Kxq2jAAuvpUz1P1rBRNuauSf3Ipg0TIJx01NFt2JMpY,6565
7
- mcp_server_appwrite-0.1.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
8
- mcp_server_appwrite-0.1.4.dist-info/entry_points.txt,sha256=-FBKUOp-Qmo9FldmiT3JUyF7djSeo8lLhxljOosuHkQ,74
9
- mcp_server_appwrite-0.1.4.dist-info/licenses/LICENSE,sha256=PXzk1HbuQMAkLdHzwnBLTBIHFmgDZM0Ez2lw2gX2UQs,1096
10
- mcp_server_appwrite-0.1.4.dist-info/RECORD,,
6
+ mcp_server_appwrite-0.2.1.dist-info/METADATA,sha256=fGnV0JyX_weKQC3MS2k8y7H0HJAELt44smcboNYmX4g,7891
7
+ mcp_server_appwrite-0.2.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
8
+ mcp_server_appwrite-0.2.1.dist-info/entry_points.txt,sha256=-FBKUOp-Qmo9FldmiT3JUyF7djSeo8lLhxljOosuHkQ,74
9
+ mcp_server_appwrite-0.2.1.dist-info/licenses/LICENSE,sha256=PXzk1HbuQMAkLdHzwnBLTBIHFmgDZM0Ez2lw2gX2UQs,1096
10
+ mcp_server_appwrite-0.2.1.dist-info/RECORD,,