Skip to main content
Glama
christianclaudio

mcp-server-sigma

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SIGMA_CLIENT_IDYesYour Sigma API client ID.
SIGMA_MCP_PROFILENoTool registration subset: core (36 tools), admin (52), embed (55), full (155).full
SIGMA_API_BASE_URLYesRegion-specific Sigma API host URL.
SIGMA_MCP_READONLYNoSet 1 to register only read-only tools (83 tools). Models cannot alter org state.0
SIGMA_CLIENT_SECRETYesYour Sigma API client secret.
SIGMA_MCP_LOG_FORMATNoSet json for structured JSON logging with duration metrics (duration_ms).text
SIGMA_ALLOWED_TENANTSNoComma-separated allowlist of tenant org IDs permitted for RFC 8693 token exchange.
SIGMA_STRICT_TENANT_ALLOWLISTNoSet 1 to fail closed (HTTP 403) if a tenant request is made without an explicit allowlist entry.0
SIGMA_MCP_ALLOW_BULK_DESTRUCTIVENoSet 1 to enable bulk deactivate/remove operations (sigma_bulk_deactivate_members, sigma_bulk_remove_team_members) (157 total).0

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": true
}
resources
{
  "subscribe": false,
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
workbooks_list_workbooksA

List all workbooks in the organization. Pass summary_only=True for concise token-efficient response.

workbooks_get_workbookC

Get workbook metadata.

workbooks_create_workbookC

Create an empty workbook in a folder.

workbooks_duplicate_workbookA

Duplicate an existing workbook.

workbook_id: ID of the workbook to clone. name: Name for the new cloned workbook (required by the API). destination_folder_id: ID of the destination folder. If omitted, clones into the same folder as the original.

workbooks_list_workbook_pagesC

List pages in a workbook.

workbooks_list_workbook_lineageC

List data lineage for a workbook.

workbooks_get_workbook_version_historyC

Get version history for a workbook.

workbooks_restore_workbook_versionC

Restore a workbook to a previous version.

workbooks_convert_workbook_to_reportA

Convert a workbook to a report (one-way, creates a new report).

workbook_id: ID of the workbook to convert. name: Name for the new report (required by the API). destination_folder_id: Optional folder ID for the report; defaults to My Documents.

workbooks_list_workbook_grantsC

List permission grants on a workbook.

workbooks_grant_workbook_accessB

Grant access to a workbook. grant_type: 'member' or 'team'. permission: 'view', 'explore', 'edit'.

workbooks_list_workbook_embedsC

List embed configurations for a workbook.

workbooks_create_workbook_embedA

Create an embed for a workbook.

embed_type: Visibility of the embed. Only 'public' is currently supported. source_type: Scope of the embed — 'workbook' (entire workbook), 'page', or 'element'. source_id: Required when source_type is 'page' or 'element'.

workbooks_export_workbookA

Export a workbook element. If element_id is empty, exports the first page.

format: 'pdf', 'png', 'csv', 'xlsx', 'json', 'jsonl'. layout: 'portrait' or 'landscape' (only for pdf/png). element_id: The specific element to export. If omitted, uses the first page element.

workbooks_list_workbook_schedulesB

List scheduled exports for a workbook.

workbooks_add_workbook_scheduleC

Create a scheduled export for a workbook. See Sigma docs for schedule body schema.

workbooks_delete_workbook_scheduleA

Delete a scheduled export. Requires confirm=True.

workbooks_list_workbook_bookmarksA

List bookmarks (saved filter states) in a workbook.

workbooks_add_workbook_bookmarkC

Add a bookmark to a workbook.

workbooks_get_workbook_tagsC

List tags on a workbook.

workbooks_tag_workbookA

Apply a version tag to a workbook by tag NAME (e.g. 'Production'). The Sigma API takes the tag name here, not its ID.

workbooks_remove_workbook_tagA

Remove a tag from a workbook. Requires confirm=True.

workbooks_list_templatesB

List all templates in the organization.

workbooks_get_templateC

Get template details.

workbooks_create_workbook_from_templateB

Create a workbook from a template. This brings real visuals — the only programmatic way to get charts/tables.

workbooks_save_template_from_workbookC

Save a workbook as a reusable template.

workbooks_list_reportsB

List all reports in the organization.

workbooks_get_reportC

Get report metadata.

workbooks_create_reportD

Create a report.

workbooks_duplicate_reportC

Duplicate a report.

report_id: ID of the report to clone. name: Name for the new cloned report (required by the API). destination_folder_id: ID of the destination folder to clone into (required by the API).

workbooks_list_report_sourcesC

List data sources used by a report.

workbooks_list_report_elementsC

List elements in a report.

workbooks_list_report_queriesC

List SQL queries in a report.

workbooks_list_report_lineageC

List lineage for a report.

workbooks_export_reportC

Export a report. format: 'pdf', 'png', 'csv', 'xlsx'.

workbooks_list_report_schedulesB

List scheduled exports for a report.

workbooks_create_report_scheduleC

Create a scheduled export for a report.

workbooks_list_shared_templatesA

List templates shared with your organization from other orgs.

workbooks_accept_shared_templateC

Accept a pending template share from another organization.

workbooks_copy_workbook_to_memberB

Copy a workbook into a member's My Documents folder.

name: Optional name for the copied workbook. Defaults to the original workbook name.

workbooks_deploy_template_to_folderC

Full deployment: instantiate a template into a folder, then optionally swap its sources.

workbooks_promote_workbookB

Promote a workbook by tagging it (e.g., 'Production'). Creates tag if it doesn't exist.

workbooks_export_and_downloadA

Export a workbook/element and download the result. Polls until ready.

format: 'csv', 'pdf', 'xlsx', 'png'. layout: 'portrait' or 'landscape' (pdf only). parameters: Sigma control overrides e.g. {'DateRange': 'min:2024-01-01,max:2024-01-31'}. max_bytes: maximum allowed response size (default 10 MB). Returns size info without content if exceeded. Returns base64-encoded file content on success.

workbooks_reassign_workbook_ownershipA

Transfer all workbooks from one member to another.

Resolves members by email, finds all workbooks owned by old owner, then PATCHes /v2/files/{id} to reassign. dry_run=True (default) reports what would change without making changes.

workbooks_list_workbooks_shared_with_memberB

List all workbooks accessible to a member with full workbook metadata.

Cross-references member's file list against the full workbook catalog.

workbooks_list_all_workbooksA

List ALL workbooks in the organization, automatically following pagination.

workbooks_list_all_reportsA

List ALL reports in the organization, automatically following pagination.

workbooks_update_workbook_contentsA

Update a workbook from a code representation (JSON document specification).

Mutating operation. Requires confirm=True and document_version integer to guard against concurrent overwrites.

workbooks_verify_workbook_specB

Verify a workbook code representation specification without saving.

Validates schema structure, syntax, and element layout.

workbooks_update_report_contentsA

Update a report from a code representation (JSON document specification).

Mutating operation. Requires confirm=True and document_version integer to guard against concurrent overwrites.

workbooks_verify_report_specB

Verify a report code representation specification without saving.

workbooks_download_query_exportA

Download an exported query result file by queryId.

Returns the file content (JSON or text/CSV) or base64 binary (PDF, XLSX, PNG), or reports 'processing' if the query has not finished executing. max_bytes: Maximum allowed payload size in bytes (default 10 MB).

workbooks_list_workbook_agentsB

List AI agents defined in a specific workbook (optionally filtering by version tag).

workbooks_run_workbook_agentA

Run an in-workbook AI agent with conversation messages.

Mutating / execution operation. Consumes LLM tokens. Requires confirm=True. messages: List of conversation turns (role: 'user', 'assistant', 'system', 'tool' with content). version_tag_name: Target published version tag (defaults to latest published version).

datasets_list_connectionsB

List all connections in the Sigma organization. Pass summary_only=True for concise token-efficient response.

datasets_get_connectionC

Get details for a specific connection.

datasets_sync_connectionB

Force Sigma to re-index a warehouse path. Pass empty list for full sync.

datasets_test_connectionC

Test connectivity for a connection.

datasets_list_columns_for_tableC

List columns for a warehouse table by its tableId.

datasets_list_connection_grantsC

List permission grants on a connection.

datasets_add_connection_grantC

Add a grant to a connection.

grant_type: 'member' or 'team'. permission: 'annotate' (Can Use & Annotate) or 'usage' (Can Use).

datasets_delete_connection_path_grantB

Delete a grant from a connection path. DESTRUCTIVE. Requires confirm=True.

datasets_list_data_modelsB

List all data models in the organization. Pass summary_only=True for concise token-efficient response.

datasets_get_data_modelC

Get data model metadata.

datasets_get_data_model_specB

Get the full code representation (JSON spec) of a data model — tables, columns, metrics, relationships.

datasets_create_data_modelB

Create a data model from a JSON code representation. Must include name, folderId, schemaVersion, and pages with elements.

datasets_update_data_modelA

Update an existing data model from a JSON code representation (full replacement via PUT).

datasets_list_data_model_elementsC

List elements in a data model.

datasets_list_data_model_columnsB

List all columns across all elements in a data model.

datasets_swap_data_model_sourcesC

Swap data sources for a data model.

datasets_list_data_model_lineageC

List lineage for a data model.

datasets_tag_data_modelB

Apply a version tag to a data model by tag NAME. The Sigma API takes the tag name here, not its ID.

datasets_swap_report_sourcesB

Swap data sources on a report. Use connectionMapping for connection-level swaps, sourceMapping for table-level swaps.

datasets_sync_all_tables_in_schemaB

Sync all tables in a warehouse schema so they become visible in Sigma.

datasets_bulk_sync_tenant_connectionsA

Sync connections across all tenant organizations.

Lists all tenants, then for each tenant: obtains a tenant-scoped token, lists their connections, and syncs each one. Requires multi-tenant auth (for_tenant method). Uses bounded concurrency.

NOTE: Requires PyJWT and the for_tenant() method (Phase C). Returns an error if token exchange is not available.

datasets_list_all_data_modelsA

List ALL data models in the organization, automatically following pagination.

elements_list_workbook_page_elementsB

List elements on a specific page of a workbook.

elements_list_workbook_elementsB

List all elements (tables, charts, controls, etc.) in a workbook.

elements_list_workbook_columnsA

List all columns across all elements in a workbook, including formulas and types.

elements_list_workbook_queriesC

List generated SQL queries for all elements in a workbook.

elements_list_workbook_controlsB

List control elements (filters, parameters) in a workbook.

elements_list_workbook_sourcesC

List data sources used by a workbook.

elements_swap_workbook_sourcesB

Swap data sources for a workbook. Use connectionMapping for connection-level swaps, sourceMapping for table-level swaps.

elements_get_element_queryB

Get the generated SQL query for a specific element in a workbook.

elements_get_element_columnsC

List columns for a specific element in a workbook.

elements_materialize_elementC

Trigger materialization for a workbook. Pass elementId in body if needed.

elements_get_materialization_jobC

Check status of a materialization job.

elements_list_materialization_schedulesC

List materialization schedules for a workbook.

elements_swap_template_sourcesA

Swap data sources on a template. Use connectionMapping for connection-level swaps, sourceMapping for table-level swaps.

elements_list_source_swap_policiesA

List all source swap policies (rules for automatic source swapping on deployment).

elements_get_source_swap_policyC

Get a source swap policy.

elements_create_source_swap_policyC

Create a source swap policy for automated deployments.

elements_materialize_and_waitC

Trigger materialization and poll until complete or timeout.

elements_list_all_input_tablesA

Scan all workbooks to find input-table elements.

Returns a list of input tables with their workbook, page, and element context. Errors on individual workbooks/pages are collected rather than silently swallowed.

elements_formula_pitfallsA

Return a curated reference of common Sigma formula pitfalls — column reference syntax, type requirements, NULL handling, aggregate vs row-level context, date function argument order, and metrics vs calculated columns. Use this before writing any Sigma formula expression.

elements_search_docsA

Search Sigma Computing documentation using AI-powered semantic search. Returns relevant doc passages with source URLs. Use this to answer questions about Sigma features, configuration, formulas, administration, embedding, and best practices.

read_only_hint: True

elements_get_doc_pageA

Fetch a specific Sigma documentation page as clean Markdown. Pass the page slug (e.g. 'create-a-workbook') or a section path (e.g. 'docs/create-a-workbook'). Returns the full page content.

read_only_hint: True

workspace_delete_fileC

Delete a file/workbook/data model by its inode ID. Requires confirm=True.

workspace_list_filesB

List files/folders. Optionally filter by parentId or type ('workbook', 'folder', 'data-model', 'template').

workspace_create_folderC

Create a folder.

workspace_update_fileC

Update file properties (name, parentId for moving).

workspace_list_tagsB

List all tags in the organization. Supports pagination via page token.

workspace_create_tagB

Create a new tag (used for version promotion like 'Production', 'Staging').

workspace_delete_tagB

Delete a tag. Requires confirm=True.

workspace_list_workspacesB

List all workspaces. Supports pagination via page token.

workspace_get_workspaceC

Get workspace details.

workspace_create_workspaceC

Create a new workspace.

workspace_delete_workspaceA

Delete a workspace. Requires confirm=True.

workspace_list_workspace_grantsB

List permission grants on a workspace. Supports pagination via page token.

workspace_grant_workspace_accessC

Grant workspace access.

grant_type: 'member' or 'team'. permission: 'view', 'explore', 'organize' (Contribute), or 'edit' (Manage).

workspace_delete_workspace_grantB

Delete a permission grant from a workspace. DESTRUCTIVE. Requires confirm=True.

workspace_list_all_filesA

List files/folders in the organization, automatically following pagination.

parent_id: Optional parent folder ID to list files within. type_filter: Optional file type filter ('workbook', 'folder', 'data-model', 'template', 'symlink'). Note: Shortcuts/symlinks are excluded by default unless type_filter='symlink'.

admin_list_deploymentsB

List all deployment policies.

admin_get_deploymentC

Get a deployment policy.

admin_create_deploymentC

Create a deployment policy.

admin_archive_deploymentA

Delete (archive) a deployment policy. Requires confirm=True.

admin_deactivate_memberB

Deactivate a member. Requires confirm=True.

admin_list_deployment_documentsC

List documents in a deployment policy.

admin_add_deployment_documentsC

Add workbooks/reports to a deployment policy.

admin_list_tenantsA

List all tenant organizations (for multi-tenant deployments).

admin_get_tenantC

Get tenant organization details.

admin_create_tenantC

Create a tenant organization.

admin_list_api_connectorsA

List all API connectors (custom data integrations).

admin_get_api_connectorA

Get details for an API connector.

admin_list_membersB

List all members in the organization. Pass summary_only=True for concise token-efficient response.

admin_get_memberC

Get member details including homeFolderId.

admin_create_memberC

Create a new member. member_type: 'admin', 'creator', 'viewer'.

admin_update_memberC

Update member properties (firstName, lastName, memberType, isActive, etc.).

admin_get_current_userA

Get the current authenticated user's details.

admin_list_member_teamsB

List teams a member belongs to.

admin_list_teamsB

List all teams. Pass summary_only=True for concise token-efficient response.

admin_get_teamC

Get team details.

admin_create_teamC

Create a new team.

admin_delete_teamA

Delete a team. Requires confirm=True.

admin_list_team_membersC

List members of a team.

admin_update_team_membersC

Add or remove members from a team. Provide lists of member IDs.

admin_list_user_attributesA

List all user attributes (used for row-level security and dynamic parameters).

admin_create_user_attributeA

Create a user attribute for RLS or dynamic parameters.

name: Attribute name (e.g. 'Region', 'CustomerID'). default_value: Default string value assigned when no override exists. description: Optional description of the attribute.

admin_set_user_attribute_for_teamsB

Set a user attribute value for specific teams.

assignments: List of objects, each with 'teamId' (str) and 'value' (str). Example: [{"teamId": "abc123", "value": "US"}]

admin_set_user_attribute_for_tenantsB

Set a user attribute value for specific tenants.

assignments: List of objects, each with 'tenantOrganizationId' (str) and 'value' (str). Example: [{"tenantOrganizationId": "org123", "value": "US"}]

admin_get_user_attribute_usersC

Get all user assignments for a user attribute.

admin_get_user_attribute_teamsC

Get all team assignments for a user attribute.

admin_get_user_attribute_tenantsB

Get all tenant assignments for a user attribute.

admin_update_user_attribute_for_usersA

Revoke a user attribute assignment for specific users. Requires confirm=True.

user_ids: List of user IDs whose attribute assignments should be removed. Example: ["user-uuid-1", "user-uuid-2"]

To assign (not revoke), use sigma_set_user_attribute_for_users instead (direct POST to /v2/user-attributes/{id}/users not yet exposed as a dedicated tool — use sigma_create_grant with a raw body as a workaround).

admin_update_user_attribute_for_teamsA

Revoke a user attribute assignment for specific teams. Requires confirm=True.

team_ids: List of team IDs whose attribute assignments should be removed. Example: ["team-uuid-1", "team-uuid-2"]

admin_update_user_attribute_for_tenantsB

Revoke a user attribute assignment for specific tenants. Requires confirm=True.

tenant_org_ids: List of tenant organization IDs whose attribute assignments should be removed. Example: ["org-uuid-1", "org-uuid-2"]

admin_delete_user_attribute_for_userA

Delete a user attribute assignment for a specific user. DESTRUCTIVE. Requires confirm=True.

admin_delete_user_attribute_for_teamB

Delete a user attribute assignment for a specific team. DESTRUCTIVE. Requires confirm=True.

admin_delete_user_attribute_for_tenantA

Delete a user attribute assignment for a specific tenant. DESTRUCTIVE. Requires confirm=True.

admin_list_account_typesA

List all account types (license types) in the organization.

admin_list_grantsC

List grants for a specific file/workbook/data model by inodeId. Required: inodeId.

admin_create_grantB

Create or update a grant. Body must include inodeId, granteeId, permission, type.

admin_list_translationsB

List organization translation files.

admin_onboard_memberC

Onboard a new member: create account then add to teams.

admin_bulk_assign_team_membersC

Add multiple members to a team in one call.

admin_bulk_deactivate_membersA

Deactivate members matching a name pattern (regex on firstName+lastName).

DESTRUCTIVE: requires both dry_run=False AND confirm=True to execute. Default behavior (dry_run=True) reports matches without making changes. Uses ?includeInactive=true to avoid re-deactivating already-inactive members.

admin_change_member_emailC

Change a member's email address via PATCH /v2/members/{id}.

admin_bulk_remove_team_membersA

Remove multiple members from a team by their email addresses.

Resolves emails to member IDs, then sends a single PATCH to remove all. Requires confirm=True.

admin_list_tenants_paginatedB

List all tenants using cursor-based pagination (nextPageToken model).

Unlike offset-based pagination, tenants use cursor tokens. Returns the complete list of all tenant organizations.

admin_get_tenant_scoped_infoB

Demonstrate tenant token exchange by calling /whoami through a tenant-scoped client.

Uses RFC 8693 token exchange to obtain a tenant-scoped token, then calls the whoami endpoint to verify the scoped identity.

admin_api_capabilitiesA

Describe what the Sigma REST API can and cannot do programmatically.

admin_list_all_membersA

List ALL members in the organization, automatically following pagination.

admin_list_all_teamsA

List ALL teams in the organization, automatically following pagination.

admin_list_recent_webhooksC

List recently recorded incoming Sigma webhook events.

read_only_hint: True

admin_list_org_workbook_agentsB

List all workbook agents across the organization.

admin_get_org_settingC

Get organization setting value.

admin_update_org_settingA

Update organization setting value.

Mutating operation. Requires confirm=True. setting_name: One of aiChatHistory, auditLogging, bulkCopy, comments, csvUpload, emailBranding, licenseUpgradeRequests, publicEmbeds, sampleConnections, timezone. setting_value: Dict containing setting fields to update.

admin_configure_org_aiA

Configure the organization AI provider and models.

Mutating operation. Requires confirm=True. provider_config: Provider specification dict (e.g. provider='openAI'/'anthropic'/'gemini'/'snowflake'/'databricks'/'bedrock'/'azureOpenAI').

admin_reset_org_email_brandingA

Reset the organization email branding settings back to defaults.

Destructive operation. Requires confirm=True.

admin_list_allowed_ipsB

List IP allowlist entries configured for the organization (v3alpha).

admin_add_allowed_ipsA

Create/add IP allowlist entries for the organization (v3alpha).

Mutating operation. Requires confirm=True. entries: List of dicts, each with 'ip' (IPv4/IPv6 or CIDR), 'scope' ('public-api', 'ui', or 'both'), and optional 'description'.

admin_remove_allowed_ipsA

Delete IP allowlist entries by ID from the organization (v3alpha).

Destructive operation. Requires confirm=True. entry_ids: List of IP allowlist entry ID strings to delete.

Prompts

Interactive templates invoked by user choice

NameDescription
workbooks_provision_tenant_dashboardGuide the agent through deploying a Sigma template into a folder and swapping data sources for a target tenant.
datasets_prepare_data_modelGuide the agent in defining a production data model specification, columns, and relations.
datasets_audit_tenant_connectionsGuide the agent through reviewing multi-tenant connections and running dry-run syncs.
elements_swap_warehouse_sourceGuide the agent through re-binding workbook or template data sources to a new connection or table.
admin_audit_organization_permissionsGuide the agent through auditing organization members, team memberships, and assigned user attributes.
admin_onboard_team_memberGuide the agent through creating a new member, assigning team memberships, and verifying home folder setup.

Resources

Contextual data attached and managed by the client

NameDescription
Formula ReferenceCurated reference guide for writing valid Sigma formulas.
API CapabilitiesOverview of supported and unsupported Sigma API operations.
Documentation IndexFull index of all Sigma documentation pages with URLs. Use to discover available doc pages.
resource_webhooks_recent

TDQS

C2.7/5.0

Scored across 172 tools

Disambiguation2/5

Heavy duplication: list_workbooks vs list_all_workbooks, list_reports vs list_all_reports, list_members vs list_all_members, list_teams vs list_all_teams, and list_tenants vs list_tenants_paginated create near-identical pairs. Grant tools are scattered across workbooks_, workspace_, datasets_, and admin_ prefixes with overlapping semantics, and update_user_attribute_for_teams vs set_user_attribute_for_teams vs delete_user_attribute_for_team are hard to tell apart.

Naming Consistency4/5

Names consistently use snake_case with a module prefix (workbooks_, datasets_, elements_, workspace_, admin_) plus verb_noun, which is predictable and readable. Minor deviations exist (e.g. workbooks_run_workbook_agent, admin_api_capabilities, arbitrary choice between workbooks_ and elements_ for workbook element tools).

Tool Count1/5

172 tools is an extreme mismatch for any server scope, far beyond the 3-15 sweet spot. The surface is bloated with pagination variants, redundant list tools, and granular admin operations that should be consolidated or split into separate servers.

Completeness4/5

Coverage is remarkably broad: workbooks, reports, templates, data models, connections, elements, workspaces, tags, deployments, tenants, teams, user attributes, IP allowlists, and webhooks. A few gaps are self-documented, e.g. the direct POST to assign user attributes for users is not exposed and must be worked around.

Maintenance

ActivityActive
ResponsivenessResponsive