Connect your AI Agents to Sigma Computing in minutes

Merge lets you securely connect your agents to Sigma Computing and thousands of tools instantly

Available tools

list_connections

List the warehouse connections configured in Sigma (Snowflake, BigQuery, Databricks, and so on). Filter server-side with 'search' on the connection name. Connection IDs feed getconnection, testconnection, and listconnectionpaths.

get_connection

Get a warehouse connection by ID, including its type, host, and write-back setting. Use list_connections to find connection IDs.

test_connection

Test whether Sigma can reach a warehouse connection. Use this to diagnose why a workbook fails to load data. Get connection IDs from list_connections.

list_connection_paths

List the browsable paths (databases, schemas, tables) available in warehouse connections. Pass connectionid to scope to one connection (from listconnections). Use this to discover warehouse tables Sigma can build on.

list_tags

List the organization's version tags, used to pin published document versions (for example 'Production'). Filter server-side with 'search'. tag_workbook takes the 'name' from here, not the ID.

create_tag

Create a version tag. Sigma requires both a unique name and a color (cyan, grass, violet, plum, amber, or bronze). Apply it to a workbook with tag_workbook.

update_tag

Update a version tag's name, description, or color. Use list_tags to find tag IDs.

delete_tag

Delete a version tag. Documents tagged with it lose the pin to that version. Use list_tags to find tag IDs. This cannot be undone.

list_tag_workbooks

List the workbooks pinned to a version tag. Use this to see what is published to an environment like 'Production'. Get tag IDs from list_tags.

list_templates

List workbook templates available in the organization, including Sigma's samples. Filter server-side with 'search'. Template IDs feed createworkbookfrom_template.

get_template

Get a workbook template by ID, including its name, path, and latest version. Use list_templates to find template IDs.

create_workbook_from_template

Create a workbook from a template and return its workbookid for the workbook tools. Both templateid (from listtemplates) and folderid are required — get folderid from listfiles with typefilters=['folder'], or a member's homefolderid from getmember.

list_data_models

List Sigma data models — the governed, reusable datasets that workbooks build on. Data model IDs feed the other data model tools. Use list_workbooks for workbooks instead.

get_data_model

Get a data model by ID, including its name, folder path, owner, and latest version. Use listdatamodels to find data model IDs.

list_data_model_elements

List the elements (tables and joins) in a data model. Element IDs from here pair with listdatamodelcolumns. Use listdata_models for data model IDs.

list_data_model_columns

List columns for every element in a data model, with labels, formulas, and data types. Use this to understand a data model's schema before building on it.

list_data_model_sources

List the warehouse tables and other sources a data model reads from. Paginated — pass pageinfo.cursor back as 'cursor' to get the rest. Use listdatamodellineage for the full upstream graph.

list_data_model_lineage

List the lineage graph for a data model, tracing it back to warehouse tables. Use for impact analysis before changing an upstream table.

list_files

Browse the Sigma file tree: workspaces, folders, workbooks, data models, and reports. Filter server-side by name, inode type, or parent folder. Use typefilters=['folder'] to find folder IDs for createworkbook and createworkbookfrom_template.

get_file

Get a file (inode) by ID, including its type, folder path, owner, and the caller's permission on it. Use list_files to find inode IDs.

create_file

Create a workspace, folder, workbook, or report. Use type='folder' with parentid to build folder structure. parentid comes from listfiles with typefilters=['folder'], or a member's homefolderid from getmember. parentid is not used when type='workspace'.

update_file

Rename a file, change its description, move it to another folder via parentid, transfer ownership, or restore it from the archive with restore=true. Use listfiles to find inode IDs.

delete_file

Archive a file (workbook, folder, data model, or report) by inode ID, moving it to the trash along with a folder's contents. Restore it with updatefile and restore=true; purging the trash is only possible in the Sigma UI. Use listfiles to find inode IDs, and delete_workspace for workspaces.

add_favorite

Favorite a document for a member. Both memberid (from getcurrentuser or listmembers) and inodeid (from listfiles or listworkbooks) are required. Use listmemberfavorites to review favorites and removefavorite to undo.

remove_favorite

Remove a document from a member's favorites. Get memberid from getcurrentuser or listmembers, and inodeid from listmember_favorites.

list_account_types

List the organization's account types (license tiers), built-in and custom. Call this before createmember or updatemember to get valid membertype values — accounttype_name is the value those tools expect.

list_user_attributes

List the organization's user attributes, used to drive row-level security and dynamic content. Filter server-side by name. Use getuserattribute for one attribute's detail.

get_user_attribute

Get a user attribute by ID, including its type and default value. Use listuserattributes to find user attribute IDs.

get_current_user

Get the member the API credentials act as, returning userid and organizationid. Use the returned userid as the memberid argument for listmemberfiles, listmemberfavorites, and remove_favorite.

list_members

List members (users) in the Sigma organization. Filter server-side with 'search' for a name or email substring, or 'email' for an exact address. Archived and deactivated members are excluded unless you opt in. Member IDs feed the team, grant, and favorite tools.

get_member

Get a member by ID, including their account type and homefolderid. The homefolderid is a valid folderid for createworkbook and createworkbookfromtemplate. Use listmembers or getcurrentuser for member IDs.

create_member

Create a member in the Sigma organization. membertype is an account type name — call listaccounttypes first, since custom account types vary per organization. Set sendinvite=true to email an invitation. Requires admin credentials.

update_member

Update a member's name, email, or account type, or deactivate them with isarchived=true. Call listaccounttypes for valid membertype values. Use list_members for member IDs. Requires admin credentials.

deactivate_member

Deactivate a member, revoking their access while preserving their content. Use listmembers for member IDs, or updatemember with is_archived=false to reactivate. Requires admin credentials.

list_member_teams

List the teams a member belongs to. Use listteammembers for the reverse lookup, or list_teams for all teams in the organization.

list_member_files

List the files a member can access, filterable by name, inode type, or parent folder. Use listfiles to browse the whole organization instead. Get member IDs from listmembers or getcurrentuser.

list_member_recent_files

List a member's recently viewed files, most recent first. Use this to answer 'what has this person been looking at'. Get member IDs from listmembers or getcurrent_user.

list_member_favorites

List the documents a member has favorited. Use addfavorite and removefavorite to change them. Get member IDs from listmembers or getcurrent_user.

list_member_schedules

List the scheduled exports owned by a member. Use listworkbookschedules to see schedules on a specific workbook instead.

list_reports

List Sigma reports — the paginated, print-oriented documents. Set isarchived=true to browse the archive. Report IDs feed the other report tools. Use listworkbooks for interactive workbooks instead.

get_report

Get a report by ID, including its name, folder path, owner, and latest version. Use list_reports to find report IDs.

list_report_pages

List the pages in a report. Page IDs from here feed exportreport's pageid argument. Use list_reports for report IDs.

list_report_elements

List the elements in a report. Element IDs from here feed getreportelementquery. Use listreports for report IDs.

get_report_element_query

Get the warehouse SQL Sigma generates for one report element. Use listreportelements for element IDs.

list_report_columns

List columns for every element in a report, each tagged with its elementid. Use listreports for report IDs.

list_report_controls

List a report's controls (filters and parameters). Call this before export_report to discover valid keys for its 'parameters' map — each control's 'name' is the key.

list_report_sources

List the data sources a report reads from. Use list_reports to find report IDs.

export_report

Start a PDF export of a report and return a queryid to pass to downloadquery. Reports export as PDF only, and layout is required. Omit pageid to export every page. Call listreport_controls for valid 'parameters' keys.

list_teams

List teams in the Sigma organization. Filter server-side by name, description, or visibility (public or private). Team IDs feed listteammembers, the grant tools, and create_member.

get_team

Get a team by ID, including its description and visibility. Use list_teams to find team IDs.

create_team

Create a team, optionally seeding it with members and creating a shared team folder. Get member IDs from list_members. Teams default to private visibility.

update_team

Update a team's name, description, or visibility. Use updateteammembers to change membership instead. Get team IDs from list_teams.

delete_team

Delete a team permanently. Members are not deleted, but they lose any access the team granted. Use list_teams to find team IDs. This cannot be undone.

list_team_members

List the members of a team. Use listmemberteams for the reverse lookup, and updateteammembers to add or remove members.

update_team_members

Add or remove members on a team in one call. Get member IDs from listmembers to add, or listteam_members to remove. Provide at least one of add or remove.

validate_credential

Validate the Sigma client ID, client secret, and API base URL by fetching the current member. Use this to confirm setup before calling other tools.

list_workbooks

List Sigma workbooks the credentials can access, newest first. Use this to find workbook IDs for the other workbook tools. Set isarchived=true to browse the archive. Page forward by passing pageinfo.cursor back as 'cursor' — Sigma ignores page numbers.

get_workbook

Get a Sigma workbook by ID, including its name, folder path, owner, and latestversion. Use listworkbooks to find workbook IDs. latestversion is the value createworkbook_bookmark needs.

get_workbook_schema

Get the full schema of a workbook: every element with its columns and types. Set includesql=true to also return each element's generated SQL. Large for big workbooks — prefer listworkbook_elements to just enumerate elements.

list_workbook_pages

List the pages (tabs) in a workbook. Use listworkbooks for workbook IDs. Page IDs from here feed listworkbookpageelements and the pageid argument of exportworkbook.

list_workbook_elements

List every element (table, chart, control, text, image) in a workbook, across all pages. Use listworkbookpageelements instead to scope to one page. Element IDs from here feed getelementquery, listelementcolumns, and exportworkbook.

list_workbook_page_elements

List the elements on one workbook page. Use listworkbookpages for page IDs. Prefer this over listworkbookelements when you only care about a single page.

get_element_query

Get the warehouse SQL Sigma generates for one workbook element. Use listworkbookelements for element IDs. Use listworkbookqueries to get the SQL for every element in one call instead.

list_element_columns

List the columns of one workbook element, with labels, formulas, and data types. Use listworkbookelements for element IDs, or listworkbookcolumns to get columns for every element at once.

list_workbook_columns

List columns for every element in a workbook in one call, each tagged with its elementid. Use listelement_columns for a single element.

list_workbook_queries

List the generated warehouse SQL for every element in a workbook. Use this to audit what Sigma runs against the warehouse. Use getelementquery for one element.

list_workbook_controls

List a workbook's controls (filters and parameters). Call this before exportworkbook to discover valid keys for its 'parameters' map — each control's 'name' is the key, and valuetype shows what it accepts.

list_workbook_sources

List the data sources a workbook reads from (tables, data models, other workbooks). Use listworkbooklineage for the full upstream graph.

list_workbook_lineage

List the lineage graph for a workbook: warehouse tables, data models, and elements with their upstream source IDs. Use for data-lineage and impact analysis. Use getelementlineage to trace a single element.

get_element_lineage

Get the lineage of one workbook element, tracing it back to its sources. Use listworkbookelements for element IDs, or listworkbooklineage for the whole workbook.

list_workbook_versions

List a workbook's published version history with publish times and authors. The version numbers here are valid workbookversion values for createworkbookbookmark and tagworkbook.

create_workbook

Create an empty workbook in a folder. folderid is required — get one from listfiles with typefilters=['folder'], or a member's homefolderid from getmember. To start from a template instead, use createworkbookfrom_template.

copy_workbook

Duplicate a workbook into a destination folder. Both name and destinationfolderid are required — use listfiles with typefilters=['folder'] for folder IDs. Set copy_bookmarks to also copy saved views.

export_workbook

Start an export of a workbook element or page and return a queryid. Pass that queryid to downloadquery to fetch the bytes. elementid (from listworkbookelements) is required for csv, jsonl, json, and xlsx; pageid (from listworkbookpages) is used for pdf and png. Call listworkbook_controls for valid 'parameters' keys.

list_workbook_bookmarks

List the saved views (bookmarks) on a workbook. Bookmark IDs feed deleteworkbookbookmark and the bookmarkid filter on listworkbookelements; explorekey values here are what createworkbookbookmark requires.

create_workbook_bookmark

Create a saved view (bookmark) on a workbook, reusing the exploration of an existing one. Requires name, workbookversion, isshared, and explorekey. Get workbookversion from getworkbook (latestversion) and explorekey from listworkbookbookmarks. The API cannot create an exploration, so a workbook with no existing saved view has no usable explorekey.

delete_workbook_bookmark

Delete a saved view (bookmark) from a workbook. Use listworkbookbookmarks to find bookmark IDs. This cannot be undone.

list_workbook_tags

List the version tags applied to a workbook. Use listtags for all tags in the organization, or tagworkbook to apply one.

tag_workbook

Apply a version tag to a published workbook version. 'tag' is the tag NAME, not its ID — call listtags and use the 'name' field, or createtag to make a new one. Defaults to the latest published version.

list_workbook_schedules

List the scheduled exports configured on a workbook. Use listmemberschedules to see schedules owned by a specific member instead.

create_workbook_grant

Grant a member or team access to a workbook at the view, explore, or edit level. Provide exactly one of memberid (from listmembers) or teamid (from listteams). Use list_grants to review existing access.

download_query

Download the result of an export started by exportworkbook or exportreport, using the queryid those tools return. Returns base64-encoded bytes, cut off at maxbytes (default 5 MB) with truncated=true. Sigma needs a few seconds to finish an export, so retry on a not-found error.

list_workspaces

List workspaces in the Sigma organization. Filter server-side by name, and set exact_name=true to require an exact match. Workspace IDs feed the workspace grant tools.

get_workspace

Get a workspace by ID. Use list_workspaces to find workspace IDs.

create_workspace

Create a workspace to hold shared folders and documents. Set no_duplicates=true to fail rather than create a second workspace with the same name.

update_workspace

Rename a workspace. Use list_workspaces to find workspace IDs.

delete_workspace

Delete a workspace permanently, along with the documents it contains. Use list_workspaces to find workspace IDs. This cannot be undone.

list_workspace_grants

List the members and teams granted access to a workspace, with their permission levels. Use createworkspacegrant to add access and deleteworkspacegrant to remove it.

create_workspace_grant

Grant a member or team access to a workspace at the view, explore, organize, or edit level. Provide exactly one of memberid (from listmembers) or teamid (from listteams).

delete_workspace_grant

Revoke a member's or team's access to a workspace. Use listworkspacegrants to find grant IDs. This cannot be undone.

list_grants

List permission grants. Sigma requires at least one of inodeid (from listfiles or listworkbooks), teamid (from listteams), or memberid (from listmembers) — a call with none of them is rejected. Set directgrants_only=true to exclude inherited folder grants.

get_grant

Get a permission grant by ID. Use list_grants to find grant IDs.

create_grant

Grant a member or team access to any inode (folder, workbook, data model, table). Provide exactly one of memberid or teamid. Valid permission values depend on the inode type — see the permission field description. For workbooks and workspaces, createworkbookgrant and createworkspacegrant are simpler.

delete_grant

Revoke a permission grant. Use list_grants to find grant IDs. This cannot be undone.

View all tools by creating a free accountSee more tools

How to set up Merge Agent Handler

In an mcp.json file, add the configuration below, and restart Cursor.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5      "headers": {
6        "Authorization": "Bearer yMt*****"
7      }
8    }
9  }
10}
11
Copy Code

Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.

Make sure Claude is using the Node v20+.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "command": "npx",
5      "args": [
6        "-y",
7        "mcp-remote@latest",
8        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9        "--header",
10        "Authorization: Bearer ${AUTH_TOKEN}"
11      ],
12      "env": {
13        "AUTH_TOKEN": "yMt*****"
14      }
15    }
16  }
17}
Copy Code
Copied!

Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.

Learn more in the official documentation ↗

1{
2    "mcpServers": {
3      "agent-handler": {
4        "command": "npx",
5        "args": [
6          "-y",
7          "mcp-remote@latest",
8          "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9          "--header",
10          "Authorization: Bearer ${AUTH_TOKEN}"
11        ],
12        "env": {
13          "AUTH_TOKEN": "<ah-production-access-key>"
14        }
15      }
16    }
17  }
Copy Code

In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".

You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.

Learn more in the official documentation ↗

1{
2  "inputs": [
3    {
4      "type": "promptString",
5      "id": "agent-handler-auth",
6      "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7      "password": true
8    }
9  ],
10  "servers": {
11    "agent-handler": {
12      "type": "stdio",
13      "command": "npx",
14      "args": [
15        "-y",
16        "mcp-remote@latest",
17        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18        "--header",
19        "Authorization: Bearer ${input:agent-handler-auth}"
20      ]
21    }
22  }
23}
Copy Code

FAQs on using Merge's Sigma Computing  MCP server

FAQs on using Merge's Sigma Computing  MCP server

What is a Sigma Computing MCP?

It's an MCP server that lets your agents access data and functionality from Sigma Computing via tools. Your agents can invoke these tools to pull a workbook's latest results, list the datasets available in a workspace, check who has access to a given workspace, export a dashboard's underlying data, and more.

Sigma Computing also ships its own MCP server for natural-language search and analysis over workbooks and data models, but Merge Agent Handler lets you combine Sigma Computing tools with every other connector your agents use in one governed endpoint, with credential management, DLP, and audit logging built in.

How can I use the Sigma Computing MCP server?

The use cases naturally depend on the agent you've built, but here are a few common ones:

  • Dashboard summary digests: every Monday morning, an agent pulls the latest numbers from a revenue workbook and posts a plain-language summary to Slack, so the team catches up without opening Sigma Computing
  • Anomaly detection on a metric: an agent checks a key metric against its historical range on a schedule and flags the workbook when a value moves outside expected bounds, catching a broken pipeline before a stakeholder notices
  • Cross-tool data correlation: when a support ticket references a customer, an agent pulls that account's usage numbers from a Sigma Computing dataset and attaches them to the ticket for context
  • Access provisioning for new workspace members: when a new analyst joins a team in the HRIS, an agent adds them to the right Sigma Computing workspace and sets their role based on department

What are popular tools for Sigma Computing's MCP server?

Here are some of the most commonly used tools:

  • list_workbooks: returns the workbooks a user or service account can see across workspaces. it's the starting point for most agents since almost every other call needs a workbook ID first
  • get_workbook_data: pulls the current query results from a specific workbook element. agents use it to answer questions about the latest numbers without re-running the underlying SQL themselves
  • list_datasets: lists the datasets and data models available in a workspace, including their descriptions. this is how an agent discovers what data exists before it tries to query anything
  • get_dataset_schema: returns column names, types, and definitions for a given dataset. agents rely on this to write accurate queries and explain what a field actually measures
  • list_workspace_members: lists who has access to a workspace and at what permission level. it's commonly used for access audits and provisioning checks
  • get_embed_url: generates a signed embed URL for a workbook or dashboard. agents use it to hand off a live view of the data instead of describing it in text

What makes Merge Agent Handler's Sigma Computing MCP server better than alternative Sigma Computing MCP servers?

A few things set Merge Agent Handler's Sigma Computing MCP server apart from building your own or using a community alternative:

  • Enterprise-grade security and DLP: Merge Agent Handler includes built-in data loss prevention controls that let you block or redact sensitive fields before they reach an agent. For Sigma Computing, this means you can prevent row-level revenue or customer data surfaced in a workbook from being exposed even when the agent has broad read access
  • Managed authentication and credentials: Merge stores and refreshes Sigma Computing credentials on your behalf. You never expose raw API keys or OAuth tokens to an agent or manage token rotation manually
  • Real-time observability and audit trail: Every tool call made against Sigma Computing is logged with timestamp, tool name, input parameters, and response metadata. You can audit exactly what an agent read or wrote without instrumenting anything yourself
  • Tool Packs and controlled access: Tool Packs let you bundle specific Sigma Computing tools with tools from other connectors into a single MCP endpoint, scoped to a specific use case. An agent gets exactly the tools it needs, nothing more

How can I start using Merge Agent Handler's Sigma Computing MCP server?

You can take the following steps:

1. Create or log into your Merge Agent Handler account.

2. Install the Merge CLI by running pipx install merge-api, then run merge configure to link the CLI to your Merge account and merge login to authenticate your session.

3. Register the Agent Handler MCP server with Claude Code by running claude mcp add --transport http agent-handler https://ah-api.merge.dev/mcp, then open Claude Code and run /mcp to confirm agent-handler appears with a connected status.

4. Select agent-handler from the MCP list. This opens a browser window where you select which integrations to authenticate. Choose Sigma Computing and complete the auth flow. Merge stores and manages the credentials going forward.

5. Open a Claude Code session and start querying Sigma Computing data directly. The first time you use a Sigma Computing tool, a Magic Link may appear to complete connector authentication.

If you want to connect Merge Agent Handler's Sigma Computing MCP with internal or customer-facing agentic products, you can follow the steps in our docs.

Can employees use Merge to connect their AI tools to Sigma Computing?

Yes, Merge for Workforce lets your employees connect Claude, ChatGPT, Microsoft Copilot, Cursor, Codex, and other MCP-compatible AI tools to Sigma Computing without bypassing IT governance.

Instead of setting up direct connections with personal credentials that IT can't monitor or revoke, each employee authenticates through Merge and gets individual credentials tied to their identity. A data analyst can ask their AI to pull a workbook's latest numbers, summarize a dashboard, or check a metric trend, all within IT-defined permissions.

IT also provisions access by role or group via SCIM. A data analyst, for example, gets Sigma Computing access to query workbooks, Snowflake access to run ad hoc SQL, and Slack access to post dashboard summaries, while a sales manager gets Salesforce access to pull pipeline data, Sigma Computing access to check quota dashboards, and Gmail access to draft forecast updates.

Every tool call an employee's AI makes to Sigma Computing is also inspected against your DLP rules and logged to a searchable audit trail, giving security teams full visibility into what data was accessed and by whom.

Explore other MCP servers built and managed by Merge

activecampaign
ActiveCampaign
adobe_pdf_services
Adobe PDF Services
ahrefs
Ahrefs
airtable
Airtable
amadeus
Amadeus
amazon_s3
Amazon S3
amplitude
Amplitude
anaplan
Anaplan
apollo
Apollo
arize
Arize
articulate
Articulate Reach 360
asana
Asana
ashby
Ashby
attio
Attio
avalara
Avalara
aviationstack
Aviationstack
axiom
Axiom
bamboohr
BambooHR
basecamp
Basecamp
biorxiv
bioRxiv
bitbucket
Bitbucket
bitly
Bitly
box
Box
brex
Brex

Ready to try it out?

Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now