Smartsheet MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Smartsheet MCP or direct API to read sheets, update rows, manage reports, and track project work through natural language.

Smartsheet logoSmartsheet
Oauth2Bearer Token

Smartsheet is a collaborative work management platform for projects, sheets, reports, dashboards, and workflows. It helps teams organize work, track progress, and coordinate tasks in one shared workspace.

180 Tools

Try Smartsheet now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
Smartsheet
Try asking
TOOLS

Supported Tools

Every Smartsheet action and event your agent gets out of the box.

Add Alternate Emails

Add one or more alternate email addresses for a user.

Add Attachment Version

Upload a new binary or multipart version of an existing sheet or row file attachment.

Add Cell Image

Upload image bytes to a specific Smartsheet cell using the binary file marker contract.

Add Columns

Inserts one or more columns into a sheet.

Add Favorites

Adds one or more items to the user's Smartsheet favorites.

Add Group

Creates a new organization group.

Add Group Members

Adds one or more members to a group asynchronously.

Add Report Columns

Add columns to a report.

Add Report Scope

Add source sheets to a report by sheet or parent workspace.

Add Rows

Insert one row or a batch of up to 500 rows, preserving Smartsheet location specifiers for top, bottom, parent, and sibling placement.

Add Summary Field Image

Uploads raw image bytes to a sheet summary field.

Add Summary Fields

Creates one or more summary fields on a sheet.

Add User

Add a user to the organization account.

Attach To Comment

Attach a file or supported provider URL to a comment.

Attach To Proof

Attaches a file of up to 30 MB to a proof.

Attach To Row

Attach a file or supported provider URL to a row.

Attach To Sheet

Attach a file or supported provider URL to a sheet.

Check Favorite

Checks whether a specific Smartsheet item is a favorite.

Copy Dashboard

Creates a copy of a specified Smartsheet dashboard.

Copy Folder

Copies a Smartsheet folder.

Copy Rows To Another Sheet

Copy selected rows to the bottom of another Smartsheet sheet.

Copy Sheet

Creates a copy of the specified sheet.

Copy Workspace

Copies a Smartsheet workspace.

Create Cross Sheet References

Creates a cross-sheet reference and defines its source range.

Create Discussion Comment

Adds a comment to a discussion using JSON or multipart upload.

Create Folder In Folder

Creates a new folder inside an existing Smartsheet folder.

Create Folder In Workspace

Creates a new folder at the top level of a Smartsheet workspace.

Create Proof

Creates a proof on a row from an application/octet-stream file upload.

Create Proof Discussion

Creates a discussion on a proof using exactly application/json or multipart/form-data.

Create Proof Request

Creates and sends a proof request.

Create Proof Version

Creates a proof version from a binary file upload.

Create Report

Create a report from a scope, columns, definition, and destination.

Create Row Discussion

Creates a discussion on a row using JSON or multipart upload.

Create Sheet Discussion

Creates a discussion on a sheet using JSON or multipart upload.

Create Sheet In Folder

Creates a sheet from scratch or from the specified template in the specified folder.

Create Sheet In Workspace

Creates a sheet from scratch or from the specified template at the top-level of the specified workspace.

Create Update Request

Creates an update request and sends or schedules its email notification.

Create Webhook

Creates an inactive webhook owned by the connected API-token user.

Create Workspace

Creates a new Smartsheet workspace.

Deactivate User

Deactivate a user in the current plan, blocking all Smartsheet use without changing existing item permissions.

Delete Alternate Email

Delete an alternate email.

Delete Asset Share

Deletes a share for a Smartsheet asset.

Delete Attachment

Delete an attachment from a Smartsheet sheet.

Delete Attachment Versions

Delete every version of an attachment, effectively removing a multi-version attachment from its parent object.

Delete Automation Rule

Deletes an automation rule from a sheet.

Delete Column

Deletes a column from a sheet.

Delete Comment

Deletes the specified comment.

Delete Dashboard

Deletes a specified Smartsheet dashboard.

Delete Discussion

Deletes the specified discussion.

Delete Favorite

Removes one item from the user's Smartsheet favorites.

Delete Folder

Deletes a Smartsheet folder.

Delete Group

Deletes a group asynchronously.

Delete Group Members

Removes a member from a group asynchronously.

Delete Multiple Favorites

Removes multiple favorites of one type.

Delete Proof

Deletes an original proof and all its versions.

Delete Proof Requests

Deletes all requests in a proof.

Delete Proof Version

Deletes the current proof version identified by proof ID.

Delete Report

Delete a report by ID.

Delete Report Column

Delete a column from a report.

Delete Rows

Delete one or more rows from a Smartsheet sheet.

Delete Sent Update Request

Deletes a sent update request only while it is pending; completed requests cannot be deleted.

Delete Sheet

Deletes the sheet specified in the URL.

Delete Summary Fields

Deletes one or more summary fields from a sheet.

Delete Update Request

Terminates future scheduled delivery of an update request.

Delete Webhook

Permanently deletes a webhook owned by the connected API-token user.

Delete Workspace

Permanently deletes a Smartsheet workspace.

Downgrade User

Irreversibly downgrade a user's seat in a specified plan.

Edit Comment

Updates comment text.

Get Alternate Email

Get one alternate email.

Get Asset Share

Retrieves a specific share for a Smartsheet asset.

Get Attachment

Fetch attachment metadata and, for files, a temporary download URL and its lifetime.

Get Automation Rule

Returns an automation rule, including its action values.

Get Column

Gets the definition of a sheet column.

Get Comment

Gets the comment specified by comment ID.

Get Contact

Get a specified Smartsheet contact by contact ID.

Get Cross Sheet Reference

Gets a cross-sheet reference by ID.

Get Current User

Get the connected Smartsheet user's profile.

Get Dashboard

Gets a specified Smartsheet dashboard and its widgets.

Get Dashboard Path

Gets the hierarchical folder and workspace path of a dashboard.

Get Dashboard Publish Status

Gets the publish settings for a Smartsheet dashboard.

Get Discussion

Gets the discussion specified by discussion ID.

Get Folder Metadata

Gets the metadata of a Smartsheet folder.

Get Folder Path

Gets the hierarchical path of a folder within its workspace.

Get Group

Gets a group and its members.

Get Image URLs

Generate temporary read URLs for specified Smartsheet cell images.

Get Proof

Gets a proof, optionally including attachments or discussions.

Get Report

Get one report as a paged JSON object or an offloaded Excel or CSV file.

Get Report Column

Get one report column by its virtual ID.

Get Report Definition

Get a report's filters, grouping, summarizing, and sorting definition.

Get Report Path

Get the report's hierarchical folder and workspace path.

Get Report Publish Status

Get a report's publishing settings.

Get Row

Get a Smartsheet row by sheet and row ID, with optional related row data.

Get Sent Update Request

Gets the specified sent update request on the sheet.

Get Server Info

Get Smartsheet application constants, formats, and supported locales.

Get Sheet

Gets a sheet in the format specified, based on the sheet Id.

Get Sheet Path

Gets the hierarchical path of the sheet, showing its location within folders and workspace, if workspace-level access is provided.

Get Sheet Publish Status

Gets the sheet's 'Publish' settings.

Get Sheet Summary

Returns all summary fields defined on a sheet, including requested format or writer details.

Get Sheet Version

Gets the sheet version without loading the entire sheet.

Get Update Request

Gets an update request that has a future delivery schedule.

Get User

Get a Smartsheet user by ID.

Get Webhook

Gets a webhook owned by the connected API-token user, including its configured event patterns.

Get Workspace Metadata

Gets metadata for a specified Smartsheet workspace.

Import Sheet Into Folder

Imports CSV or XLSX data into a new sheet in the specified folder.

Import Sheet Into Workspace

Imports CSV or XLSX data into a new sheet in the specified workspace.

List Alternate Emails

List a user's alternate email addresses.

List Asset Shares

Retrieves one page of users and groups an asset is shared with and their access levels.

List Attachment Versions

Get one page of an attachment's versions, ordered from newest to oldest.

List Automation Rules

Returns one page of automation rules associated with a sheet.

List Cell History

Return one page of cell modification history.

List Columns

Gets one page of columns belonging to a sheet.

List Contacts

Get one page of the connected user's Smartsheet contacts and return a continuation cursor.

List Cross Sheet References

Lists one page of cross-sheet references for a sheet.

List Dashboards

Gets one page of dashboards the connected user can access.

List Discussion Attachments

Get one page of attachments in a Smartsheet discussion.

List Events

Fetch Smartsheet organization events for a System Admin.

List Favorites

Gets the user's favorites and returns one page with a continuation cursor.

List Filtered Events

Fetch events related to selected Smartsheet sheets and workspaces for a non-admin user.

List Folder Children

Returns one page of immediate resources inside a Smartsheet folder.

List Org Groups

Gets one page of all groups in an organization account, with a continuation cursor.

List Org Sheets

Gets a summarized list of all sheets owned by the members of the organization account.

List Proof Attachments

Gets one page of non-discussion attachments in a proof.

List Proof Discussions

Gets one page of discussions in a proof.

List Proof Request Actions

Gets one page of summarized request actions for a proof.

List Proofs

Gets one page of proofs for a sheet.

List Proof Versions

Gets one page of proof versions from newest to oldest.

List Report Columns

List one page of columns for a report.

List Reports

List all reports accessible to the connected user.

List Report Scope

List one page of source sheets and workspaces in a report's scope.

List Row Attachments

Get one page of row- and row-discussion-level attachments on a Smartsheet row.

List Row Discussions

Gets one page of discussions associated with a row.

List Sent Update Requests

Lists summarized sent update requests on the sheet.

List Sheet Attachments

Get one page of sheet-, row-, and discussion-level attachments on a sheet.

List Sheet Discussions

Gets one page of discussions associated with a sheet.

List Sheets

Gets a list of all sheets that the user has access to.

List Summary Fields

Returns one page of sheet summary fields and a continuation cursor.

List Update Requests

Gets one page of update requests with future schedules and a continuation cursor.

List User Plans

List one token-paginated page of plans to which a user belongs.

List Users

List organization users with optional email, plan, and seat filters.

List Webhooks

Gets one page of webhooks owned by the connected API-token user.

List Workspace Children

Retrieves one page of immediate child resources from a specified Smartsheet workspace.

List Workspaces

Retrieves one page of workspace metadata for workspaces the connected user can access.

Make Alternate Email Primary

Make a confirmed alternate address the user's primary email.

Move Dashboard

Moves a specified Smartsheet dashboard to another container.

Move Folder

Moves a Smartsheet folder to another container.

Move Rows To Another Sheet

Move selected rows to the bottom of another Smartsheet sheet.

Move Sheet

Moves the specified sheet to a new location.

Reactivate User

Reactivate a user deactivated less than 30 days ago.

Remove Report Scope

Remove source sheets from a report by sheet or parent workspace.

Remove User From Organization

Remove a user from the organization, optionally removing shares or transferring assets.

Remove User From Plan

Deactivate a user's membership in a plan while preserving ownership and read-only access.

Reset Webhook Shared Secret

Irreversibly rotates a webhook secret owned by the connected API-token user after explicit confirmation.

Search Everything

Searches all sheets that the user can access, for the specified text.

Search Sheet

Gets a list of the user's search results in a sheet, based on a query.

Send Report By Email

Send a report attachment by email.

Send Rows By Email

Send selected Smartsheet rows by email.

Send Sheet By Email

Sends the sheet as a PDF attachment via email to the designated recipients.

Set Dashboard Publish Status

Publishes or unpublishes a Smartsheet dashboard.

Set Report Publish Status

Set report publishing status and return the resulting public URL when enabled.

Set Sheet Publish Status

Sets the publish status of the sheet and returns the new status, including the URLs of any enabled publishings.

Share Asset

Shares a Smartsheet asset with specified users or groups.

Sort Rows In Sheet

Sort all rows in a Smartsheet sheet by one or more prioritized column criteria.

Update Asset Share

Updates the access level of a share for a Smartsheet asset.

Update Automation Rule

Updates an existing automation rule.

Update Column

Updates, moves, or renames a sheet column.

Update Dashboard

Renames a specified Smartsheet dashboard.

Update Folder

Updates a Smartsheet folder.

Update Group

Updates a group.

Update Proof Status

Sets a proof as complete or incomplete.

Update Report Column

Update a report column's title, position, visibility, or width.

Update Report Definition

Create or entirely replace a report definition.

Update Rows

Update one row or a batch of up to 500 rows, including cells and location operations such as moving, indenting, or outdenting.

Update Sheet

Updates the sheet specified in the URL.

Update Summary Fields

Updates summary fields on a sheet.

Update Update Request

Changes an update request that still has a future scheduled delivery.

Update User

Update user attributes.

Update User Profile Image

Upload a GIF, JPG, or PNG profile image using the provider's binary, multipart, or JSON URL form.

Update Webhook

Updates a webhook owned by the connected API-token user.

Update Workspace

Updates a Smartsheet workspace.

Upgrade User

Irreversibly upgrade a user's seat in a specified plan.

SETUP GUIDE

Connect Smartsheet MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["smartsheet"],
  mcp: true,
});
Create a session scoped to Smartsheet and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "List all sheets in my Smartsheet workspace",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a Smartsheet request
SETUP GUIDE

Connect Smartsheet API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["smartsheet"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to Smartsheet
3

Run Smartsheet tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "List all sheets in my Smartsheet workspace" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the Smartsheet tool calls through the session, and print the final answer

Why Use Composio?

AI Native Smartsheet Integration

  • Supports both Smartsheet MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for reading, writing, and querying your Smartsheet data

Managed Auth

  • Built-in OAuth handling with automatic token refresh and rotation
  • Central place to manage, scope, and revoke Smartsheet access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Smartsheet
  • Scoped, least privilege access to Smartsheet resources
  • Full audit trail of agent actions to support review and compliance

Rolling this out across your team?

Give your team centralized access control across every framework with Composio’s MCP Gateway.

EXPLORE MCP GATEWAY
FAQ

Frequently asked questions

Smartsheet requires connections to go through your own OAuth app. You register it once with Smartsheet, add its client ID and secret in the Composio dashboard, and from then on everyone connects by signing in to Smartsheet as usual. Composio handles the rest of the flow and the token refresh.

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Yes. Composio is SOC 2 Type II compliant and is built to keep your Smartsheet connection and credentials secure. OAuth tokens and API keys are encrypted, and sensitive customer data is protected at rest and in transit.

Composio also undergoes independent security testing and continuously monitors its systems for security threats. You can review the latest reports and policies in the Composio Trust Center.

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

When you connect a Smartsheet account through Composio, every action runs under that account, so anything the agent creates, sends, or changes shows up in Smartsheet as done by you. Keep an approval step in your prompt for actions with side effects, such as sending or deleting, and have the agent draft first.

Exactly the ones Smartsheet lists on its consent screen when you connect. Review that screen before approving. If you connect a work account, your Smartsheet administrator may need to approve the app first, and you can revoke the access inside Smartsheet whenever you want.

Yes. Composio supports multiple connected accounts for the same app, and that works in Claude, ChatGPT, or any other assistant you connect through Composio. Give each Smartsheet connection a name such as work or personal, and the assistant uses the one you mention in the request. Each account keeps its own credentials and nothing is merged.

Composio refreshes Smartsheet tokens automatically, so day to day you do nothing. If you revoke access inside Smartsheet, or Smartsheet invalidates the session, the connection shows as expired in Composio and the agent stops acting on that account until you reconnect it, which is a single sign-in.

Composio's free Hobby plan includes 100,000 tool calls per month with no credit card, which covers most personal Smartsheet use. Paid plans add higher limits and team features. Your Smartsheet plan and its API limits still apply as usual.

Built-in connectors usually give one AI access to a limited set of apps. Many people use Composio because it lets their AI connect to more apps than it normally supports, or connect to multiple accounts for the same app (e.g. connect Claude to multiple Smartsheet accounts).

With Composio, you connect Smartsheet once and then use it across different AI assistants without setting it up separately in each one. Connect your apps to Composio once, then connect Composio to whichever AI you use, whether that's Claude, ChatGPT, Hermes, or your own custom assistant.

Start with Smartsheet.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Smartsheet tool your agent needs.Free to start.

Start building