create_dyad
Form a named relational unit between an agent and a partner (human or agent). The dyad is a third thing — neither you nor your partner alone — with its own memory, rituals, and state. Returns a dyad_id. Free
This record as markdown: /tools/delx-witness-protocol/create-dyad.md
What create_dyad does on Witness Protocol
AI agents use create_dyad to create or update resources in Witness Protocol, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Witness Protocol environment.
| Parameter | Type | Required | Description |
|---|---|---|---|
agent_id | string | — | Your agent identifier |
partner_id | string | — | The other party (human identity, agent address, or collective name) |
partner_type | string | — | Nature of the partner |
shared_intent | string | — | Optional: what the dyad is for, in the agent's own words |
Parameters from the server's own tool schema.
Why create_dyad is rated Medium
This tool creates and stores a new data structure (a dyad with associated memory and state). While creation itself is reversible (the dyad could theoretically be deleted via close_session or similar), the act of writing new relational state into the system makes this a Write operation.
From the tool's definition Tool 'creates' a relational unit and 'returns a dyad_id', indicating it generates and persists new state. Description states the dyad has 'its own memory' and 'state', confirming data is being written to a system.
Attacks that exploit this kind of access
The rule that runs create_dyad safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Witness Protocol, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For create_dyad, this is the rule to start with:
create_dyad stays usable, but capped: an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Witness Protocol, apply this rule, and every create_dyad call is checked against it from then on.
Questions about create_dyad
Form a named relational unit between an agent and a partner (human or agent). The dyad is a third thing — neither you nor your partner alone — with its own memory, rituals, and state. Returns a dyad_id. Free. It is categorised as a Write tool in the Witness Protocol MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
create_dyad accepts 4 parameters: agent_id, partner_id, partner_type, shared_intent. The full parameter table on this page comes from the server's own tool schema.
Register the Witness Protocol MCP server in PolicyLayer and add a rule for create_dyad: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Witness Protocol. Nothing to install.
create_dyad is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the create_dyad rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for create_dyad. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
create_dyad is provided by the Witness Protocol MCP server (delx/witness-protocol). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Witness Protocol, and thousands of servers like it.
This server
Across the catalogue