> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rippit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Guru

> Let the Rippit agent search and read your team's Guru cards and verified knowledge alongside your conversation data.

Connect Guru when the agent needs your internal knowledge to explain what it sees in conversations: the policy an agent should have followed, the macro a ticket was supposed to get, or the verified answer a customer was owed. The Rippit agent searches Guru, reads the cards it finds, and cites them in its answer.

## What the agent gets

* **Search** across cards and the external sources Guru indexes, with verification state on every card it returns.
* **Card reads**, singly or up to fifty at a time, plus the comment threads on them.
* **Knowledge Agent answers**, when your Guru account has Knowledge Agents: a synthesized answer to a question rather than a list of cards.
* **Collections, folders, and datasets**, for browsing how knowledge is organized and querying Guru's structured datasets.
* **Card drafts and content management**, if you enable the write tools.

Typical uses: checking the policy a card actually states before grading an agent against it; finding which rising contact drivers have no card behind them, then drafting the cards; pulling the verified answer a customer should have received.

## Setup

Guru offers only OAuth for this connection. There is no Guru application to create first.

1. In Rippit, open **Connections → MCP Servers** and choose **Guru**.
2. Click connect. Guru opens its sign-in and consent screen.
3. Approve, and Rippit returns you to the Connections page with the connection live.

Guru's own guide for connecting MCP clients is at [Connecting Guru's MCP Server](https://help.getguru.com/docs/connecting-gurus-mcp-server).

### "redirect\_uri parameter is invalid"

If Guru's consent screen shows an OAuth error that says the `redirect_uri` parameter is invalid, Guru has not yet approved Rippit as an OAuth client for your account. Nothing on the Rippit side fixes this. Guru allowlists clients on request, and its guide says to contact Guru Support to approve the client.

Open a ticket with Guru Support and include:

* The application name: **Rippit**
* The application URL: `https://app.rippit.com/`
* The redirect URI: `https://app.rippit.com/settings/connections`

Ask them to allowlist that redirect URI for the Guru MCP server. Once Guru confirms, return to **Connections → MCP Servers** and connect again; there is nothing to reconfigure in Rippit.

<Info>
  Send the full redirect URI, not just the domain. Guru matches the redirect URI exactly, so an allowlist entry for `https://app.rippit.com` alone can leave the error in place.
</Info>

## Identity and scope

Guru's MCP server acts as the person who authorized it and enforces that person's Guru permissions. A card the connecting user cannot open in Guru does not become readable through Rippit.

That makes who connects a real decision. An organization-wide connection authorized by someone with broad collection access extends that reach to everyone using the agent; one authorized by someone with narrow access will quietly return less than colleagues expect. Guru does accept API tokens for its MCP server, but only as an email and token pair, which Rippit's token-based connection path does not support, so connecting as a service account is not an option today.

The **scope** you choose at setup decides whether Agent Apps can use the connection, exactly as with every other connector.

## Tools

Guru exposes the tools below. The read set is enabled by default; the write set stays off until a Rippit Full Admin enables it under **Manage tools**. Guru adds tools over time, and a connection picks up new ones when it reconnects, so **Manage tools** on the connection card is the authoritative list for your connection.

### Read

| Tool                          | What it does                                                                               |
| ----------------------------- | ------------------------------------------------------------------------------------------ |
| `guru_search`                 | Search cards and connected sources, with snippets, facets, and optional full content       |
| `guru_search_documents`       | Find cards, documents, or sources through a Knowledge Agent                                |
| `guru_answer_generation`      | Ask a Knowledge Agent a question and get a synthesized answer, not just documents          |
| `guru_get_pending_answer`     | Fetch the result of an answer that Guru is still generating                                |
| `guru_list_knowledge_agents`  | List the Knowledge Agents available to the user, needed before search or answer generation |
| `guru_get_card_by_id`         | Read a card's full content by ID or by the short ID in a card URL                          |
| `guru_bulk_get_cards`         | Read up to fifty cards at once, with verification state and collection info                |
| `guru_bulk_get_card_comments` | Read comment threads across every card the user can see, newest activity first             |
| `guru_list_collections`       | List the collections the user can access                                                   |
| `guru_list_folders`           | List folders, optionally within one collection                                             |
| `guru_list_folder_items`      | List the cards and subfolders directly inside a folder                                     |
| `guru_list_groups`            | List user groups on the team, for adding a group as a draft collaborator                   |
| `guru_list_drafts`            | List the card drafts the user can edit                                                     |
| `guru_get_draft`              | Read a draft's title and content                                                           |
| `guru_read_draft_for_edit`    | Read a draft's live content in the form the edit tool needs                                |
| `guru_list_datasets`          | List Guru datasets and their fields                                                        |
| `guru_get_dataset`            | Read one dataset's metadata and field types                                                |
| `guru_query_dataset`          | Run a filter, group, and aggregate query against a dataset                                 |

### Write

| Tool                             | What it does                                                         |
| -------------------------------- | -------------------------------------------------------------------- |
| `guru_create_draft`              | Create a card draft, either a new card or an edit of a published one |
| `guru_apply_draft_edits`         | Apply edits to a card draft                                          |
| `guru_discard_draft`             | Delete a draft's unpublished changes. Cannot be undone               |
| `guru_add_draft_collaborator`    | Add a user or group as a collaborator on a draft                     |
| `guru_remove_draft_collaborator` | Remove a collaborator from a draft                                   |
| `guru_update_card`               | Update a published card's content                                    |
| `guru_archive_card`              | Archive a card. Restorable from Guru's Archive view                  |
| `guru_move_card`                 | Move a card between folders in the same collection                   |
| `guru_move_card_to_collection`   | Move a card to a different collection                                |
| `guru_create_collection`         | Create a collection                                                  |
| `guru_update_collection`         | Change a collection's name, description, color, or emoji             |
| `guru_create_folder`             | Create a folder in a collection                                      |
| `guru_update_folder`             | Change a folder's title or description                               |
| `guru_move_folder`               | Move a folder within its collection                                  |
| `guru_move_folder_to_collection` | Move a folder, with its contents, to a different collection          |
| `guru_delete_folder`             | Delete a folder. Its cards and subfolders move up to the parent      |

Guru's write tools act with the connecting user's permissions. A card that user cannot edit in Guru cannot be edited through Rippit either.
