aiohttp-tiny-mcp 0.2.2__tar.gz → 0.2.4__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.
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/PKG-INFO +18 -19
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/README.md +17 -18
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/pyproject.toml +1 -1
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/pyproject.toml.orig +1 -1
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/LICENSE +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/__init__.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/adapter.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/auth.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/client.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/client_base.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/console/__init__.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/console/console.css +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/console/console.js +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/console/index.html +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/core.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/dispatcher.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/endpoint.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/exchange.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/http_sse.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/hub.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/models.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/namespaces.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/postgres.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/__init__.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/selection.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2024_11_05.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2025_03_26.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2025_06_18.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2025_11_25.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2026_07_28.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/py.typed +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/redis.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/registry.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/request_state.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/schema.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/sessions.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/specs.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/sqlite.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/sse.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/stdio.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/stdio_client.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/subscriptions.py +0 -0
- {aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/testing.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aiohttp-tiny-mcp
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: Remote MCP server and client library for aiohttp
|
|
5
5
|
License-Expression: Apache-2.0
|
|
6
6
|
License-File: LICENSE
|
|
@@ -41,15 +41,14 @@ Description-Content-Type: text/markdown
|
|
|
41
41
|
# aiohttp-tiny-mcp
|
|
42
42
|
|
|
43
43
|
[](https://github.com/mosquito/aiohttp-tiny-mcp/actions/workflows/tests.yml)
|
|
44
|
-
[](https://pypi.org/project/aiohttp-tiny-mcp/)
|
|
44
|
+
[](https://github.com/mosquito/aiohttp-tiny-mcp/releases)
|
|
45
|
+
[](https://github.com/mosquito/aiohttp-tiny-mcp/blob/master/LICENSE)
|
|
47
46
|
[](https://mosquito.github.io/aiohttp-tiny-mcp/)
|
|
48
47
|
|
|
49
48
|
[Documentation](https://mosquito.github.io/aiohttp-tiny-mcp/) ·
|
|
50
49
|
[Repository](https://github.com/mosquito/aiohttp-tiny-mcp) ·
|
|
51
50
|
[Issues](https://github.com/mosquito/aiohttp-tiny-mcp/issues) ·
|
|
52
|
-
[
|
|
51
|
+
[Releases](https://github.com/mosquito/aiohttp-tiny-mcp/releases)
|
|
53
52
|
|
|
54
53
|
An MCP server and client library for aiohttp, designed for **remote MCP over
|
|
55
54
|
HTTP across multiple processes and servers**.
|
|
@@ -91,7 +90,7 @@ app.cleanup_ctx.append(storage.cleanup_ctx)
|
|
|
91
90
|
```
|
|
92
91
|
|
|
93
92
|
For Redis/PostgreSQL setup, backend parameters, cleanup, and deployment
|
|
94
|
-
constraints, see [stores and hubs](
|
|
93
|
+
constraints, see [stores and hubs](https://mosquito.github.io/aiohttp-tiny-mcp/deployment/stores.html).
|
|
95
94
|
|
|
96
95
|
## Start a server
|
|
97
96
|
|
|
@@ -101,7 +100,7 @@ Python 3.10+ is required. Runtime dependencies are `aiohttp` and `pydantic`.
|
|
|
101
100
|
pip install aiohttp-tiny-mcp
|
|
102
101
|
```
|
|
103
102
|
|
|
104
|
-
For a first runnable server and client, follow the [quickstart](
|
|
103
|
+
For a first runnable server and client, follow the [quickstart](https://mosquito.github.io/aiohttp-tiny-mcp/quickstart.html).
|
|
105
104
|
The example below adds a resource and a tool that asks for confirmation. Save
|
|
106
105
|
it as `server.py`. The deployment result is illustrative; replace it with your
|
|
107
106
|
application's operation.
|
|
@@ -180,7 +179,7 @@ docstring become its name and description. `ex: Exchange` is supplied by the
|
|
|
180
179
|
library, so the caller only supplies `service`. `ex.ask` requests a decision
|
|
181
180
|
from the client. Put irreversible work after the final question: some revisions
|
|
182
181
|
restart the handler when the answer arrives. Python locals are not persisted
|
|
183
|
-
automatically. See [Asking the user](
|
|
182
|
+
automatically. See [Asking the user](https://mosquito.github.io/aiohttp-tiny-mcp/guide/asking.html).
|
|
184
183
|
|
|
185
184
|
## Call it from Python
|
|
186
185
|
|
|
@@ -210,7 +209,7 @@ async with Client(url, adapter, on_ask=answer, log_level="info") as client:
|
|
|
210
209
|
```
|
|
211
210
|
|
|
212
211
|
The subscription loop waits for a resource-change event. The server snippet
|
|
213
|
-
above does not publish changes; see [Notifications](
|
|
212
|
+
above does not publish changes; see [Notifications](https://mosquito.github.io/aiohttp-tiny-mcp/guide/notifications.html)
|
|
214
213
|
for that part, or omit the loop when testing only the tool call.
|
|
215
214
|
`StdioClient` provides the corresponding client over a subprocess's stdin/stdout.
|
|
216
215
|
|
|
@@ -218,25 +217,25 @@ for that part, or omit the loop when testing only the tool call.
|
|
|
218
217
|
|
|
219
218
|
The project includes reproducible HTTP and stdio benchmarks against the
|
|
220
219
|
official SDK. Results depend on Python, hardware, and protocol revision; see
|
|
221
|
-
[the benchmark methodology and full results](
|
|
220
|
+
[the benchmark methodology and full results](https://mosquito.github.io/aiohttp-tiny-mcp/reference/benchmarks.html)
|
|
222
221
|
instead of treating a README number as a guarantee.
|
|
223
222
|
|
|
224
223
|
## Documentation
|
|
225
224
|
|
|
226
|
-
Start with [the documentation overview](
|
|
225
|
+
Start with [the documentation overview](https://mosquito.github.io/aiohttp-tiny-mcp/), then follow:
|
|
227
226
|
|
|
228
|
-
1. [Tools, resources, and prompts](
|
|
229
|
-
2. [Quickstart](
|
|
230
|
-
3. [How the server fits together](
|
|
231
|
-
4. [Using Exchange](
|
|
232
|
-
5. [Authentication](
|
|
233
|
-
6. [Stores and hubs](
|
|
227
|
+
1. [Tools, resources, and prompts](https://mosquito.github.io/aiohttp-tiny-mcp/concepts.html): what to expose and what the client sees.
|
|
228
|
+
2. [Quickstart](https://mosquito.github.io/aiohttp-tiny-mcp/quickstart.html): a complete server, launch command, and client call.
|
|
229
|
+
3. [How the server fits together](https://mosquito.github.io/aiohttp-tiny-mcp/pieces.html): a conversation across two workers and each object's lifetime.
|
|
230
|
+
4. [Using Exchange](https://mosquito.github.io/aiohttp-tiny-mcp/guide/exchange.html): request context, progress, questions, and state.
|
|
231
|
+
5. [Authentication](https://mosquito.github.io/aiohttp-tiny-mcp/guide/auth.html): bearer-token verification and OAuth resource metadata.
|
|
232
|
+
6. [Stores and hubs](https://mosquito.github.io/aiohttp-tiny-mcp/deployment/stores.html): shared backend contracts and deployment requirements.
|
|
234
233
|
|
|
235
234
|
The server supports `2026-07-28`, `2025-11-25`, `2025-06-18`, `2025-03-26`
|
|
236
235
|
and `2024-11-05`.
|
|
237
236
|
Delivery mechanisms and client support differ; see the
|
|
238
|
-
[compatibility table](
|
|
239
|
-
[implementation coverage](
|
|
237
|
+
[compatibility table](https://mosquito.github.io/aiohttp-tiny-mcp/reference/parity.html) and
|
|
238
|
+
[implementation coverage](https://mosquito.github.io/aiohttp-tiny-mcp/reference/verification.html#not-implemented).
|
|
240
239
|
|
|
241
240
|
Documentation examples are checked by the test suite. From a source checkout:
|
|
242
241
|
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
# aiohttp-tiny-mcp
|
|
2
2
|
|
|
3
3
|
[](https://github.com/mosquito/aiohttp-tiny-mcp/actions/workflows/tests.yml)
|
|
4
|
-
[](https://pypi.org/project/aiohttp-tiny-mcp/)
|
|
4
|
+
[](https://github.com/mosquito/aiohttp-tiny-mcp/releases)
|
|
5
|
+
[](https://github.com/mosquito/aiohttp-tiny-mcp/blob/master/LICENSE)
|
|
7
6
|
[](https://mosquito.github.io/aiohttp-tiny-mcp/)
|
|
8
7
|
|
|
9
8
|
[Documentation](https://mosquito.github.io/aiohttp-tiny-mcp/) ·
|
|
10
9
|
[Repository](https://github.com/mosquito/aiohttp-tiny-mcp) ·
|
|
11
10
|
[Issues](https://github.com/mosquito/aiohttp-tiny-mcp/issues) ·
|
|
12
|
-
[
|
|
11
|
+
[Releases](https://github.com/mosquito/aiohttp-tiny-mcp/releases)
|
|
13
12
|
|
|
14
13
|
An MCP server and client library for aiohttp, designed for **remote MCP over
|
|
15
14
|
HTTP across multiple processes and servers**.
|
|
@@ -51,7 +50,7 @@ app.cleanup_ctx.append(storage.cleanup_ctx)
|
|
|
51
50
|
```
|
|
52
51
|
|
|
53
52
|
For Redis/PostgreSQL setup, backend parameters, cleanup, and deployment
|
|
54
|
-
constraints, see [stores and hubs](
|
|
53
|
+
constraints, see [stores and hubs](https://mosquito.github.io/aiohttp-tiny-mcp/deployment/stores.html).
|
|
55
54
|
|
|
56
55
|
## Start a server
|
|
57
56
|
|
|
@@ -61,7 +60,7 @@ Python 3.10+ is required. Runtime dependencies are `aiohttp` and `pydantic`.
|
|
|
61
60
|
pip install aiohttp-tiny-mcp
|
|
62
61
|
```
|
|
63
62
|
|
|
64
|
-
For a first runnable server and client, follow the [quickstart](
|
|
63
|
+
For a first runnable server and client, follow the [quickstart](https://mosquito.github.io/aiohttp-tiny-mcp/quickstart.html).
|
|
65
64
|
The example below adds a resource and a tool that asks for confirmation. Save
|
|
66
65
|
it as `server.py`. The deployment result is illustrative; replace it with your
|
|
67
66
|
application's operation.
|
|
@@ -140,7 +139,7 @@ docstring become its name and description. `ex: Exchange` is supplied by the
|
|
|
140
139
|
library, so the caller only supplies `service`. `ex.ask` requests a decision
|
|
141
140
|
from the client. Put irreversible work after the final question: some revisions
|
|
142
141
|
restart the handler when the answer arrives. Python locals are not persisted
|
|
143
|
-
automatically. See [Asking the user](
|
|
142
|
+
automatically. See [Asking the user](https://mosquito.github.io/aiohttp-tiny-mcp/guide/asking.html).
|
|
144
143
|
|
|
145
144
|
## Call it from Python
|
|
146
145
|
|
|
@@ -170,7 +169,7 @@ async with Client(url, adapter, on_ask=answer, log_level="info") as client:
|
|
|
170
169
|
```
|
|
171
170
|
|
|
172
171
|
The subscription loop waits for a resource-change event. The server snippet
|
|
173
|
-
above does not publish changes; see [Notifications](
|
|
172
|
+
above does not publish changes; see [Notifications](https://mosquito.github.io/aiohttp-tiny-mcp/guide/notifications.html)
|
|
174
173
|
for that part, or omit the loop when testing only the tool call.
|
|
175
174
|
`StdioClient` provides the corresponding client over a subprocess's stdin/stdout.
|
|
176
175
|
|
|
@@ -178,25 +177,25 @@ for that part, or omit the loop when testing only the tool call.
|
|
|
178
177
|
|
|
179
178
|
The project includes reproducible HTTP and stdio benchmarks against the
|
|
180
179
|
official SDK. Results depend on Python, hardware, and protocol revision; see
|
|
181
|
-
[the benchmark methodology and full results](
|
|
180
|
+
[the benchmark methodology and full results](https://mosquito.github.io/aiohttp-tiny-mcp/reference/benchmarks.html)
|
|
182
181
|
instead of treating a README number as a guarantee.
|
|
183
182
|
|
|
184
183
|
## Documentation
|
|
185
184
|
|
|
186
|
-
Start with [the documentation overview](
|
|
185
|
+
Start with [the documentation overview](https://mosquito.github.io/aiohttp-tiny-mcp/), then follow:
|
|
187
186
|
|
|
188
|
-
1. [Tools, resources, and prompts](
|
|
189
|
-
2. [Quickstart](
|
|
190
|
-
3. [How the server fits together](
|
|
191
|
-
4. [Using Exchange](
|
|
192
|
-
5. [Authentication](
|
|
193
|
-
6. [Stores and hubs](
|
|
187
|
+
1. [Tools, resources, and prompts](https://mosquito.github.io/aiohttp-tiny-mcp/concepts.html): what to expose and what the client sees.
|
|
188
|
+
2. [Quickstart](https://mosquito.github.io/aiohttp-tiny-mcp/quickstart.html): a complete server, launch command, and client call.
|
|
189
|
+
3. [How the server fits together](https://mosquito.github.io/aiohttp-tiny-mcp/pieces.html): a conversation across two workers and each object's lifetime.
|
|
190
|
+
4. [Using Exchange](https://mosquito.github.io/aiohttp-tiny-mcp/guide/exchange.html): request context, progress, questions, and state.
|
|
191
|
+
5. [Authentication](https://mosquito.github.io/aiohttp-tiny-mcp/guide/auth.html): bearer-token verification and OAuth resource metadata.
|
|
192
|
+
6. [Stores and hubs](https://mosquito.github.io/aiohttp-tiny-mcp/deployment/stores.html): shared backend contracts and deployment requirements.
|
|
194
193
|
|
|
195
194
|
The server supports `2026-07-28`, `2025-11-25`, `2025-06-18`, `2025-03-26`
|
|
196
195
|
and `2024-11-05`.
|
|
197
196
|
Delivery mechanisms and client support differ; see the
|
|
198
|
-
[compatibility table](
|
|
199
|
-
[implementation coverage](
|
|
197
|
+
[compatibility table](https://mosquito.github.io/aiohttp-tiny-mcp/reference/parity.html) and
|
|
198
|
+
[implementation coverage](https://mosquito.github.io/aiohttp-tiny-mcp/reference/verification.html#not-implemented).
|
|
200
199
|
|
|
201
200
|
Documentation examples are checked by the test suite. From a source checkout:
|
|
202
201
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/selection.py
RENAMED
|
File without changes
|
{aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2024_11_05.py
RENAMED
|
File without changes
|
{aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2025_03_26.py
RENAMED
|
File without changes
|
{aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2025_06_18.py
RENAMED
|
File without changes
|
{aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2025_11_25.py
RENAMED
|
File without changes
|
{aiohttp_tiny_mcp-0.2.2 → aiohttp_tiny_mcp-0.2.4}/src/aiohttp_tiny_mcp/protocol/v2026_07_28.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|