From 452a62ea1d9b1a729495e4b22638083b30c960ee Mon Sep 17 00:00:00 2001 From: Ciaran Sweet Date: Tue, 11 Aug 2026 13:52:22 +0100 Subject: [PATCH] chore(deps): bump mcp-toolsets-runtime to 0.4.2 0.3.0 -> 0.4.2. No breaking changes in between: 0.4.0 added `mcp_agent.host` (host helpers that import no UI framework), 0.4.1 was documentation, and 0.4.2 made the chat's tool step say what an `@state:` handle resolved to. Corrects the README's claim that handle-path receipts are "rendered on neither side", which 0.4.2 changed for the host side, and separates the two reasons no receipt is visible in this repo: nothing tags a `Kind`, and the handle form is only offered on `object`/`array` parameters while every tool here takes scalars. Co-Authored-By: Claude Opus 5 --- README.md | 19 +++++++++++++++---- pyproject.toml | 2 +- uv.lock | 8 ++++---- 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 60686ee..c355ea2 100644 --- a/README.md +++ b/README.md @@ -117,10 +117,21 @@ argument would have been, and the model is told in one line: [state used: aoi ← dataset-search/geometry, published by search_datasets] ``` -Receipts are recorded on the handle path too, but rendered on neither side — -the model wrote `@state:` itself, so the key is already in the arguments. -Nothing here tags a `Kind`, so nothing here produces a visible receipt yet; -this is what you gain the moment one does. +Receipts are recorded on the handle path too. The model is still told nothing — +it wrote `@state:` itself, so the key is already in the arguments — but +since runtime 0.4.2 the chat's tool step annotates the handle with what the key +resolved to, which the bare string does not say: + +``` +request: @state:stac-explorer/collections · untyped · 12 item(s) · from search_collections +``` + +Neither path is visible in this repo yet, for two separate reasons. Nothing tags +a `Kind`, so no parameter is ever filled by declaration. And the `@state:` +form is only offered on `object` and `array` parameters, whereas every tool here +takes scalars — `hello(name)`, `whoami()`, `search_collections(query, limit)`, +`show_map(collection_id)`. A tool taking a structured parameter would light up +the handle path on its own, without tagging anything. Two consequences worth knowing before you read a deployment. `/health` and the index report `state.produces` as the list of distinct **kinds**, so the `[]` you diff --git a/pyproject.toml b/pyproject.toml index 2b108b1..ecedf59 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ dependencies = [ # The shared runtime, installed from PyPI — mcp_runtime (mcp-serve / # mcp-index), mcp_cli, mcp_toolset, and with [agent] the Chainlit chat host. # Upgrade by bumping this range and running `uv lock`. - "mcp-toolsets-runtime[agent]<0.4.0,>=0.3.0", + "mcp-toolsets-runtime[agent]<0.5.0,>=0.4.2", "credential-demo", "hello", "stac-explorer", diff --git a/uv.lock b/uv.lock index c54f472..ae68615 100644 --- a/uv.lock +++ b/uv.lock @@ -1030,7 +1030,7 @@ index = [ requires-dist = [ { name = "credential-demo", editable = "toolsets/credential-demo" }, { name = "hello", editable = "toolsets/hello" }, - { name = "mcp-toolsets-runtime", extras = ["agent"], specifier = ">=0.3.0,<0.4.0" }, + { name = "mcp-toolsets-runtime", extras = ["agent"], specifier = ">=0.4.2,<0.5.0" }, { name = "stac-explorer", editable = "toolsets/stac-explorer" }, ] @@ -1046,7 +1046,7 @@ index = [{ name = "mcp-toolsets-runtime" }] [[package]] name = "mcp-toolsets-runtime" -version = "0.3.0" +version = "0.4.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "fastapi" }, @@ -1058,9 +1058,9 @@ dependencies = [ { name = "typer" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/82/16/47094311cafe3b30e2202e3db844cc51e385b1b672c5f78fd252f35ef406/mcp_toolsets_runtime-0.3.0.tar.gz", hash = "sha256:4c40ff159ac6353afca57009132311108f097d8f71073eba78ec8759dee21a0a", size = 285988, upload-time = "2026-08-03T15:05:06.382Z" } +sdist = { url = "https://files.pythonhosted.org/packages/13/66/3810683a887178f19de68ede5d6baece7f275ad9b1f93adb84f047942272/mcp_toolsets_runtime-0.4.2.tar.gz", hash = "sha256:69f86aaa1cb6f26b03d8e5968a71f170edba6d3e28f9872da42e1803d543495c", size = 290313, upload-time = "2026-08-11T10:58:25.315Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/16/81/83a5a83c55a3730a2ab62d0b7366f5097863acdb78dd45878ebcb0cfd7fb/mcp_toolsets_runtime-0.3.0-py3-none-any.whl", hash = "sha256:6105ac3106495d37141dae0af0ed7642a6597e2eed429723f6ca9d5a1a1804af", size = 87312, upload-time = "2026-08-03T15:05:05.1Z" }, + { url = "https://files.pythonhosted.org/packages/e2/9b/b6bf8ab4cacb0a5ebe18377af78093069f08ec1137a66957525531702abc/mcp_toolsets_runtime-0.4.2-py3-none-any.whl", hash = "sha256:de1feb6770be28009d357fa2dffb28b20608a032dde0be4e63117bb9670c6a43", size = 89574, upload-time = "2026-08-11T10:58:23.728Z" }, ] [package.optional-dependencies]