aiohttp-tiny-mcp 0.1.0__tar.gz → 0.2.1__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.
Files changed (41) hide show
  1. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/PKG-INFO +4 -1
  2. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/pyproject.toml +6 -1
  3. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/pyproject.toml.orig +6 -1
  4. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/core.py +18 -3
  5. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/__init__.py +0 -0
  6. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/adapter.py +0 -0
  7. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/auth.py +0 -0
  8. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/client.py +0 -0
  9. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/client_base.py +0 -0
  10. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/console/__init__.py +0 -0
  11. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/console/console.css +0 -0
  12. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/console/console.js +0 -0
  13. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/console/index.html +0 -0
  14. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/dispatcher.py +0 -0
  15. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/endpoint.py +0 -0
  16. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/exchange.py +0 -0
  17. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/http_sse.py +0 -0
  18. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/hub.py +0 -0
  19. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/models.py +0 -0
  20. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/namespaces.py +0 -0
  21. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/postgres.py +0 -0
  22. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/protocol/__init__.py +0 -0
  23. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/protocol/selection.py +0 -0
  24. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/protocol/v2024_11_05.py +0 -0
  25. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/protocol/v2025_03_26.py +0 -0
  26. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/protocol/v2025_06_18.py +0 -0
  27. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/protocol/v2025_11_25.py +0 -0
  28. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/protocol/v2026_07_28.py +0 -0
  29. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/py.typed +0 -0
  30. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/redis.py +0 -0
  31. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/registry.py +0 -0
  32. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/request_state.py +0 -0
  33. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/schema.py +0 -0
  34. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/sessions.py +0 -0
  35. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/specs.py +0 -0
  36. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/sqlite.py +0 -0
  37. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/sse.py +0 -0
  38. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/stdio.py +0 -0
  39. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/stdio_client.py +0 -0
  40. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/subscriptions.py +0 -0
  41. {aiohttp_tiny_mcp-0.1.0 → aiohttp_tiny_mcp-0.2.1}/src/aiohttp_tiny_mcp/testing.py +0 -0
@@ -1,12 +1,15 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: aiohttp-tiny-mcp
3
- Version: 0.1.0
3
+ Version: 0.2.1
4
4
  Requires-Dist: aiohttp>=3.14
5
5
  Requires-Dist: pydantic>=2.13
6
6
  Requires-Dist: psycopg[binary,pool]>=3 ; extra == 'postgres'
7
7
  Requires-Dist: redis>=5 ; extra == 'redis'
8
8
  Requires-Dist: aiosqlite>=0.20 ; extra == 'sqlite'
9
9
  Requires-Python: >=3.10
10
+ Project-URL: Documentation, https://mosquito.github.io/aiohttp-tiny-mcp/
11
+ Project-URL: Repository, https://github.com/mosquito/aiohttp-tiny-mcp
12
+ Project-URL: Issues, https://github.com/mosquito/aiohttp-tiny-mcp/issues
10
13
  Provides-Extra: postgres
11
14
  Provides-Extra: redis
12
15
  Provides-Extra: sqlite
@@ -1,12 +1,17 @@
1
1
  [project]
2
2
  name = "aiohttp-tiny-mcp"
3
- version = "0.1.0"
3
+ version = "0.2.1"
4
4
  requires-python = ">=3.10"
5
5
  dependencies = [
6
6
  "aiohttp>=3.14",
7
7
  "pydantic>=2.13",
8
8
  ]
9
9
 
10
+ [project.urls]
11
+ Documentation = "https://mosquito.github.io/aiohttp-tiny-mcp/"
12
+ Repository = "https://github.com/mosquito/aiohttp-tiny-mcp"
13
+ Issues = "https://github.com/mosquito/aiohttp-tiny-mcp/issues"
14
+
10
15
  [project.optional-dependencies]
11
16
  sqlite = ["aiosqlite>=0.20"]
12
17
  redis = ["redis>=5"]
@@ -1,12 +1,17 @@
1
1
  [project]
2
2
  name = "aiohttp-tiny-mcp"
3
- version = "0.1.0"
3
+ version = "0.2.1"
4
4
  requires-python = ">=3.10"
5
5
  dependencies = [
6
6
  "aiohttp>=3.14",
7
7
  "pydantic>=2.13",
8
8
  ]
9
9
 
10
+ [project.urls]
11
+ Documentation = "https://mosquito.github.io/aiohttp-tiny-mcp/"
12
+ Repository = "https://github.com/mosquito/aiohttp-tiny-mcp"
13
+ Issues = "https://github.com/mosquito/aiohttp-tiny-mcp/issues"
14
+
10
15
  [project.optional-dependencies]
11
16
  # A hub and a session store on one SQLite file: aiohttp_tiny_mcp.sqlite.
12
17
  sqlite = ["aiosqlite>=0.20"]
@@ -13,7 +13,22 @@ from pydantic import BaseModel
13
13
  from .models import Implementation, Params
14
14
 
15
15
 
16
- class Operation(str, Enum):
16
+ class StringEnum(str, Enum):
17
+ """A string enum that formats as its value on every Python.
18
+
19
+ From 3.11 a plain `str, Enum` formats as `Class.MEMBER` where 3.10 gave
20
+ the value, so a name reaching a message or a wire field would change with
21
+ the interpreter.
22
+ """
23
+
24
+ def __str__(self) -> str:
25
+ return str(self.value)
26
+
27
+ def __format__(self, format_spec: str) -> str:
28
+ return format(str(self), format_spec)
29
+
30
+
31
+ class Operation(StringEnum):
17
32
  DESCRIBE = "describe"
18
33
  HANDSHAKE_COMPLETE = "handshake_complete"
19
34
  PING = "ping"
@@ -62,7 +77,7 @@ class ClientProfile:
62
77
  log_level: str | None = None
63
78
 
64
79
 
65
- class FailureKind(str, Enum):
80
+ class FailureKind(StringEnum):
66
81
  PARSE = "parse"
67
82
  MALFORMED = "malformed"
68
83
  UNKNOWN_METHOD = "unknown_method"
@@ -252,7 +267,7 @@ def elicit_cancel() -> dict[str, Any]:
252
267
  return {"action": "cancel"}
253
268
 
254
269
 
255
- class AnswerAction(str, Enum):
270
+ class AnswerAction(StringEnum):
256
271
  """What a client did with one input request (`ElicitResult.action`)."""
257
272
 
258
273
  ACCEPT = "accept"