aiohttp-tiny-mcp 0.2.5__tar.gz → 0.2.6__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 (43) hide show
  1. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/PKG-INFO +1 -1
  2. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/pyproject.toml +2 -2
  3. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/pyproject.toml.orig +6 -4
  4. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/models.py +16 -8
  5. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/protocol/v2026_07_28.py +2 -2
  6. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/LICENSE +0 -0
  7. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/README.md +0 -0
  8. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/__init__.py +0 -0
  9. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/adapter.py +0 -0
  10. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/auth.py +0 -0
  11. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/client.py +0 -0
  12. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/client_base.py +0 -0
  13. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/console/__init__.py +0 -0
  14. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/console/console.css +0 -0
  15. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/console/console.js +0 -0
  16. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/console/index.html +0 -0
  17. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/core.py +0 -0
  18. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/dispatcher.py +0 -0
  19. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/endpoint.py +0 -0
  20. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/exchange.py +0 -0
  21. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/http_sse.py +0 -0
  22. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/hub.py +0 -0
  23. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/namespaces.py +0 -0
  24. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/postgres.py +0 -0
  25. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/protocol/__init__.py +0 -0
  26. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/protocol/selection.py +0 -0
  27. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/protocol/v2024_11_05.py +0 -0
  28. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/protocol/v2025_03_26.py +0 -0
  29. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/protocol/v2025_06_18.py +0 -0
  30. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/protocol/v2025_11_25.py +0 -0
  31. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/py.typed +0 -0
  32. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/redis.py +0 -0
  33. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/registry.py +0 -0
  34. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/request_state.py +0 -0
  35. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/schema.py +0 -0
  36. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/sessions.py +0 -0
  37. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/specs.py +0 -0
  38. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/sqlite.py +0 -0
  39. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/sse.py +0 -0
  40. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/stdio.py +0 -0
  41. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/stdio_client.py +0 -0
  42. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/src/aiohttp_tiny_mcp/subscriptions.py +0 -0
  43. {aiohttp_tiny_mcp-0.2.5 → aiohttp_tiny_mcp-0.2.6}/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.5
3
+ Version: 0.2.6
4
4
  Summary: Remote MCP server and client library for aiohttp
5
5
  License-Expression: Apache-2.0
6
6
  License-File: LICENSE
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "aiohttp-tiny-mcp"
3
- version = "0.2.5"
3
+ version = "0.2.6"
4
4
  description = "Remote MCP server and client library for aiohttp"
5
5
  readme = "README.md"
6
6
  license = "Apache-2.0"
@@ -71,7 +71,7 @@ source-include = [
71
71
 
72
72
  [tool.pytest.ini_options]
73
73
  asyncio_mode = "auto"
74
- timeout = 1
74
+ timeout = 30
75
75
  filterwarnings = ["error::mcp.shared.exceptions.MCPDeprecationWarning"]
76
76
  testpaths = [
77
77
  "tests",
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "aiohttp-tiny-mcp"
3
- version = "0.2.5"
3
+ version = "0.2.6"
4
4
  description = "Remote MCP server and client library for aiohttp"
5
5
  readme = "README.md"
6
6
  license = "Apache-2.0"
@@ -77,9 +77,11 @@ build-backend = "uv_build"
77
77
 
78
78
  [tool.pytest.ini_options]
79
79
  asyncio_mode = "auto"
80
- # A test gets a second. A hung one then fails and names itself rather than
81
- # stopping the run. The few that pay for a process start say so with a marker.
82
- timeout = 1
80
+ # The guard against a hung test, not a measure of how fast the machine is. A
81
+ # loaded runner is an order of magnitude slower than a laptop, so a budget
82
+ # tight enough to catch a wait fails on a slow disk instead. A test that must
83
+ # not wait carries its own marker.
84
+ timeout = 30
83
85
  # Calling a deprecated SDK method is deliberate where it happens, and says so
84
86
  # with `pytest.warns`. Anywhere else it is a finding, not a log line.
85
87
  filterwarnings = ["error::mcp.shared.exceptions.MCPDeprecationWarning"]
@@ -80,8 +80,8 @@ ContentBlock = Annotated[
80
80
  class ResultModel(Model):
81
81
  """resultType is required on 2026-07-28; legacy adapters leave it unset."""
82
82
 
83
- result_type: Literal["complete"] | None = Field(None, alias="resultType")
84
- meta: Meta | None = Field(None, alias="_meta")
83
+ result_type: Literal["complete"] | None = Field(default=None, alias="resultType")
84
+ meta: Meta | None = Field(default=None, alias="_meta")
85
85
 
86
86
 
87
87
  class CacheableResult(ResultModel):
@@ -272,15 +272,23 @@ class ErrorResponse(Model):
272
272
  class Meta(Model):
273
273
  """Wire _meta, aliased because Pydantic treats leading underscores as private."""
274
274
 
275
- protocol_version: str | None = Field(None, alias="io.modelcontextprotocol/protocolVersion")
276
- client_info: Implementation | None = Field(None, alias="io.modelcontextprotocol/clientInfo")
275
+ protocol_version: str | None = Field(
276
+ default=None, alias="io.modelcontextprotocol/protocolVersion"
277
+ )
278
+ client_info: Implementation | None = Field(
279
+ default=None, alias="io.modelcontextprotocol/clientInfo"
280
+ )
277
281
  client_capabilities: dict[str, Any] | None = Field(
278
- None, alias="io.modelcontextprotocol/clientCapabilities"
282
+ default=None, alias="io.modelcontextprotocol/clientCapabilities"
279
283
  )
280
284
  #: 2026-07-28 server identity, included in every result.
281
- server_info: Implementation | None = Field(None, alias="io.modelcontextprotocol/serverInfo")
282
- progress_token: str | int | None = Field(None, alias="progressToken")
283
- log_level: str | None = Field(None, alias="io.modelcontextprotocol/logLevel") # draft, SEP-2575
285
+ server_info: Implementation | None = Field(
286
+ default=None, alias="io.modelcontextprotocol/serverInfo"
287
+ )
288
+ progress_token: str | int | None = Field(default=None, alias="progressToken")
289
+ log_level: str | None = Field(
290
+ default=None, alias="io.modelcontextprotocol/logLevel"
291
+ ) # draft, SEP-2575
284
292
 
285
293
 
286
294
  class Params(Model):
@@ -123,14 +123,14 @@ class DiscoverResult(Model):
123
123
  instructions: str | None = None
124
124
  ttl_ms: int | None = None
125
125
  cache_scope: Literal["private", "public"] | None = None
126
- meta: Meta | None = Field(None, alias="_meta")
126
+ meta: Meta | None = Field(default=None, alias="_meta")
127
127
 
128
128
 
129
129
  class InputRequiredResult(Model):
130
130
  result_type: Literal["input_required"] = "input_required"
131
131
  input_requests: dict[str, Any]
132
132
  request_state: str | None = None
133
- meta: Meta | None = Field(None, alias="_meta")
133
+ meta: Meta | None = Field(default=None, alias="_meta")
134
134
 
135
135
 
136
136
  class Adapter2026_07_28(Adapter): # noqa: N801 -- revision date, greppable against the spec