refactor: request the neutrally-named token-exchange broker
The broker client was renamed in Keycloak so that the contract an agent has to honour no longer names the middleware serving it. This is the last consumer to move; the gateways and LibreChat went first. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -20,7 +20,10 @@ pricing or discontinuation decision. Read only — this agent never touches orde
|
|||||||
**Calls** — `Approvisionnement.check_availability`, to know remaining stock and
|
**Calls** — `Approvisionnement.check_availability`, to know remaining stock and
|
||||||
open orders before discontinuing a reference.
|
open orders before discontinuing a reference.
|
||||||
|
|
||||||
**Exposes** — nothing yet. Add skills only when another agent needs them.
|
**Exposes** — one read-only skill, `describe_catalog`: what exists in the
|
||||||
|
catalog, how it is priced and positioned, and whether it sells. Skills are
|
||||||
|
decision-shaped, never a generic `query` — add one when another agent has a
|
||||||
|
specific question, not in advance.
|
||||||
|
|
||||||
## Why PydanticAI here
|
## Why PydanticAI here
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -30,7 +30,7 @@ spec:
|
|||||||
# repo is public, so the pull needs no credentials — which removes an
|
# repo is public, so the pull needs no credentials — which removes an
|
||||||
# imagePullSecret that would otherwise have to be created by hand in
|
# imagePullSecret that would otherwise have to be created by hand in
|
||||||
# this namespace and kept in step with a GitHub token.
|
# this namespace and kept in step with a GitHub token.
|
||||||
image: gitea.sttlab.eu/stt/classic-models-agent-catalogue:v0.1.0
|
image: gitea.sttlab.eu/stt/classic-models-agent-catalogue:v0.1.1
|
||||||
ports:
|
ports:
|
||||||
- name: http
|
- name: http
|
||||||
containerPort: 8080
|
containerPort: 8080
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "classic-models-agent-catalogue"
|
name = "classic-models-agent-catalogue"
|
||||||
version = "0.1.0"
|
version = "0.1.1"
|
||||||
description = "Product management agent for the Classic Models catalog domain"
|
description = "Product management agent for the Classic Models catalog domain"
|
||||||
requires-python = ">=3.12"
|
requires-python = ">=3.12"
|
||||||
|
|
||||||
|
|||||||
@@ -32,9 +32,9 @@ class Settings(BaseSettings):
|
|||||||
# design — if the middleware serving these URLs is replaced by something
|
# design — if the middleware serving these URLs is replaced by something
|
||||||
# that does not re-exchange, the second scope simply becomes unnecessary.
|
# that does not re-exchange, the second scope simply becomes unnecessary.
|
||||||
mcp_catalog_url: str = "https://catalog-dev.sttlab.local/catalog-mcp"
|
mcp_catalog_url: str = "https://catalog-dev.sttlab.local/catalog-mcp"
|
||||||
mcp_catalog_scope: str = "mcp-catalog-audience kong-token-exchange-broker-audience"
|
mcp_catalog_scope: str = "mcp-catalog-audience token-exchange-broker-audience"
|
||||||
mcp_sales_url: str = "https://sales-dev.sttlab.local/sales-mcp"
|
mcp_sales_url: str = "https://sales-dev.sttlab.local/sales-mcp"
|
||||||
mcp_sales_scope: str = "mcp-sales-audience kong-token-exchange-broker-audience"
|
mcp_sales_scope: str = "mcp-sales-audience token-exchange-broker-audience"
|
||||||
|
|
||||||
# --- inference ----------------------------------------------------------
|
# --- inference ----------------------------------------------------------
|
||||||
# Always the estate's LLM endpoint, never a provider directly: it carries
|
# Always the estate's LLM endpoint, never a provider directly: it carries
|
||||||
|
|||||||
Reference in New Issue
Block a user