Guru MCP
Access your Guru knowledge base via the official MCP server. Ask AI-powered questions, search documents, create drafts, and update cards.
Features
- •AI-Powered Answers — Get comprehensive answers from Knowledge Agents
- •Document Search — Find cards and content across your knowledge base
- •Create Drafts — Generate new card drafts from AI tools
- •Update Cards — Modify existing cards directly
- •Connected Sources — Access Salesforce, Slack, Google Drive, Confluence, SharePoint through Guru
- •Permission-Aware — Respects all existing Guru permissions
- •Analytics — All queries logged in AI Agent Center
Setup
1. Get API Token
- •Go to Guru Admin → API Tokens
- •Create a new token
- •Note your email and token
2. Configure Environment
Add to ~/.clawdbot/.env:
GURU_API_TOKEN=your.email@company.com:your-api-token
3. Configure mcporter
Add to config/mcporter.json:
{
"mcpServers": {
"guru": {
"baseUrl": "https://mcp.api.getguru.com/mcp",
"headers": {
"Authorization": "Bearer ${GURU_API_TOKEN}"
}
}
}
}
4. Verify
mcporter list guru
Available Tools
guru_list_knowledge_agents
List all Knowledge Agents in your workspace. Always call this first to get agent IDs for other tools.
mcporter call 'guru.guru_list_knowledge_agents()'
Returns:
[
{"id": "08de66e8-...", "name": "Guru"},
{"id": "abc123...", "name": "Engineering Docs"}
]
guru_answer_generation
Get AI-powered answers from a Knowledge Agent. Best for specific questions like "What is X?" or "How do I Y?".
mcporter call 'guru.guru_answer_generation( agentId: "YOUR_AGENT_ID", question: "How do I submit expenses?" )'
Optional filters:
- •
collectionIds— Limit to specific collections - •
sourceIds— Limit to specific sources
Returns comprehensive answer with sources.
guru_search_documents
Find documents, cards, and sources. Best for browsing content like "find docs on X" or "do we have cards about Y?".
mcporter call 'guru.guru_search_documents( agentId: "YOUR_AGENT_ID", query: "onboarding process" )'
Returns list of matching documents with snippets.
guru_get_card_by_id
Get full card content in HTML format.
mcporter call 'guru.guru_get_card_by_id(id: "CARD_ID")'
Returns card ID, title, and HTML content.
guru_create_draft
Create a new card draft.
mcporter call 'guru.guru_create_draft( title: "New Process Guide", content: "<h2>Overview</h2><p>This guide covers...</p>" )'
Returns draft ID and URL.
guru_update_card
Update an existing card. First retrieve current content with guru_get_card_by_id, then modify.
mcporter call 'guru.guru_update_card( cardId: "CARD_ID", title: "Updated Title", content: "<p>Updated HTML content...</p>" )'
Important: Preserve HTML structure when updating. Insert/replace content within existing DOM hierarchy.
Usage Patterns
Ask a Question
# 1. Get agent ID mcporter call 'guru.guru_list_knowledge_agents()' # 2. Ask question mcporter call 'guru.guru_answer_generation( agentId: "08de66e8-...", question: "What is the PTO policy?" )'
Find and Read a Card
# 1. Search for cards mcporter call 'guru.guru_search_documents( agentId: "08de66e8-...", query: "expense report" )' # 2. Get full content mcporter call 'guru.guru_get_card_by_id(id: "CARD_ID_FROM_SEARCH")'
Create New Documentation
mcporter call 'guru.guru_create_draft( title: "API Authentication Guide", content: "<h2>Overview</h2><p>This guide explains how to authenticate with our API.</p><h2>Steps</h2><ol><li>Generate API key</li><li>Add to headers</li></ol>" )'
Choosing the Right Tool
| Use Case | Tool |
|---|---|
| "What is X?" / "How do I Y?" | guru_answer_generation |
| "Find docs about X" | guru_search_documents |
| "Show me card XYZ" | guru_get_card_by_id |
| "Create a new guide for X" | guru_create_draft |
| "Update this card with..." | guru_update_card |
Token Format
The GURU_API_TOKEN must be in format email:token:
your.email@company.com:a1b2c3d4-e5f6-7890-abcd-ef1234567890
Notes
- •Questions appear in Guru's AI Agent Center analytics
- •All permissions enforced (users only see what they have access to)
- •Knowledge Agents can be domain-specific — choose the right one for your question
- •Card content is HTML — preserve structure when updating