Skip to main content
This example runs fully offline — ./mock-connectors-server.ts is a real stdio MCP server (written with the SDK’s own serveMcp) exposing fake docs_*/slack_* tools. The agent code is identical to what a real connector needs; only the mcpServers entry changes.

Real connectors

OAuth is app-owned: one operator signs the agent in once per server via agent.oauth.mcpSignInUrl('slack'); every run then reuses the grant. See docs/oauth.md and docs/connectors.md.

Write safety

slack_post_message carries destructiveHint/readOnlyHint annotations, and the demo sets approval: 'never' only so it runs non-interactively. In production keep the default ('annotations') or an approval predicate/permission rules so connector writes pause for human approval — see docs/approvals.md.