mcp-server-appwrite 0.1.1__tar.gz → 0.1.3__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.1 → mcp_server_appwrite-0.1.3}/PKG-INFO +47 -41
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/README.md +45 -39
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/pyproject.toml +2 -2
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/src/mcp_server_appwrite/server.py +50 -18
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/uv.lock +34 -6
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/.env.example +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/.github/workflows/publish.yml +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/.gitignore +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/.python-version +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/LICENSE +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/images/claude-desktop-integration.png +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/images/cursor-integration.png +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/src/mcp_server_appwrite/__init__.py +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/src/mcp_server_appwrite/__main__.py +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/src/mcp_server_appwrite/service.py +0 -0
- {mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/src/mcp_server_appwrite/tool_manager.py +0 -0
@@ -1,47 +1,54 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: mcp-server-appwrite
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.3
|
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>=
|
7
|
+
Requires-Dist: appwrite>=9.0.2
|
8
8
|
Requires-Dist: mcp[cli]>=1.3.0
|
9
9
|
Description-Content-Type: text/markdown
|
10
10
|
|
11
11
|
# Appwrite MCP server
|
12
12
|
|
13
|
+
<!-- Cover image will go here once available -->
|
14
|
+
|
13
15
|
## Overview
|
14
16
|
|
15
17
|
A Model Context Protocol server for interacting with Appwrite's API. This server provides tools to manage databases, users, functions, teams, and more within your Appwrite project.
|
16
18
|
|
17
|
-
|
19
|
+
## Quick Links
|
20
|
+
- [Configuration](#configuration)
|
21
|
+
- [Installation](#installation)
|
22
|
+
- IDE Integration:
|
23
|
+
- [Claude Desktop](#usage-with-claude-desktop)
|
24
|
+
- [Zed](#usage-with-zed)
|
25
|
+
- [Cursor](#usage-with-cursor)
|
26
|
+
- [Local Development](#local-development)
|
27
|
+
- [Debugging](#debugging)
|
28
|
+
|
29
|
+
Currently, the server supports the following tools:
|
18
30
|
|
19
31
|
- [x] Databases
|
20
32
|
- [x] Users
|
21
|
-
- [x] Teams
|
22
|
-
- [x] Messaging
|
23
|
-
- [x] Locale
|
24
|
-
- [x] Avatars
|
25
|
-
- [x] Storage (Beta)
|
26
|
-
- [x] Functions (Beta)
|
27
33
|
|
28
|
-
> Please note that
|
34
|
+
> 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
35
|
|
30
36
|
## Configuration
|
31
37
|
|
32
|
-
Create a `.env` file in the directory you're
|
38
|
+
Create a `.env` file in the directory you're running the server from:
|
33
39
|
|
34
40
|
```env
|
35
41
|
APPWRITE_API_KEY=your-api-key
|
36
42
|
APPWRITE_PROJECT_ID=your-project-id
|
37
43
|
APPWRITE_ENDPOINT=your-endpoint # Optional, defaults to https://cloud.appwrite.io/v1
|
38
44
|
```
|
45
|
+
> Note: Ensure that your API Key has the necessary scopes to access the resources you want to use.
|
39
46
|
|
40
47
|
## Installation
|
41
48
|
|
42
49
|
### Using uv (recommended)
|
43
50
|
When using [`uv`](https://docs.astral.sh/uv/) no specific installation is needed. We will
|
44
|
-
use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-
|
51
|
+
use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-appwrite*.
|
45
52
|
|
46
53
|
```bash
|
47
54
|
uvx run mcp-server-appwrite
|
@@ -58,33 +65,6 @@ Then run the server using
|
|
58
65
|
python -m mcp_server_appwrite
|
59
66
|
```
|
60
67
|
|
61
|
-
## Local Development
|
62
|
-
|
63
|
-
Clone the repository
|
64
|
-
|
65
|
-
```bash
|
66
|
-
git clone https://github.com/appwrite/mcp.git
|
67
|
-
```
|
68
|
-
|
69
|
-
Install `uv`
|
70
|
-
|
71
|
-
```bash
|
72
|
-
curl -LsSf https://astral.sh/uv/install.sh | sh
|
73
|
-
```
|
74
|
-
|
75
|
-
Create virtual environment
|
76
|
-
|
77
|
-
```bash
|
78
|
-
uv venv
|
79
|
-
source .venv/bin/activate
|
80
|
-
```
|
81
|
-
|
82
|
-
Run the server
|
83
|
-
|
84
|
-
```bash
|
85
|
-
uv run -v --directory ./ mcp-server-appwrite
|
86
|
-
```
|
87
|
-
|
88
68
|
## Usage with Claude Desktop
|
89
69
|
|
90
70
|
Add this to your `claude_desktop_config.json`:
|
@@ -128,7 +108,7 @@ Add to your Zed settings.json:
|
|
128
108
|
}
|
129
109
|
```
|
130
110
|
|
131
|
-
|
111
|
+
## Usage with [Cursor](https://www.cursor.com/)
|
132
112
|
|
133
113
|
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.
|
134
114
|
|
@@ -138,6 +118,33 @@ APPWRITE_PROJECT_ID=your-project-id APPWRITE_API_KEY=your-api-key uvx mcp-server
|
|
138
118
|
|
139
119
|

|
140
120
|
|
121
|
+
## Local Development
|
122
|
+
|
123
|
+
Clone the repository
|
124
|
+
|
125
|
+
```bash
|
126
|
+
git clone https://github.com/appwrite/mcp.git
|
127
|
+
```
|
128
|
+
|
129
|
+
Install `uv`
|
130
|
+
|
131
|
+
```bash
|
132
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
133
|
+
```
|
134
|
+
|
135
|
+
Create virtual environment
|
136
|
+
|
137
|
+
```bash
|
138
|
+
uv venv
|
139
|
+
source .venv/bin/activate
|
140
|
+
```
|
141
|
+
|
142
|
+
Run the server
|
143
|
+
|
144
|
+
```bash
|
145
|
+
uv run -v --directory ./ mcp-server-appwrite
|
146
|
+
```
|
147
|
+
|
141
148
|
## Debugging
|
142
149
|
|
143
150
|
You can use the MCP inspector to debug the server.
|
@@ -164,4 +171,3 @@ This MCP server is licensed under the MIT License. This means you are free to us
|
|
164
171
|
- https://portkey.ai/mcp-servers
|
165
172
|
- https://www.claudemcp.com/servers
|
166
173
|
- Add support for SSE server
|
167
|
-
- Add suppport for resources
|
@@ -1,37 +1,44 @@
|
|
1
1
|
# Appwrite MCP server
|
2
2
|
|
3
|
+
<!-- Cover image will go here once available -->
|
4
|
+
|
3
5
|
## Overview
|
4
6
|
|
5
7
|
A Model Context Protocol server for interacting with Appwrite's API. This server provides tools to manage databases, users, functions, teams, and more within your Appwrite project.
|
6
8
|
|
7
|
-
|
9
|
+
## Quick Links
|
10
|
+
- [Configuration](#configuration)
|
11
|
+
- [Installation](#installation)
|
12
|
+
- IDE Integration:
|
13
|
+
- [Claude Desktop](#usage-with-claude-desktop)
|
14
|
+
- [Zed](#usage-with-zed)
|
15
|
+
- [Cursor](#usage-with-cursor)
|
16
|
+
- [Local Development](#local-development)
|
17
|
+
- [Debugging](#debugging)
|
18
|
+
|
19
|
+
Currently, the server supports the following tools:
|
8
20
|
|
9
21
|
- [x] Databases
|
10
22
|
- [x] Users
|
11
|
-
- [x] Teams
|
12
|
-
- [x] Messaging
|
13
|
-
- [x] Locale
|
14
|
-
- [x] Avatars
|
15
|
-
- [x] Storage (Beta)
|
16
|
-
- [x] Functions (Beta)
|
17
23
|
|
18
|
-
> Please note that
|
24
|
+
> 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
25
|
|
20
26
|
## Configuration
|
21
27
|
|
22
|
-
Create a `.env` file in the directory you're
|
28
|
+
Create a `.env` file in the directory you're running the server from:
|
23
29
|
|
24
30
|
```env
|
25
31
|
APPWRITE_API_KEY=your-api-key
|
26
32
|
APPWRITE_PROJECT_ID=your-project-id
|
27
33
|
APPWRITE_ENDPOINT=your-endpoint # Optional, defaults to https://cloud.appwrite.io/v1
|
28
34
|
```
|
35
|
+
> Note: Ensure that your API Key has the necessary scopes to access the resources you want to use.
|
29
36
|
|
30
37
|
## Installation
|
31
38
|
|
32
39
|
### Using uv (recommended)
|
33
40
|
When using [`uv`](https://docs.astral.sh/uv/) no specific installation is needed. We will
|
34
|
-
use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-
|
41
|
+
use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-appwrite*.
|
35
42
|
|
36
43
|
```bash
|
37
44
|
uvx run mcp-server-appwrite
|
@@ -48,33 +55,6 @@ Then run the server using
|
|
48
55
|
python -m mcp_server_appwrite
|
49
56
|
```
|
50
57
|
|
51
|
-
## Local Development
|
52
|
-
|
53
|
-
Clone the repository
|
54
|
-
|
55
|
-
```bash
|
56
|
-
git clone https://github.com/appwrite/mcp.git
|
57
|
-
```
|
58
|
-
|
59
|
-
Install `uv`
|
60
|
-
|
61
|
-
```bash
|
62
|
-
curl -LsSf https://astral.sh/uv/install.sh | sh
|
63
|
-
```
|
64
|
-
|
65
|
-
Create virtual environment
|
66
|
-
|
67
|
-
```bash
|
68
|
-
uv venv
|
69
|
-
source .venv/bin/activate
|
70
|
-
```
|
71
|
-
|
72
|
-
Run the server
|
73
|
-
|
74
|
-
```bash
|
75
|
-
uv run -v --directory ./ mcp-server-appwrite
|
76
|
-
```
|
77
|
-
|
78
58
|
## Usage with Claude Desktop
|
79
59
|
|
80
60
|
Add this to your `claude_desktop_config.json`:
|
@@ -118,7 +98,7 @@ Add to your Zed settings.json:
|
|
118
98
|
}
|
119
99
|
```
|
120
100
|
|
121
|
-
|
101
|
+
## Usage with [Cursor](https://www.cursor.com/)
|
122
102
|
|
123
103
|
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.
|
124
104
|
|
@@ -128,6 +108,33 @@ APPWRITE_PROJECT_ID=your-project-id APPWRITE_API_KEY=your-api-key uvx mcp-server
|
|
128
108
|
|
129
109
|

|
130
110
|
|
111
|
+
## Local Development
|
112
|
+
|
113
|
+
Clone the repository
|
114
|
+
|
115
|
+
```bash
|
116
|
+
git clone https://github.com/appwrite/mcp.git
|
117
|
+
```
|
118
|
+
|
119
|
+
Install `uv`
|
120
|
+
|
121
|
+
```bash
|
122
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
123
|
+
```
|
124
|
+
|
125
|
+
Create virtual environment
|
126
|
+
|
127
|
+
```bash
|
128
|
+
uv venv
|
129
|
+
source .venv/bin/activate
|
130
|
+
```
|
131
|
+
|
132
|
+
Run the server
|
133
|
+
|
134
|
+
```bash
|
135
|
+
uv run -v --directory ./ mcp-server-appwrite
|
136
|
+
```
|
137
|
+
|
131
138
|
## Debugging
|
132
139
|
|
133
140
|
You can use the MCP inspector to debug the server.
|
@@ -154,4 +161,3 @@ This MCP server is licensed under the MIT License. This means you are free to us
|
|
154
161
|
- https://portkey.ai/mcp-servers
|
155
162
|
- https://www.claudemcp.com/servers
|
156
163
|
- Add support for SSE server
|
157
|
-
- Add suppport for resources
|
@@ -1,11 +1,11 @@
|
|
1
1
|
[project]
|
2
2
|
name = "mcp-server-appwrite"
|
3
|
-
version = "0.1.
|
3
|
+
version = "0.1.3"
|
4
4
|
description = "MCP (Model Context Protocol) server for Appwrite"
|
5
5
|
readme = "README.md"
|
6
6
|
requires-python = ">=3.12"
|
7
7
|
dependencies = [
|
8
|
-
"appwrite>=
|
8
|
+
"appwrite>=9.0.2",
|
9
9
|
"mcp[cli]>=1.3.0",
|
10
10
|
]
|
11
11
|
|
@@ -1,5 +1,8 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
from typing import List
|
1
3
|
import asyncio
|
2
4
|
import os
|
5
|
+
import argparse
|
3
6
|
import mcp.server.stdio
|
4
7
|
import mcp.types as types
|
5
8
|
from mcp.server import NotificationOptions, Server
|
@@ -19,6 +22,19 @@ from appwrite.exception import AppwriteException
|
|
19
22
|
from .tool_manager import ToolManager
|
20
23
|
from .service import Service
|
21
24
|
|
25
|
+
def parse_args():
|
26
|
+
parser = argparse.ArgumentParser(description='Appwrite MCP Server')
|
27
|
+
parser.add_argument('--databases', action='store_true', help='Enable Databases service')
|
28
|
+
parser.add_argument('--users', action='store_true', help='Enable Users service')
|
29
|
+
parser.add_argument('--teams', action='store_true', help='Enable Teams service')
|
30
|
+
parser.add_argument('--storage', action='store_true', help='Enable Storage service')
|
31
|
+
parser.add_argument('--functions', action='store_true', help='Enable Functions service')
|
32
|
+
parser.add_argument('--messaging', action='store_true', help='Enable Messaging service')
|
33
|
+
parser.add_argument('--locale', action='store_true', help='Enable Locale service')
|
34
|
+
parser.add_argument('--avatars', action='store_true', help='Enable Avatars service')
|
35
|
+
parser.add_argument('--all', action='store_true', help='Enable all services')
|
36
|
+
return parser.parse_args()
|
37
|
+
|
22
38
|
# Load environment variables from .env file
|
23
39
|
load_dotenv()
|
24
40
|
|
@@ -36,28 +52,41 @@ client.set_endpoint(endpoint)
|
|
36
52
|
client.set_project(project_id)
|
37
53
|
client.set_key(api_key)
|
38
54
|
|
39
|
-
# Initialize tools manager
|
55
|
+
# Initialize tools manager
|
40
56
|
tools_manager = ToolManager()
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
57
|
+
|
58
|
+
def register_services(args):
|
59
|
+
# If --all is specified, enable all services
|
60
|
+
if args.all:
|
61
|
+
args.databases = args.users = args.teams = args.storage = True
|
62
|
+
args.functions = args.messaging = args.locale = args.avatars = True
|
63
|
+
|
64
|
+
# Register services based on CLI arguments
|
65
|
+
if args.databases:
|
66
|
+
tools_manager.register_service(Service(Databases(client), "databases"))
|
67
|
+
if args.users:
|
68
|
+
tools_manager.register_service(Service(Users(client), "users"))
|
69
|
+
if args.teams:
|
70
|
+
tools_manager.register_service(Service(Teams(client), "teams"))
|
71
|
+
if args.storage:
|
72
|
+
tools_manager.register_service(Service(Storage(client), "storage"))
|
73
|
+
if args.functions:
|
74
|
+
tools_manager.register_service(Service(Functions(client), "functions"))
|
75
|
+
if args.messaging:
|
76
|
+
tools_manager.register_service(Service(Messaging(client), "messaging"))
|
77
|
+
if args.locale:
|
78
|
+
tools_manager.register_service(Service(Locale(client), "locale"))
|
79
|
+
if args.avatars:
|
80
|
+
tools_manager.register_service(Service(Avatars(client), "avatars"))
|
81
|
+
|
82
|
+
# If no services were specified, enable databases by default
|
83
|
+
if not any([args.databases, args.users, args.teams, args.storage,
|
84
|
+
args.functions, args.messaging, args.locale, args.avatars]):
|
85
|
+
tools_manager.register_service(Service(Databases(client), "databases"))
|
49
86
|
|
50
87
|
async def serve() -> Server:
|
51
88
|
server = Server("Appwrite MCP Server")
|
52
89
|
|
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
90
|
@server.list_tools()
|
62
91
|
async def handle_list_tools() -> list[types.Tool]:
|
63
92
|
return tools_manager.get_all_tools()
|
@@ -86,6 +115,9 @@ async def serve() -> Server:
|
|
86
115
|
return server
|
87
116
|
|
88
117
|
async def _run():
|
118
|
+
args = parse_args()
|
119
|
+
register_services(args)
|
120
|
+
|
89
121
|
async with mcp.server.stdio.stdio_server() as (read_stream, write_stream):
|
90
122
|
server = await serve()
|
91
123
|
await server.run(
|
@@ -93,7 +125,7 @@ async def _run():
|
|
93
125
|
write_stream,
|
94
126
|
InitializationOptions(
|
95
127
|
server_name="appwrite",
|
96
|
-
server_version="0.1.
|
128
|
+
server_version="0.1.3",
|
97
129
|
capabilities=server.get_capabilities(
|
98
130
|
notification_options=NotificationOptions(),
|
99
131
|
experimental_capabilities={},
|
@@ -1,6 +1,6 @@
|
|
1
1
|
version = 1
|
2
2
|
revision = 1
|
3
|
-
requires-python = ">=3.
|
3
|
+
requires-python = ">=3.12"
|
4
4
|
|
5
5
|
[[package]]
|
6
6
|
name = "annotated-types"
|
@@ -18,6 +18,7 @@ source = { registry = "https://pypi.org/simple" }
|
|
18
18
|
dependencies = [
|
19
19
|
{ name = "idna" },
|
20
20
|
{ name = "sniffio" },
|
21
|
+
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
21
22
|
]
|
22
23
|
sdist = { url = "https://files.pythonhosted.org/packages/a3/73/199a98fc2dae33535d6b8e8e6ec01f8c1d76c9adb096c6b7d64823038cde/anyio-4.8.0.tar.gz", hash = "sha256:1d9fe889df5212298c0c0723fa20479d1b94883a2df44bd3897aa91083316f7a", size = 181126 }
|
23
24
|
wheels = [
|
@@ -26,14 +27,14 @@ wheels = [
|
|
26
27
|
|
27
28
|
[[package]]
|
28
29
|
name = "appwrite"
|
29
|
-
version = "
|
30
|
+
version = "9.0.2"
|
30
31
|
source = { registry = "https://pypi.org/simple" }
|
31
32
|
dependencies = [
|
32
33
|
{ name = "requests" },
|
33
34
|
]
|
34
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
35
|
+
sdist = { url = "https://files.pythonhosted.org/packages/8f/e4/f0d2b7161646876ab0b4dc9ab04cdb78679dd8f38cc62fe2b7a54c258044/appwrite-9.0.2.tar.gz", hash = "sha256:db0eef137e6a28743c9bed945134df0aa243e2829ac93c3b39b1070f76f525d9", size = 27620 }
|
35
36
|
wheels = [
|
36
|
-
{ url = "https://files.pythonhosted.org/packages/
|
37
|
+
{ url = "https://files.pythonhosted.org/packages/5d/2a/14cf02958d2790e109c2a10cb20cea58c1a069f5fac95b069f3cfc9c6c84/appwrite-9.0.2-py3-none-any.whl", hash = "sha256:0dbede0679f75bd2f890a227d44eca7e4e9abb420222e2fe55ea44ffbe4a1d74", size = 35307 },
|
37
38
|
]
|
38
39
|
|
39
40
|
[[package]]
|
@@ -51,6 +52,19 @@ version = "3.4.1"
|
|
51
52
|
source = { registry = "https://pypi.org/simple" }
|
52
53
|
sdist = { url = "https://files.pythonhosted.org/packages/16/b0/572805e227f01586461c80e0fd25d65a2115599cc9dad142fee4b747c357/charset_normalizer-3.4.1.tar.gz", hash = "sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3", size = 123188 }
|
53
54
|
wheels = [
|
55
|
+
{ url = "https://files.pythonhosted.org/packages/0a/9a/dd1e1cdceb841925b7798369a09279bd1cf183cef0f9ddf15a3a6502ee45/charset_normalizer-3.4.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545", size = 196105 },
|
56
|
+
{ url = "https://files.pythonhosted.org/packages/d3/8c/90bfabf8c4809ecb648f39794cf2a84ff2e7d2a6cf159fe68d9a26160467/charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7", size = 140404 },
|
57
|
+
{ url = "https://files.pythonhosted.org/packages/ad/8f/e410d57c721945ea3b4f1a04b74f70ce8fa800d393d72899f0a40526401f/charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757", size = 150423 },
|
58
|
+
{ url = "https://files.pythonhosted.org/packages/f0/b8/e6825e25deb691ff98cf5c9072ee0605dc2acfca98af70c2d1b1bc75190d/charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa", size = 143184 },
|
59
|
+
{ url = "https://files.pythonhosted.org/packages/3e/a2/513f6cbe752421f16d969e32f3583762bfd583848b763913ddab8d9bfd4f/charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d", size = 145268 },
|
60
|
+
{ url = "https://files.pythonhosted.org/packages/74/94/8a5277664f27c3c438546f3eb53b33f5b19568eb7424736bdc440a88a31f/charset_normalizer-3.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616", size = 147601 },
|
61
|
+
{ url = "https://files.pythonhosted.org/packages/7c/5f/6d352c51ee763623a98e31194823518e09bfa48be2a7e8383cf691bbb3d0/charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b", size = 141098 },
|
62
|
+
{ url = "https://files.pythonhosted.org/packages/78/d4/f5704cb629ba5ab16d1d3d741396aec6dc3ca2b67757c45b0599bb010478/charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d", size = 149520 },
|
63
|
+
{ url = "https://files.pythonhosted.org/packages/c5/96/64120b1d02b81785f222b976c0fb79a35875457fa9bb40827678e54d1bc8/charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a", size = 152852 },
|
64
|
+
{ url = "https://files.pythonhosted.org/packages/84/c9/98e3732278a99f47d487fd3468bc60b882920cef29d1fa6ca460a1fdf4e6/charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9", size = 150488 },
|
65
|
+
{ url = "https://files.pythonhosted.org/packages/13/0e/9c8d4cb99c98c1007cc11eda969ebfe837bbbd0acdb4736d228ccaabcd22/charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1", size = 146192 },
|
66
|
+
{ url = "https://files.pythonhosted.org/packages/b2/21/2b6b5b860781a0b49427309cb8670785aa543fb2178de875b87b9cc97746/charset_normalizer-3.4.1-cp312-cp312-win32.whl", hash = "sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35", size = 95550 },
|
67
|
+
{ url = "https://files.pythonhosted.org/packages/21/5b/1b390b03b1d16c7e382b561c5329f83cc06623916aab983e8ab9239c7d5c/charset_normalizer-3.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f", size = 102785 },
|
54
68
|
{ url = "https://files.pythonhosted.org/packages/38/94/ce8e6f63d18049672c76d07d119304e1e2d7c6098f0841b51c666e9f44a0/charset_normalizer-3.4.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda", size = 195698 },
|
55
69
|
{ url = "https://files.pythonhosted.org/packages/24/2e/dfdd9770664aae179a96561cc6952ff08f9a8cd09a908f259a9dfa063568/charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313", size = 140162 },
|
56
70
|
{ url = "https://files.pythonhosted.org/packages/24/4e/f646b9093cff8fc86f2d60af2de4dc17c759de9d554f130b140ea4738ca6/charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9", size = 150263 },
|
@@ -182,7 +196,7 @@ cli = [
|
|
182
196
|
|
183
197
|
[[package]]
|
184
198
|
name = "mcp-server-appwrite"
|
185
|
-
version = "0.1.
|
199
|
+
version = "0.1.3"
|
186
200
|
source = { editable = "." }
|
187
201
|
dependencies = [
|
188
202
|
{ name = "appwrite" },
|
@@ -191,7 +205,7 @@ dependencies = [
|
|
191
205
|
|
192
206
|
[package.metadata]
|
193
207
|
requires-dist = [
|
194
|
-
{ name = "appwrite", specifier = ">=
|
208
|
+
{ name = "appwrite", specifier = ">=9.0.2" },
|
195
209
|
{ name = "mcp", extras = ["cli"], specifier = ">=1.3.0" },
|
196
210
|
]
|
197
211
|
|
@@ -227,6 +241,20 @@ dependencies = [
|
|
227
241
|
]
|
228
242
|
sdist = { url = "https://files.pythonhosted.org/packages/fc/01/f3e5ac5e7c25833db5eb555f7b7ab24cd6f8c322d3a3ad2d67a952dc0abc/pydantic_core-2.27.2.tar.gz", hash = "sha256:eb026e5a4c1fee05726072337ff51d1efb6f59090b7da90d30ea58625b1ffb39", size = 413443 }
|
229
243
|
wheels = [
|
244
|
+
{ url = "https://files.pythonhosted.org/packages/d6/74/51c8a5482ca447871c93e142d9d4a92ead74de6c8dc5e66733e22c9bba89/pydantic_core-2.27.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9e0c8cfefa0ef83b4da9588448b6d8d2a2bf1a53c3f1ae5fca39eb3061e2f0b0", size = 1893127 },
|
245
|
+
{ url = "https://files.pythonhosted.org/packages/d3/f3/c97e80721735868313c58b89d2de85fa80fe8dfeeed84dc51598b92a135e/pydantic_core-2.27.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:83097677b8e3bd7eaa6775720ec8e0405f1575015a463285a92bfdfe254529ef", size = 1811340 },
|
246
|
+
{ url = "https://files.pythonhosted.org/packages/9e/91/840ec1375e686dbae1bd80a9e46c26a1e0083e1186abc610efa3d9a36180/pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:172fce187655fece0c90d90a678424b013f8fbb0ca8b036ac266749c09438cb7", size = 1822900 },
|
247
|
+
{ url = "https://files.pythonhosted.org/packages/f6/31/4240bc96025035500c18adc149aa6ffdf1a0062a4b525c932065ceb4d868/pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:519f29f5213271eeeeb3093f662ba2fd512b91c5f188f3bb7b27bc5973816934", size = 1869177 },
|
248
|
+
{ url = "https://files.pythonhosted.org/packages/fa/20/02fbaadb7808be578317015c462655c317a77a7c8f0ef274bc016a784c54/pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:05e3a55d124407fffba0dd6b0c0cd056d10e983ceb4e5dbd10dda135c31071d6", size = 2038046 },
|
249
|
+
{ url = "https://files.pythonhosted.org/packages/06/86/7f306b904e6c9eccf0668248b3f272090e49c275bc488a7b88b0823444a4/pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c3ed807c7b91de05e63930188f19e921d1fe90de6b4f5cd43ee7fcc3525cb8c", size = 2685386 },
|
250
|
+
{ url = "https://files.pythonhosted.org/packages/8d/f0/49129b27c43396581a635d8710dae54a791b17dfc50c70164866bbf865e3/pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fb4aadc0b9a0c063206846d603b92030eb6f03069151a625667f982887153e2", size = 1997060 },
|
251
|
+
{ url = "https://files.pythonhosted.org/packages/0d/0f/943b4af7cd416c477fd40b187036c4f89b416a33d3cc0ab7b82708a667aa/pydantic_core-2.27.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:28ccb213807e037460326424ceb8b5245acb88f32f3d2777427476e1b32c48c4", size = 2004870 },
|
252
|
+
{ url = "https://files.pythonhosted.org/packages/35/40/aea70b5b1a63911c53a4c8117c0a828d6790483f858041f47bab0b779f44/pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:de3cd1899e2c279b140adde9357c4495ed9d47131b4a4eaff9052f23398076b3", size = 1999822 },
|
253
|
+
{ url = "https://files.pythonhosted.org/packages/f2/b3/807b94fd337d58effc5498fd1a7a4d9d59af4133e83e32ae39a96fddec9d/pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:220f892729375e2d736b97d0e51466252ad84c51857d4d15f5e9692f9ef12be4", size = 2130364 },
|
254
|
+
{ url = "https://files.pythonhosted.org/packages/fc/df/791c827cd4ee6efd59248dca9369fb35e80a9484462c33c6649a8d02b565/pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a0fcd29cd6b4e74fe8ddd2c90330fd8edf2e30cb52acda47f06dd615ae72da57", size = 2158303 },
|
255
|
+
{ url = "https://files.pythonhosted.org/packages/9b/67/4e197c300976af185b7cef4c02203e175fb127e414125916bf1128b639a9/pydantic_core-2.27.2-cp312-cp312-win32.whl", hash = "sha256:1e2cb691ed9834cd6a8be61228471d0a503731abfb42f82458ff27be7b2186fc", size = 1834064 },
|
256
|
+
{ url = "https://files.pythonhosted.org/packages/1f/ea/cd7209a889163b8dcca139fe32b9687dd05249161a3edda62860430457a5/pydantic_core-2.27.2-cp312-cp312-win_amd64.whl", hash = "sha256:cc3f1a99a4f4f9dd1de4fe0312c114e740b5ddead65bb4102884b384c15d8bc9", size = 1989046 },
|
257
|
+
{ url = "https://files.pythonhosted.org/packages/bc/49/c54baab2f4658c26ac633d798dab66b4c3a9bbf47cff5284e9c182f4137a/pydantic_core-2.27.2-cp312-cp312-win_arm64.whl", hash = "sha256:3911ac9284cd8a1792d3cb26a2da18f3ca26c6908cc434a18f730dc0db7bfa3b", size = 1885092 },
|
230
258
|
{ url = "https://files.pythonhosted.org/packages/41/b1/9bc383f48f8002f99104e3acff6cba1231b29ef76cfa45d1506a5cad1f84/pydantic_core-2.27.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7d14bd329640e63852364c306f4d23eb744e0f8193148d4044dd3dacdaacbd8b", size = 1892709 },
|
231
259
|
{ url = "https://files.pythonhosted.org/packages/10/6c/e62b8657b834f3eb2961b49ec8e301eb99946245e70bf42c8817350cbefc/pydantic_core-2.27.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82f91663004eb8ed30ff478d77c4d1179b3563df6cdb15c0817cd1cdaf34d154", size = 1811273 },
|
232
260
|
{ url = "https://files.pythonhosted.org/packages/ba/15/52cfe49c8c986e081b863b102d6b859d9defc63446b642ccbbb3742bf371/pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71b24c7d61131bb83df10cc7e687433609963a944ccf45190cfc21e0887b08c9", size = 1823027 },
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{mcp_server_appwrite-0.1.1 → mcp_server_appwrite-0.1.3}/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.1 → mcp_server_appwrite-0.1.3}/src/mcp_server_appwrite/tool_manager.py
RENAMED
File without changes
|