Connect your AI Agents to Smartsheet in minutes

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

Available tools

list_attachments

List all attachments on a sheet with pagination. Includes file attachments and URL links.

attach_url

Attach a URL to a sheet. Supported types: LINK, BOX_COM, DROPBOX, EGNYTE, EVERNOTE, GOOGLE_DRIVE, ONEDRIVE.

get_attachment

Get attachment details including download URL for file attachments. Use list_attachments to find IDs.

delete_attachment

Delete an attachment from a sheet. This cannot be undone. Use list_attachments to find IDs.

list_columns

List all columns in a sheet with pagination. Returns column IDs, titles, types, and indices.

add_column

Add a column to a sheet. Specify title, type, and optional index for position. Use PICKLIST type with options for dropdown columns.

get_column

Get a single column by ID. Returns column title, type, options, and other properties.

update_column

Update a column's title, type, or position. Use list_columns to find column IDs.

delete_column

Delete a column from a sheet. This cannot be undone. Cannot delete the primary column.

list_discussions

List all discussions on a sheet with pagination. Includes discussion titles and comment counts.

create_discussion

Create a discussion on a sheet with an initial comment. Optionally provide a title.

create_row_discussion

Create a discussion on a specific row with an initial comment. Use get_sheet to find row IDs.

get_discussion

Get a discussion with all its comments. Use list_discussions to find valid discussion IDs.

delete_discussion

Delete a discussion and all its comments. This cannot be undone.

add_comment

Add a comment to an existing discussion. Use list_discussions to find discussion IDs.

update_comment

Update a comment's text. Use get_discussion to find comment IDs.

delete_comment

Delete a comment. This cannot be undone. Use get_discussion to find comment IDs.

list_home_folders

List folders at the home level with pagination. Does not include workspace folders.

create_folder

Create a folder at home, inside another folder, or in a workspace. Set parent_folder_id for subfolder, workspace_id for workspace folder.

get_folder

Get a folder with its contents (sheets, subfolders, reports). Use list_home_folders to find valid IDs.

update_folder

Update a folder name. Use list_home_folders or get_workspace to find folder IDs.

delete_folder

Permanently delete a folder and all its contents. This cannot be undone.

list_groups

List all groups in the organization with pagination. Groups can be used for sharing sheets.

create_group

Create a new group with optional description and initial members (by email). Requires admin privileges.

get_group

Get a group with its members. Use list_groups to find valid group IDs.

update_group

Update a group's name or description. Use list_groups to find valid group IDs.

delete_group

Delete a group. This cannot be undone. Members are not deleted.

add_group_members

Add members to a group by email address. Use get_group to see current members.

remove_group_member

Remove a member from a group by user ID. Use get_group to find member user IDs.

list_reports

List all reports accessible to the user with pagination. Reports aggregate data from multiple sheets.

add_rows

Add rows to a sheet. Each row has cells with column_id and value. Use to_top/to_bottom/parent_id/sibling_id for positioning.

get_row

Get a single row from a sheet by row ID. Use include parameter for additional data like discussions and attachments.

update_rows

Update existing rows in a sheet. Each row must have id and cells to update. Can also reposition rows with to_top/to_bottom/parent_id.

delete_rows

Delete rows from a sheet by row IDs. This cannot be undone.

move_rows

Move rows from one sheet to another. Rows are removed from the source sheet. Use list_sheets to find sheet IDs.

copy_rows

Copy rows from one sheet to another. Original rows remain in the source sheet. Use list_sheets to find sheet IDs.

search

Search across all sheets, rows, and other objects. Returns matching items with context data and parent references.

search_sheet

Search within a specific sheet. Returns matching rows and cells with context. Use list_sheets to find sheet IDs.

list_sheet_shares

List all shares on a sheet with pagination. Shows who has access and their access level.

share_sheet

Share a sheet with users by email. Set access_level to VIEWER, EDITOR, EDITOR_SHARE, ADMIN, or OWNER.

update_share

Update a share's access level. Use list_sheet_shares to find share IDs.

delete_share

Remove a share from a sheet. The user will lose access. Use list_sheet_shares to find share IDs.

list_sheets

List all sheets accessible to the user with pagination. Use page and page_size to navigate results.

create_sheet

Create a new sheet with specified columns. At least one column must have primary=true. Use TEXT_NUMBER type for general text columns.

get_sheet

Get a sheet with its columns and rows. Use include parameter for attachments, discussions, etc. Supports pagination for rows.

update_sheet

Update sheet properties like name. Use list_sheets to find valid sheet IDs.

delete_sheet

Permanently delete a sheet. This cannot be undone. Use list_sheets to find valid sheet IDs.

copy_sheet

Copy a sheet to home, a workspace, or a folder. Specify destination_type and destination_id for non-home destinations.

sort_sheet

Sort a sheet by one or more columns. Each criterion needs column_id and direction (ASCENDING or DESCENDING).

get_current_user

Get the current authenticated user's profile including email, name, locale, and account info.

list_users

List all users in the organization with pagination. Requires admin privileges.

get_user

Get a user by ID. Requires admin privileges. Use list_users to find valid user IDs.

validate_credential

Validate Smartsheet API credentials by fetching current user profile. Returns {success, message}.

list_webhooks

List all webhooks for the authenticated user with pagination.

create_webhook

Create a webhook to receive callbacks when a sheet changes. Use '.' for events to subscribe to all events.

get_webhook

Get a webhook's details including status, events, and callback URL. Use list_webhooks to find valid IDs.

update_webhook

Update a webhook's enabled status or event subscriptions. Use list_webhooks to find valid IDs.

delete_webhook

Delete a webhook. It will stop receiving callbacks. This cannot be undone.

list_workspaces

List all workspaces with pagination. Returns workspace IDs, names, and access levels.

create_workspace

Create a new workspace. Workspaces organize sheets, reports, and dashboards.

get_workspace

Get a workspace with its contents (sheets, folders, reports, dashboards). Use list_workspaces to find valid IDs.

update_workspace

Update a workspace name. Use list_workspaces to find valid IDs.

delete_workspace

Permanently delete a workspace and all its contents. 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 Smartsheet  MCP server

FAQs on using Merge's Smartsheet  MCP server

Explore other MCP servers built and managed by Merge

zohocrm
Zoho CRM
zohodesk
Zoho Desk
zoom
Zoom
zoominfo
ZoomInfo

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