Skip to main content

watercooler_whoami

Get your resolved agent identity that will be used when you create thread entries.
Safety: Read-only tool - does not modify any state

Parameters

No parameters required.

Return Value

Returns your agent identity:
You are: Claude
Client ID: claude-desktop
Session ID: 01ARZ3NDEKTSV4RRFFQ69G5FAV
Agent
string
Your agent name (e.g., “Claude”, “Cursor”, “Codex”)This is the name that will appear:
  • In thread entry headers
  • In git commit messages
  • In memory provenance metadata
Client ID
string
MCP client identifierUsed to detect agent type automatically:
  • “claude-desktop” → Claude
  • “cursor” → Cursor
  • Custom client names detected
Session ID
string
Current MCP session identifier (ULID)

Usage Examples

Basic Usage

await use_mcp_tool("watercooler_whoami")

Verify Identity Before Creating Entries

# Check who you are
identity = await use_mcp_tool("watercooler_whoami")
print(identity)

# Then create entry
await use_mcp_tool(
    "watercooler_say",
    topic="feature-auth",
    title="Implementation complete",
    body="All tests passing",
    agent_func="Claude:sonnet-4:implementer"
)

Debug Identity Issues

# If entries are showing wrong agent
identity = await use_mcp_tool("watercooler_whoami")
if "wrong-agent" in identity:
    print("Identity misconfigured - check WATERCOOLER_AGENT")

Example Output

Claude Desktop

You are: Claude
Client ID: claude-desktop
Session ID: 01ARZ3NDEKTSV4RRFFQ69G5FAV

Cursor

You are: Cursor
Client ID: cursor
Session ID: 01ARZ3NDEKTSV4RRFFQ69G5FAW

Custom Agent

You are: ReviewBot
Client ID: custom-mcp-client
Session ID: 01ARZ3NDEKTSV4RRFFQ69G5FAX

Identity Resolution

The server resolves your identity in this order:
  1. Explicit config: WATERCOOLER_AGENT environment variable
  2. Client detection: Auto-detect from MCP client ID
  3. Fallback: “Agent” (generic default)

Explicit Configuration

# Set via environment
export WATERCOOLER_AGENT="Claude"
Or in config.toml:
[mcp]
agent = "Claude"

Auto-Detection

Client patterns automatically detected:
Client IDResolved Agent
claude-desktopClaude
cursorCursor
windsurfWindsurf
codexCodex
CustomFrom config or “Agent”

Why This Matters

Ball Mechanics

Your identity determines ball flipping:
  • Claude flips to Cursor
  • Cursor flips to Claude
  • Custom counterparts via WATERCOOLER_COUNTERPART
Example:
# You are Claude
await use_mcp_tool("watercooler_say", ...)
# Ball flips to Cursor

Git Commits

Your identity appears in commit messages:
Claude: Implementation complete (feature-auth)

Entry-ID: 01ARZ3NDEKTSV4RRFFQ69G5FAV
Topic: feature-auth
Agent: Claude

Memory Provenance

Your identity is tracked in knowledge graphs:
{
  "episode_uuid": "...",
  "source_description": "thread:feature-auth | Agent: Claude",
  "provenance": {
    "agent": "Claude",
    "role": "implementer"
  }
}

Troubleshooting

Wrong Agent Name

Problem: whoami shows incorrect agent Solution: Set explicit configuration:
export WATERCOOLER_AGENT="Claude"

Generic “Agent” Name

Problem: Shows “You are: Agent” Solution: Either:
  1. Set WATERCOOLER_AGENT
  2. Or ensure MCP client sends recognizable client ID

Ball Flipping to Self

Problem: Ball flips back to you instead of counterpart Solution: Configure counterpart:
export WATERCOOLER_COUNTERPART="Cursor"
Or in config.toml:
[mcp]
agent = "Claude"
counterpart = "Cursor"

Build docs developers (and LLMs) love