Smartsheet MCP server
Read sheets and rows, add reviewed updates and inspect discussions using the connected account’s permissions. Access is gated: request enablement for your organization before connecting.
Agent workflows for Smartsheet.
List sheets
Use when discovering accessible sheet IDs. Returns one bounded page of metadata; follow nextPage until null. Not for reading cell contents.
Get sheet
Use when inspecting sheet columns and a bounded page of rows. Filter rowIds and columnIds for targeted reads. totalRowCount covers the sheet; no owner or writer details are requested.
Get row
Use when reading one known row or checking an uncertain row write. Returns cells without writer or contact-object expansions; not a search action.
10 Smartsheet actions, graded by risk.
These actions come from the Arc0 registry. Your identity, provider permissions and Arc0 policies determine which actions can run.
read
6Look things up, subject to your permissions.
- smartsheet.list_sheetsList sheets
Use when discovering accessible sheet IDs. Returns one bounded page of metadata; follow nextPage until null. Not for reading cell contents.
- smartsheet.get_sheetGet sheet
Use when inspecting sheet columns and a bounded page of rows. Filter rowIds and columnIds for targeted reads. totalRowCount covers the sheet; no owner or writer details are requested.
- smartsheet.get_rowGet row
Use when reading one known row or checking an uncertain row write. Returns cells without writer or contact-object expansions; not a search action.
- smartsheet.list_workspacesList workspaces
Use when discovering workspace IDs and access levels. Returns up to 100 metadata entries, the vendor minimum page size. Pass lastKey to continue; not for workspace contents.
- smartsheet.search_sheetSearch sheet
Use when finding IDs matching text inside one sheet. Returns at most 50 structural hits; truncated signals omitted matches. Search indexing can lag writes, so use get_row for verification.
- smartsheet.list_row_discussionsList row discussions
Use when locating a discussion ID on a specific row before replying. Returns bounded discussion metadata without comments or author details; follow nextPage until null.
write
3Create and change things. Allow, or ask the user first.
- smartsheet.add_rowsAdd rows
Use when appending up to ten rows to a sheet. Sheet automations may notify collaborators. Not for updates. After an uncertain result, read back before retrying to avoid duplicate rows.
- smartsheet.update_rowsUpdate rows
Use when setting supplied cells on up to ten known rows. May trigger sheet automation notifications; not for moving or creating rows. Read back after uncertain writes before retrying.
- smartsheet.add_commentAdd comment
Use when replying to a known row discussion as the connected user. Visible to sheet collaborators; followers and mentioned people may be notified. Not for private notes. Inspect the thread after an uncertain result before retrying.
destructive
1Delete, cancel or archive. Ask first, or deny outright.
- smartsheet.delete_rowsDelete rows
Use when explicitly removing known rows, including disposable test rows. Deleting a parent also removes its children. Not for routine updates; verify uncertain deletion before retrying.
Control access to Smartsheet.
After early access is enabled, connect the intended Smartsheet account, authorize your AI client and set policies for its tools.
Provider permissions and Arc0 policy both apply. Allow reads, require approval for selected writes, or deny destructive actions. The audit log records execution decisions.
Configure policies and approvalsExample policy choices
- Read actions: allow where authorized
- smartsheet.update_rows: require approval
- smartsheet.delete_rows: deny
Arc0 MCP endpoint: https://api.arc0.ai/mcp
How Smartsheet connects.
Connect Smartsheet using API key. OAuth grants the provider scopes shown during consent; API keys and other credentials retain the permissions configured at the provider. Arc0 stores credentials in its encrypted vault and does not pass them to the model. Disconnect to remove access through Arc0; revoke a key at the provider to invalidate it there. Token refresh and provider-side revocation depend on the authentication lane and provider.
The connection serves authorized calls through Arc0 MCP and REST. How Arc0 handles credentials →
- AUTH
- API key
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Smartsheet with your AI client.
Request access to Smartsheet first. An Arc0 administrator must enable it for your organization before these actions appear. Then authorize your AI client separately. It only receives tools and accounts allowed for that identity.
Smartsheet with Claude
Claude Desktop + Claude Code
- In Claude Desktop, add Arc0 through the remote MCP settings and use OAuth. Follow the generic remote-client steps if your account’s interface differs.
- For Claude Code, run the command below. Open /mcp, select Arc0, and authenticate in your browser. Select your workspace and review access.
- Check the connection with claude mcp get arc0.
claude mcp add --transport http --scope user arc0 https://api.arc0.ai/mcpFull MCP setup and troubleshootingSmartsheet with ChatGPT
ChatGPT on the web
- Open Plugins in ChatGPT, select the plus button, then Add custom MCP server.
- Name it Arc0, enter the server URL below, and choose OAuth. Use dynamic client registration if asked; no Arc0 API key is needed.
- Review the notice and select Create as a plugin. Complete Arc0 sign-in, workspace selection and consent, then install and select the plugin in your conversation. Labels and access vary by account; managed workspaces may require administrator approval.
https://api.arc0.ai/mcpFull MCP setup and troubleshootingSmartsheet with OpenAI Codex
Codex app + CLI
- Run the registration command below. The app and CLI share ~/.codex/config.toml.
- Complete browser OAuth, choose your Arc0 workspace, and review access. If authentication does not start, run codex mcp login arc0.
- Check codex mcp list, then open a new Codex chat. Inspect an existing arc0 entry before changing it.
codex mcp add arc0 --url https://api.arc0.ai/mcpFull MCP setup and troubleshootingSmartsheet with Cursor
Remote MCP setup
- Add Arc0 in your client’s remote MCP settings using the server URL below.
- Choose OAuth, sign in to Arc0, select the intended workspace and review access.
- Confirm the server is connected and start with an allowed read. These are generic remote-MCP steps; consult your client’s settings for its current interface.
https://api.arc0.ai/mcpFull MCP setup and troubleshootingSmartsheet with VS Code
Remote MCP setup
- Add a remote HTTP MCP server named Arc0 using the URL below.
- Use OAuth and finish Arc0 sign-in, workspace selection and consent.
- Confirm discovery succeeds before requesting a read. These are generic remote-MCP steps; client UI and availability may differ.
https://api.arc0.ai/mcpFull MCP setup and troubleshootingSmartsheet with Any MCP client
Streamable HTTP
- Use a client that supports remote MCP over Streamable HTTP. Add the server URL below and choose OAuth.
- For a client without OAuth, use a self-bound API key with execute permission in the X-API-Key header. Store it in secret storage or an environment variable, outside source control. Never send both an API key and an OAuth bearer token.
- Use the MCP clients guide for the SDK transport example and Embedded identity for business-managed end users.
https://api.arc0.ai/mcpFull MCP setup and troubleshootingAfter setup, ask your agent to find an allowed read action, load its schema, and execute it on the intended account. Check Activity for the receipt. A connected MCP client alone does not confirm a successful provider call.
Smartsheet and Arc0, answered.
Does Smartsheet work with Claude Desktop and Claude Code?
Yes, after early access is enabled for your organization and you connect the intended account. Use Arc0’s remote MCP endpoint with OAuth. Claude Code has a documented registration command; Desktop uses the generic remote-client setup.
Can I use Smartsheet with OpenAI Codex, ChatGPT and Cursor?
Yes, after early access is enabled for your organization and you connect the intended account. Codex and ChatGPT have setup instructions in Arc0’s MCP clients guide. Cursor uses the generic remote-MCP steps. Tool access remains scoped to the authorized identity.
Is this the official Smartsheet MCP server?
This is Arc0’s integration page, not a claim of an official Smartsheet server. Arc0 adds a shared connection, policy and audit experience across apps. Consult Smartsheet for its own current MCP offerings.
Which Smartsheet actions are supported?
10 registry-defined actions: 6 read, 3 write and 1 destructive. Provider permissions, access enablement and Arc0 policy determine what can execute.
Which permissions does Smartsheet need?
Connect Smartsheet using API key. OAuth grants the provider scopes shown during consent; API keys and other credentials retain the permissions configured at the provider. Arc0 stores credentials in its encrypted vault and does not pass them to the model. Disconnect to remove access through Arc0; revoke a key at the provider to invalidate it there. Token refresh and provider-side revocation depend on the authentication lane and provider.
Can I restrict writes in Smartsheet?
You can deny write and destructive actions or require approval. Provider scopes and Arc0 action policies are separate controls; a policy does not grant additional provider permissions.
What does Smartsheet through Arc0 cost?
See Arc0 pricing for current connectivity plans. The provider may require its own subscription or charge per request. Arc0 plan allowances do not make third-party data or paid actions free.
Request Smartsheet access.
Smartsheet MCP server: 10 actions including list sheets, get sheet, get row. Request early access through Arc0.
Free to build · MCP + REST · Audit log on every plan
Smartsheet and its logo are trademarks of their respective owners. Arc0 is not affiliated with or endorsed by Smartsheet.