Expand description
VAPP-180: the MCP tools a package EXPOSES (docs/package-format.md
“Exposes”): declarative bindings {name, title, description, input, access, run} a host’s MCP broker lists and runs as the calling person,
never code. The format half of the eMCP contract; what a run may reach on
a given host is that host’s own check. Mirrors
packages/exponential-ui/src/host/exposes.ts line by line;
fixtures/host-router.json (validation) replays it.
Structs§
- Expose
Issue - One problem with a binding: the eMCP error
code, the binding’sindex(None= the list) and the package issue.
Constants§
- EXPOSE_
ACTION_ PATTERN package.exposes.actionPattern.- EXPOSE_
AGENT_ DEVICES - EXPOSE_
AGENT_ PROMPT_ MAX - EXPOSE_
AGENT_ SLUG_ MAX package.exposes.agent(#VAPP-236).- EXPOSE_
DESCRIPTION_ MAX - EXPOSE_
DESTRUCTIVE_ WORDS - EXPOSE_
MAX_ TOOLS - EXPOSE_
NAME_ MAX - EXPOSE_
NAME_ PATTERN package.exposes.limits.- EXPOSE_
READ_ OP_ WORDS - EXPOSE_
READ_ RECORD_ OPS - EXPOSE_
RECORD_ OPS - EXPOSE_
RUN_ KINDS - EXPOSE_
SEPARATOR - EXPOSE_
TITLE_ MAX
Functions§
- expose_
action_ access - An action reads when the last word of its name is a read word; a verb writes.
- expose_
issues - Every problem with a package’s
exposes, in binding order, with its eMCP code.recordsandupstreams= the package’s. - expose_
name_ destructive - A tool or action name holding a destructive word is never exposed.
- expose_
template_ paths - The input paths a run’s templates name (
${input.a.b}→a.b), in document order. - validate_
package_ exposes - Every problem with a package’s
exposes(expose_issuesas package issues). - validate_
upstreams - Every problem with a package’s
upstreams: the MCP server names its upstream bindings may call.