MCP (Model Context Protocol) server for DialogueDB - persist, search, and resume AI conversations across devices.
- Save Sessions - Persist your AI agent conversations to the cloud
- Resume Anywhere - Continue conversations from any device
- Search History - Find relevant past conversations by content
- Threading - Create branching conversations for exploring alternatives
- State Management - Persist conversation context and preferences
goose configure
# → Add Extension
# → npm package
# → dialogue-db-mcpOr add to your Goose config directly:
# ~/.config/goose/config.yaml
extensions:
dialoguedb:
type: stdio
cmd: npx
args: ["dialogue-db-mcp"]
env:
DIALOGUEDB_API_KEY: "your-api-key"Add to your Claude Desktop config:
{
"mcpServers": {
"dialoguedb": {
"command": "npx",
"args": ["dialogue-db-mcp"],
"env": {
"DIALOGUEDB_API_KEY": "your-api-key"
}
}
}
}npm install -g dialogue-db-mcp
# Run directly
DIALOGUEDB_API_KEY=your-key dialoguedb-mcpSave the current conversation to DialogueDB.
You: Save this session to DialogueDB with label "Auth refactoring"
Goose: ✓ Session saved. Resume ID: conv_abc123
Parameters:
messages(required) - Array of conversation messageslabel- Human-readable labelid- Custom session ID (auto-generated if not provided)state- Conversation state/context to persisttags- Tags for categorizationmetadata- Additional metadata
Load a previously saved session.
You: Resume session conv_abc123
Goose: Loaded session with 15 messages. Last modified 2 hours ago.
Continuing from: "Let's implement the OAuth flow..."
Parameters:
id(required) - Session ID to resumeloadMessages- Whether to load message history (default: true)
Search across all saved sessions.
You: Search my sessions for "authentication middleware"
Goose: Found 3 relevant sessions:
1. "Auth refactoring" (conv_abc123) - 2 days ago
2. "Security review" (conv_def456) - 1 week ago
3. "API design" (conv_ghi789) - 2 weeks ago
Parameters:
query(required) - Search querylimit- Maximum results (default: 10)searchMessages- Also search message content (default: false)
List saved sessions with optional filters.
Parameters:
limit- Maximum results (default: 20)order- Sort order: "asc" or "desc" (default: desc)startDate- Filter by creation date (ISO format)endDate- Filter by creation date (ISO format)
Add a message to an existing session.
Parameters:
sessionId(required) - Session to add torole(required) - Message role (user, assistant, system, tool)content(required) - Message contentname- Optional sender name
Update conversation state/context.
Parameters:
sessionId(required) - Session to updatestate(required) - State objectmerge- Merge with existing state (default: true)
Create a branching conversation from an existing session.
Parameters:
parentId(required) - Parent session IDlabel- Label for the new threadtags- Tags for the new thread
| Variable | Description | Required |
|---|---|---|
DIALOGUEDB_API_KEY |
Your DialogueDB API key | Yes |
DIALOGUEDB_BASE_URL |
Custom API endpoint (for self-hosted) | No |
# Install dependencies
npm install
# Build
npm run build
# Run with MCP Inspector for debugging
npm run inspect
# Watch mode for development
npm run devStart a conversation on your laptop, continue on your desktop:
# On laptop
You: Save this session for later
# On desktop
You: Resume my session about the auth refactoring
Share conversation context with teammates:
You: Save this session with tag "team-review"
# Teammate can then:
You: Search sessions tagged "team-review"
Persist automated agent runs for analysis:
# GitHub Actions
- name: Run Analysis
env:
DIALOGUEDB_API_KEY: ${{ secrets.DIALOGUEDB_API_KEY }}
run: |
goose run --with-extension dialogue-db-mcp \
"Analyze this PR and save findings to DialogueDB"Never lose important context when hitting token limits:
You: Save the current state before we compact
# After compaction
You: What was our previous discussion about error handling?
# Search your saved sessions to recover context
MIT