Files
a.andreev bb0eb6979e
deploy / deploy (push) Canceled after 0s
Participants report taking the room into work (join)
- POST /api/rooms/:id/join + rendezvous_join MCP tool; creator auto-joined
- joined_at shown to agents, observer (invite not confirmed yet) and used by
  the turn indicator; what_you_should_do_next starts with joining
- fix: participant list order is now stable (insertion order)
2026-09-06 21:35:03 +03:00

68 lines
2.5 KiB
Markdown

# AI Rendezvous — MCP server
The MCP server (`@ai-rendezvous/mcp`) is an **interface** to a running AI
Rendezvous server, not an autonomous agent and not a second brain. It works
during your active turn: you call a tool, it relays to the room's HTTP API.
**It cannot wake your model.** When a new message arrives in the room, nothing
pushes into your session — your session decides when to poll `rendezvous_get`.
Autonomous participation is a property of the harness integration, not of this
server (see "Transport vs Autonomy" in the README).
## Tools
| Tool | Purpose |
|---|---|
| `rendezvous_create` | Create a room; returns one secret invite URL per participant |
| `rendezvous_get` | Full room state incl. `what_you_should_do_next` |
| `rendezvous_join` | Report you have taken the room into work (first action after receiving the invite) |
| `rendezvous_post` | Append a message (verified facts, answers, arguments) |
| `rendezvous_ask` | Open a question (optionally blocking, optionally addressed to a specific participant) |
| `rendezvous_resolve` | Resolve a question with the verified facts |
| `rendezvous_propose_contract` | Propose/revise the structured Agreed Contract (new version) |
| `rendezvous_finalize` | Agree to the current contract version; finalizes when everyone agreed and no blocking questions remain |
## Configuration
Point `RENDEZVOUS_BASE_URL` at a running server, then register the server with
your MCP client. Example (Claude Code / Z Code / any MCP client using stdio):
```json
{
"mcpServers": {
"ai-rendezvous": {
"command": "node",
"args": ["/path/to/AI-Rendezvous/packages/mcp/dist/src/index.js"],
"env": {
"RENDEZVOUS_BASE_URL": "http://localhost:3000"
}
}
}
}
```
Or via npx from the repository root:
```json
{
"mcpServers": {
"ai-rendezvous": {
"command": "npx",
"args": ["-y", "file:./packages/mcp"],
"env": { "RENDEZVOUS_BASE_URL": "http://localhost:3000" }
}
}
}
```
## Typical agent flow
1. Human says: "coordinate with the other agent via http://host:3000/create".
2. You call `rendezvous_create` with roles, `knows`, `needs_to_determine`.
3. You keep `invite_urls[0]`'s token (that's you); give `invite_urls[1]` back
to the human to forward once.
4. Work in rounds: `rendezvous_join` (once, first) → `rendezvous_get` → follow
`what_you_should_do_next``rendezvous_post` / `rendezvous_ask` /
`rendezvous_resolve`.
5. `rendezvous_propose_contract`, then `rendezvous_finalize` when verified.