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

# MCP Tool Permissions

> Which permissions each MCP tool requires. Use this reference when scoping a service account's group for MCP use.

Each MCP tool requires one or more permissions. Service accounts inherit their group's permissions, so to use a tool the group must include all of its required permissions. Tools that require permissions the service account lacks are automatically hidden from the MCP client.

See [Custom groups](/security/user-roles-and-permissions#custom-groups) for how to set up a group, and [Service accounts](/security/service-accounts) for how to issue an API key.

## Minimum permissions to enable every MCP tool

To give a service account access to every MCP tool, create a custom group with the permissions below and assign your service account to it.

* **Admin** (`admin`)
* **Cancel diffs** (`cancel_datadiff`)
* **Create diffs** (`create_datadiff`)
* **Edit monitors** (`edit_alert`)
* **Edit knowledge graph** (`edit_knowledge_graph`)
* **List data sources** (`list_data_sources`)
* **List users** (`list_users`)
* **View diffs** (`view_datadiff`)
* **View knowledge graph** (`view_knowledge_graph`)
* **View monitors** (`view_monitor`)

## Tools by category

### Organization

| Tool               | What it does                                                           | Required permissions      | Requires feature |
| ------------------ | ---------------------------------------------------------------------- | ------------------------- | ---------------- |
| `list_org_members` | Retrieves all active members of the authenticated user's organization. | List users (`list_users`) | —                |

### Data Sources

| Tool                 | What it does                                                                    | Required permissions                    | Requires feature |
| -------------------- | ------------------------------------------------------------------------------- | --------------------------------------- | ---------------- |
| `get_dataset_schema` | Get the column schema for a table on a data source.                             | List data sources (`list_data_sources`) | —                |
| `list_data_sources`  | Retrieves all data sources accessible to the authenticated user.                | List data sources (`list_data_sources`) | —                |
| `run_query`          | Executes a SQL query against the specified data source and returns the results. | List data sources (`list_data_sources`) | —                |
| `search_tables`      | Search for tables on a data source by name.                                     | List data sources (`list_data_sources`) | —                |

### Source Repos

| Tool                | What it does                                        | Required permissions | Requires feature |
| ------------------- | --------------------------------------------------- | -------------------- | ---------------- |
| `list_source_repos` | List git source repositories configured on the org. | Admin (`admin`)      | CI               |

### Data Diffs

| Tool                          | What it does                                                                                | Required permissions             | Requires feature |
| ----------------------------- | ------------------------------------------------------------------------------------------- | -------------------------------- | ---------------- |
| `cancel_datadiff`             | Cancel a running or queued data diff.                                                       | Cancel diffs (`cancel_datadiff`) | Data Diffs       |
| `create_datadiff`             | Launches a new data diff to compare two datasets (tables or queries).                       | Create diffs (`create_datadiff`) | Data Diffs       |
| `get_datadiff_overview`       | Retrieves a structured overview of a data diff, mirroring the UI's Overview tab.            | View diffs (`view_datadiff`)     | Data Diffs       |
| `get_datadiff_result_section` | Retrieves detailed results for a specific section of a data diff, corresponding to UI tabs. | View diffs (`view_datadiff`)     | Data Diffs       |
| `list_datadiffs`              | Lists existing data diffs for the organization, ordered by creation date (newest first).    | View diffs (`view_datadiff`)     | Data Diffs       |

### Monitors

| Tool                      | What it does                                                                             | Required permissions           | Requires feature |
| ------------------------- | ---------------------------------------------------------------------------------------- | ------------------------------ | ---------------- |
| `get_monitor`             | Get full details for a monitor by ID.                                                    | View monitors (`view_monitor`) | Monitors         |
| `get_monitor_as_code`     | Export a monitor's complete configuration as YAML (monitors-as-code format).             | View monitors (`view_monitor`) | Monitors         |
| `get_monitor_run_results` | Get recent run history for a monitor, ordered by most recent first.                      | View monitors (`view_monitor`) | Monitors         |
| `get_monitors_schema`     | Returns the JSON Schema for the monitors-as-code YAML config format.                     | View monitors (`view_monitor`) | Monitors         |
| `list_monitors`           | Lists monitors for the organization, ordered by creation date (newest first).            | View monitors (`view_monitor`) | Monitors         |
| `provision_monitors`      | Create, update, or delete monitors from a declarative YAML config (monitors-as-code).    | Edit monitors (`edit_alert`)   | Monitors         |
| `trigger_monitor_run`     | Manually trigger a monitor check. The check runs asynchronously.                         | Edit monitors (`edit_alert`)   | Monitors         |
| `trigger_monitors_run`    | Manually trigger checks for many monitors at once, selected by explicit IDs and/or tags. | Edit monitors (`edit_alert`)   | Monitors         |

### Knowledge Graph

| Tool                                 | What it does                                                                   | Required permissions                          | Requires feature |
| ------------------------------------ | ------------------------------------------------------------------------------ | --------------------------------------------- | ---------------- |
| `knowledge_graph_expand`             | BFS expansion from a seed node in the knowledge graph.                         | View knowledge graph (`view_knowledge_graph`) | Knowledge Graph  |
| `knowledge_graph_get_schema_details` | Return full definitions for one or more items in a schema category.            | View knowledge graph (`view_knowledge_graph`) | Knowledge Graph  |
| `knowledge_graph_run_cypher`         | Execute a read-only Cypher query against the org's knowledge graph and return. | View knowledge graph (`view_knowledge_graph`) | Knowledge Graph  |
| `knowledge_graph_run_query`          | Execute a named query template against the knowledge graph.                    | View knowledge graph (`view_knowledge_graph`) | Knowledge Graph  |
| `knowledge_graph_submit_bug_report`  | Report an issue or instruction about graph contents or parsing behavior.       | Edit knowledge graph (`edit_knowledge_graph`) | Knowledge Graph  |
| `knowledge_graph_submit_document`    | Save a free-text knowledge artifact (snippet, note, summary, repo doc) to the. | Edit knowledge graph (`edit_knowledge_graph`) | Knowledge Graph  |

### Feedback

| Tool              | What it does                                                                                     | Required permissions | Requires feature |
| ----------------- | ------------------------------------------------------------------------------------------------ | -------------------- | ---------------- |
| `submit_feedback` | Submit feedback to the Datafold team — report bugs, request features, or share general thoughts. | —                    | —                |

### Other

| Tool                 | What it does                                                                            | Required permissions | Requires feature |
| -------------------- | --------------------------------------------------------------------------------------- | -------------------- | ---------------- |
| `get_reports_schema` | Returns the authoring contract for the `.datafold/reports.yml` definition format: its.  | —                    | —                |
| `list_reports`       | List the org's **defined reports** — reports whose definition is version-controlled in. | —                    | —                |
| `run_report`         | Run a **defined report** by name and return its rows, reproducing the pinned columns,.  | —                    | —                |
