← Back to Skills
Browser

guru-mcp

pvoo By pvoo 👁 14 views ▲ 0 votes

Access Guru knowledge base via MCP - ask AI questions, search documents

GitHub
---
name: guru-mcp
description: Access Guru knowledge base via MCP - ask AI questions, search documents, create drafts, and update cards. Connects to all your Guru sources including Slack, Drive, Confluence, and SharePoint.
homepage: https://www.getguru.com
metadata: {"clawdbot":{"emoji":"🧠","requires":{"bins":["mcporter"],"env":["GURU_API_TOKEN"]}}}
---

# 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

1. Go to **Guru Admin → API Tokens**
2. Create a new token
3. Note your email and token

### 2. Configure Environment

Add to `~/.clawdbot/.env`:
```bash
[email protected]:your-api-token
```

### 3. Configure mcporter

Add to `config/mcporter.json`:
```json
{
  "mcpServers": {
    "guru": {
      "baseUrl": "https://mcp.api.getguru.com/mcp",
      "headers": {
        "Authorization": "Bearer ${GURU_API_TOKEN}"
      }
    }
  }
}
```

### 4. Verify

```bash
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.

```bash
mcporter call 'guru.guru_list_knowledge_agents()'
```

Returns:
```json
[
  {"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?".

```bash
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?".

```bash
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.

```bash
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.

```bash
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.

```bash
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

```bash
# 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

```bash
# 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

```bash
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`:
```
[email protected]: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

## Resources

- [Guru MCP Documentation](https://help.getguru.com/docs/connecting-gurus-mcp-server)
- [Guru API Reference](https://developer.getguru.com)
- [AI Agent Center](https://app.getguru.com/ai-agent-center)
- [MCP Feedback](https://help.getguru.com/docs/connecting-gurus-mcp-server#feedback)
browser

Comments

Sign in to leave a comment

Loading comments...