-
Notifications
You must be signed in to change notification settings - Fork 110
Description
Not sure where to add this #22
Notes on the https://github.com/webmachinelearning/webmcp/tree/declarative-api-explainer
Notes on the declarative-api-explainer branch.
The declarative path makes sense and toolautosubmit is a good design. But there's a knowledge representation gap here.
tooldescription and toolparamdescription are natural language -- fine for human discovery, not enough when an agent is autosubmitting on behalf of a user. For that you need something formal and verifiable -- what the form actually does, preconditions, side effects. Not just a description string.
This is basically the declarative-layer version of #96. The correlation ID handles accountability after the fact -- what's missing is semantic grounding before invocation.
Two thoughts on the open questions:
The input schema synthesis TODO -- reducing form elements to JSON Schema captures structure but not meaning. A select with "economy" and "business" as an enum says nothing about what each option commits the user to. Worth considering whether a lightweight semantic layer (JSON-LD maybe, already referenced in the response section) could travel with the schema.
On toolactivated/toolcanceled event target -- firing at the element rather than Window makes more sense. Keeps the tool identity and event surface together, which matters for per-tool audit (#96 again).
The W3C AI Knowledge Representation Community Group has vocabulary coordination in scope and would be glad to contribute to the input schema semantics question as it develops. Happy to discuss.