mcp-server-appwrite 0.1.0__tar.gz → 0.1.2__tar.gz
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.
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/PKG-INFO +53 -47
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/README.md +52 -46
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/pyproject.toml +1 -1
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/src/mcp_server_appwrite/server.py +4 -14
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/.env.example +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/.github/workflows/publish.yml +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/.gitignore +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/.python-version +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/LICENSE +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/images/claude-desktop-integration.png +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/images/cursor-integration.png +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/src/mcp_server_appwrite/__init__.py +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/src/mcp_server_appwrite/__main__.py +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/src/mcp_server_appwrite/service.py +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/src/mcp_server_appwrite/tool_manager.py +0 -0
- {mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/uv.lock +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: mcp-server-appwrite
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.2
|
4
4
|
Summary: MCP (Model Context Protocol) server for Appwrite
|
5
5
|
License-File: LICENSE
|
6
6
|
Requires-Python: >=3.12
|
@@ -18,64 +18,50 @@ Currently the server supports the following tools:
|
|
18
18
|
|
19
19
|
- [x] Databases
|
20
20
|
- [x] Users
|
21
|
-
- [x] Teams
|
22
|
-
- [x] Messaging
|
23
|
-
- [x] Locale
|
24
|
-
- [x] Avatars
|
25
|
-
- [x] Storage (Beta)
|
26
|
-
- [x] Functions (Beta)
|
27
21
|
|
28
|
-
> Please note that
|
22
|
+
> Please note that adding a lot of tools exceeds the context window of the LLM. As a result, we will make available a curated list of tools that are most commonly used.
|
29
23
|
|
30
|
-
##
|
24
|
+
## Configuration
|
31
25
|
|
32
|
-
|
26
|
+
Create a `.env` file in the directory you're runing the server from:
|
33
27
|
|
34
|
-
```
|
35
|
-
|
28
|
+
```env
|
29
|
+
APPWRITE_API_KEY=your-api-key
|
30
|
+
APPWRITE_PROJECT_ID=your-project-id
|
31
|
+
APPWRITE_ENDPOINT=your-endpoint # Optional, defaults to https://cloud.appwrite.io/v1
|
36
32
|
```
|
33
|
+
> Note: Ensure that your API Key has the necessary scopes to access the resources you want to use.
|
37
34
|
|
38
|
-
|
39
|
-
|
40
|
-
```bash
|
41
|
-
curl -LsSf https://astral.sh/uv/install.sh | sh
|
42
|
-
```
|
35
|
+
## Installation
|
43
36
|
|
44
|
-
|
37
|
+
### Using uv (recommended)
|
38
|
+
When using [`uv`](https://docs.astral.sh/uv/) no specific installation is needed. We will
|
39
|
+
use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-sentry*.
|
45
40
|
|
46
41
|
```bash
|
47
|
-
|
48
|
-
source .venv/bin/activate
|
42
|
+
uvx run mcp-server-appwrite
|
49
43
|
```
|
50
44
|
|
51
|
-
|
45
|
+
### Using pip
|
52
46
|
|
53
|
-
|
54
|
-
|
55
|
-
```env
|
56
|
-
APPWRITE_API_KEY=your-api-key
|
57
|
-
APPWRITE_PROJECT_ID=your-project-id
|
58
|
-
APPWRITE_ENDPOINT=your-endpoint # Optional, defaults to https://cloud.appwrite.io/v1
|
47
|
+
```bash
|
48
|
+
pip install mcp-server-appwrite
|
59
49
|
```
|
60
|
-
|
61
|
-
Run the server
|
50
|
+
Then run the server using
|
62
51
|
|
63
52
|
```bash
|
64
|
-
|
53
|
+
python -m mcp_server_appwrite
|
65
54
|
```
|
66
55
|
|
67
|
-
|
56
|
+
## Usage with Claude Desktop
|
68
57
|
|
69
58
|
Add this to your `claude_desktop_config.json`:
|
70
59
|
|
71
60
|
```json
|
72
61
|
"mcpServers": {
|
73
62
|
"appwrite": {
|
74
|
-
"command": "
|
63
|
+
"command": "uvx",
|
75
64
|
"args": [
|
76
|
-
"run",
|
77
|
-
"--directory",
|
78
|
-
"<path-to-repository>",
|
79
65
|
"mcp-server-appwrite"
|
80
66
|
],
|
81
67
|
"env": {
|
@@ -86,23 +72,19 @@ Add this to your `claude_desktop_config.json`:
|
|
86
72
|
}
|
87
73
|
}
|
88
74
|
```
|
89
|
-
|
90
75
|
Upon successful configuration, you should be able to see the server in the list of available servers in Claude Desktop.
|
91
76
|
|
92
77
|

|
93
78
|
|
94
|
-
|
79
|
+
## Usage with [Zed](https://github.com/zed-industries/zed)
|
95
80
|
|
96
81
|
Add to your Zed settings.json:
|
97
82
|
|
98
83
|
```json
|
99
84
|
"context_servers": {
|
100
85
|
"appwrite": {
|
101
|
-
"command": "
|
86
|
+
"command": "uvx",
|
102
87
|
"args": [
|
103
|
-
"run",
|
104
|
-
"--directory",
|
105
|
-
"<path-to-repository>",
|
106
88
|
"mcp-server-appwrite"
|
107
89
|
],
|
108
90
|
"env": {
|
@@ -114,16 +96,43 @@ Add to your Zed settings.json:
|
|
114
96
|
}
|
115
97
|
```
|
116
98
|
|
117
|
-
|
99
|
+
## Usage with [Cursor](https://www.cursor.com/)
|
118
100
|
|
119
101
|
Head to Cursor `Settings > Features > MCP Servers` and click on **Add New MCP Server**. Choose the type as `Command` and add the command below to the **Command** field.
|
120
102
|
|
121
103
|
```bash
|
122
|
-
APPWRITE_PROJECT_ID=your-project-id APPWRITE_API_KEY=your-api-key
|
104
|
+
APPWRITE_PROJECT_ID=your-project-id APPWRITE_API_KEY=your-api-key uvx mcp-server-appwrite
|
123
105
|
```
|
124
106
|
|
125
107
|

|
126
108
|
|
109
|
+
## Local Development
|
110
|
+
|
111
|
+
Clone the repository
|
112
|
+
|
113
|
+
```bash
|
114
|
+
git clone https://github.com/appwrite/mcp.git
|
115
|
+
```
|
116
|
+
|
117
|
+
Install `uv`
|
118
|
+
|
119
|
+
```bash
|
120
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
121
|
+
```
|
122
|
+
|
123
|
+
Create virtual environment
|
124
|
+
|
125
|
+
```bash
|
126
|
+
uv venv
|
127
|
+
source .venv/bin/activate
|
128
|
+
```
|
129
|
+
|
130
|
+
Run the server
|
131
|
+
|
132
|
+
```bash
|
133
|
+
uv run -v --directory ./ mcp-server-appwrite
|
134
|
+
```
|
135
|
+
|
127
136
|
## Debugging
|
128
137
|
|
129
138
|
You can use the MCP inspector to debug the server.
|
@@ -149,7 +158,4 @@ This MCP server is licensed under the MIT License. This means you are free to us
|
|
149
158
|
- https://github.com/punkpeye/awesome-mcp-servers
|
150
159
|
- https://portkey.ai/mcp-servers
|
151
160
|
- https://www.claudemcp.com/servers
|
152
|
-
- Add support for SSE server
|
153
|
-
- Release to PIP
|
154
|
-
- ✅ Add support for env vars
|
155
|
-
- Add suppport for resources
|
161
|
+
- Add support for SSE server
|
@@ -8,64 +8,50 @@ Currently the server supports the following tools:
|
|
8
8
|
|
9
9
|
- [x] Databases
|
10
10
|
- [x] Users
|
11
|
-
- [x] Teams
|
12
|
-
- [x] Messaging
|
13
|
-
- [x] Locale
|
14
|
-
- [x] Avatars
|
15
|
-
- [x] Storage (Beta)
|
16
|
-
- [x] Functions (Beta)
|
17
11
|
|
18
|
-
> Please note that
|
12
|
+
> Please note that adding a lot of tools exceeds the context window of the LLM. As a result, we will make available a curated list of tools that are most commonly used.
|
19
13
|
|
20
|
-
##
|
14
|
+
## Configuration
|
21
15
|
|
22
|
-
|
16
|
+
Create a `.env` file in the directory you're runing the server from:
|
23
17
|
|
24
|
-
```
|
25
|
-
|
18
|
+
```env
|
19
|
+
APPWRITE_API_KEY=your-api-key
|
20
|
+
APPWRITE_PROJECT_ID=your-project-id
|
21
|
+
APPWRITE_ENDPOINT=your-endpoint # Optional, defaults to https://cloud.appwrite.io/v1
|
26
22
|
```
|
23
|
+
> Note: Ensure that your API Key has the necessary scopes to access the resources you want to use.
|
27
24
|
|
28
|
-
|
29
|
-
|
30
|
-
```bash
|
31
|
-
curl -LsSf https://astral.sh/uv/install.sh | sh
|
32
|
-
```
|
25
|
+
## Installation
|
33
26
|
|
34
|
-
|
27
|
+
### Using uv (recommended)
|
28
|
+
When using [`uv`](https://docs.astral.sh/uv/) no specific installation is needed. We will
|
29
|
+
use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-sentry*.
|
35
30
|
|
36
31
|
```bash
|
37
|
-
|
38
|
-
source .venv/bin/activate
|
32
|
+
uvx run mcp-server-appwrite
|
39
33
|
```
|
40
34
|
|
41
|
-
|
35
|
+
### Using pip
|
42
36
|
|
43
|
-
|
44
|
-
|
45
|
-
```env
|
46
|
-
APPWRITE_API_KEY=your-api-key
|
47
|
-
APPWRITE_PROJECT_ID=your-project-id
|
48
|
-
APPWRITE_ENDPOINT=your-endpoint # Optional, defaults to https://cloud.appwrite.io/v1
|
37
|
+
```bash
|
38
|
+
pip install mcp-server-appwrite
|
49
39
|
```
|
50
|
-
|
51
|
-
Run the server
|
40
|
+
Then run the server using
|
52
41
|
|
53
42
|
```bash
|
54
|
-
|
43
|
+
python -m mcp_server_appwrite
|
55
44
|
```
|
56
45
|
|
57
|
-
|
46
|
+
## Usage with Claude Desktop
|
58
47
|
|
59
48
|
Add this to your `claude_desktop_config.json`:
|
60
49
|
|
61
50
|
```json
|
62
51
|
"mcpServers": {
|
63
52
|
"appwrite": {
|
64
|
-
"command": "
|
53
|
+
"command": "uvx",
|
65
54
|
"args": [
|
66
|
-
"run",
|
67
|
-
"--directory",
|
68
|
-
"<path-to-repository>",
|
69
55
|
"mcp-server-appwrite"
|
70
56
|
],
|
71
57
|
"env": {
|
@@ -76,23 +62,19 @@ Add this to your `claude_desktop_config.json`:
|
|
76
62
|
}
|
77
63
|
}
|
78
64
|
```
|
79
|
-
|
80
65
|
Upon successful configuration, you should be able to see the server in the list of available servers in Claude Desktop.
|
81
66
|
|
82
67
|

|
83
68
|
|
84
|
-
|
69
|
+
## Usage with [Zed](https://github.com/zed-industries/zed)
|
85
70
|
|
86
71
|
Add to your Zed settings.json:
|
87
72
|
|
88
73
|
```json
|
89
74
|
"context_servers": {
|
90
75
|
"appwrite": {
|
91
|
-
"command": "
|
76
|
+
"command": "uvx",
|
92
77
|
"args": [
|
93
|
-
"run",
|
94
|
-
"--directory",
|
95
|
-
"<path-to-repository>",
|
96
78
|
"mcp-server-appwrite"
|
97
79
|
],
|
98
80
|
"env": {
|
@@ -104,16 +86,43 @@ Add to your Zed settings.json:
|
|
104
86
|
}
|
105
87
|
```
|
106
88
|
|
107
|
-
|
89
|
+
## Usage with [Cursor](https://www.cursor.com/)
|
108
90
|
|
109
91
|
Head to Cursor `Settings > Features > MCP Servers` and click on **Add New MCP Server**. Choose the type as `Command` and add the command below to the **Command** field.
|
110
92
|
|
111
93
|
```bash
|
112
|
-
APPWRITE_PROJECT_ID=your-project-id APPWRITE_API_KEY=your-api-key
|
94
|
+
APPWRITE_PROJECT_ID=your-project-id APPWRITE_API_KEY=your-api-key uvx mcp-server-appwrite
|
113
95
|
```
|
114
96
|
|
115
97
|

|
116
98
|
|
99
|
+
## Local Development
|
100
|
+
|
101
|
+
Clone the repository
|
102
|
+
|
103
|
+
```bash
|
104
|
+
git clone https://github.com/appwrite/mcp.git
|
105
|
+
```
|
106
|
+
|
107
|
+
Install `uv`
|
108
|
+
|
109
|
+
```bash
|
110
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
111
|
+
```
|
112
|
+
|
113
|
+
Create virtual environment
|
114
|
+
|
115
|
+
```bash
|
116
|
+
uv venv
|
117
|
+
source .venv/bin/activate
|
118
|
+
```
|
119
|
+
|
120
|
+
Run the server
|
121
|
+
|
122
|
+
```bash
|
123
|
+
uv run -v --directory ./ mcp-server-appwrite
|
124
|
+
```
|
125
|
+
|
117
126
|
## Debugging
|
118
127
|
|
119
128
|
You can use the MCP inspector to debug the server.
|
@@ -139,7 +148,4 @@ This MCP server is licensed under the MIT License. This means you are free to us
|
|
139
148
|
- https://github.com/punkpeye/awesome-mcp-servers
|
140
149
|
- https://portkey.ai/mcp-servers
|
141
150
|
- https://www.claudemcp.com/servers
|
142
|
-
- Add support for SSE server
|
143
|
-
- Release to PIP
|
144
|
-
- ✅ Add support for env vars
|
145
|
-
- Add suppport for resources
|
151
|
+
- Add support for SSE server
|
@@ -39,25 +39,15 @@ client.set_key(api_key)
|
|
39
39
|
# Initialize tools manager and register services
|
40
40
|
tools_manager = ToolManager()
|
41
41
|
tools_manager.register_service(Service(Users(client), "users"))
|
42
|
-
tools_manager.register_service(Service(Teams(client), "teams"))
|
42
|
+
# tools_manager.register_service(Service(Teams(client), "teams"))
|
43
43
|
tools_manager.register_service(Service(Databases(client), "databases"))
|
44
|
-
tools_manager.register_service(Service(Storage(client), "storage"))
|
45
|
-
tools_manager.register_service(Service(Functions(client), "functions"))
|
46
|
-
tools_manager.register_service(Service(Messaging(client), "messaging"))
|
47
|
-
tools_manager.register_service(Service(Locale(client), "locale"))
|
48
|
-
tools_manager.register_service(Service(Avatars(client), "avatars"))
|
44
|
+
# tools_manager.register_service(Service(Storage(client), "storage"))
|
45
|
+
# tools_manager.register_service(Service(Functions(client), "functions"))
|
46
|
+
# tools_manager.register_service(Service(Messaging(client), "messaging"))
|
49
47
|
|
50
48
|
async def serve() -> Server:
|
51
49
|
server = Server("Appwrite MCP Server")
|
52
50
|
|
53
|
-
# @server.list_resources()
|
54
|
-
# async def handle_list_resources() -> list[types.Resource]:
|
55
|
-
# return tools_manager.get_all_resources()
|
56
|
-
|
57
|
-
# @server.read_resource()
|
58
|
-
# async def handle_read_resource(resource_id: str) -> str:
|
59
|
-
# return tools_manager.get_resource(resource_id)
|
60
|
-
|
61
51
|
@server.list_tools()
|
62
52
|
async def handle_list_tools() -> list[types.Tool]:
|
63
53
|
return tools_manager.get_all_tools()
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/images/claude-desktop-integration.png
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{mcp_server_appwrite-0.1.0 → mcp_server_appwrite-0.1.2}/src/mcp_server_appwrite/tool_manager.py
RENAMED
File without changes
|
File without changes
|