Skip to main content

NetSuite MCP server: what it does and what finance still needs

Yes, there is an official NetSuite MCP server. Oracle provides it through the NetSuite AI Connector Service. With the MCP Standard Tools SuiteApp installed, an AI client such as Claude or ChatGPT can run read-only SuiteQL queries, reports and saved searches, and create or update records, limited to the signed-in user's NetSuite role.

Zuny FesterBy Zuny Fester, Head of Operations and Marketing
Reviewed by Zuny Fester
Published Last reviewed Editorial policy

Part of the finance integrations guide.

Official serverOracle's NetSuite AI Connector Service, with tools from the MCP Standard Tools SuiteApp
AuthenticationOAuth 2.0 authorization code grant, signed in as a dedicated role
Roles that cannot use itAdministrator, and any role with full access
ReadsRead-only SuiteQL, reports, saved searches, records and the File Cabinet
WritesCreate, update and transform records through REST Web Services, as far as the role allows. The standard tool list has no delete tool.
Execution log21 days of request data in production, 7 in sandbox
Not includedAn approval step, a fixed run sequence, or scheduling

Key points

  • The official server is Oracle's. The NetSuite AI Connector Service implements the Model Context Protocol (MCP), and the MCP Standard Tools SuiteApp supplies the tools.
  • It can write to the ledger. Record tools create, update and transform records through REST Web Services, as far as the user's role allows.
  • Access is role-bound and OAuth 2.0 based. Administrator roles and full-access roles cannot use it.
  • It is a connection layer, not a control layer. There is no approval step, no fixed run sequence, and the execution log keeps 21 days of request data in production.
  • Third-party options exist (CData, Zapier, Composio), with very different read and write scopes.

What NetSuite MCP servers exist today?

Four options cover most NetSuite MCP searches: Oracle's own AI Connector Service, plus three third-party servers. Oracle's server is the only one that runs inside NetSuite and uses NetSuite's own MCP endpoint. The others connect from outside through NetSuite's APIs or a database driver.

ServerWho maintains itHow it connectsReadsWrites
NetSuite AI Connector Service + MCP Standard Tools SuiteAppOracle (official)NetSuite MCP endpoint, OAuth 2.0SuiteQL (read-only), reports, saved searches, records, File CabinetCreate, update and transform records, record actions, attach files
NetSuite MCP Server by CDataCData (open source, MIT)CData JDBC Driver for NetSuite (licensed or trial)SQL SELECT over NetSuite tablesNone, read-only
Zapier MCP for NetSuiteZapier (hosted)Zapier's MCP serverFind record, find records via saved searchCreate, update and upsert records
Composio NetSuite toolkitComposio (hosted)OAuth 2.0, managed authRecords, lists, SuiteQLCreate, update, upsert and delete, including invoices and journal entries

Oracle also publishes sample code for custom tools. The original MCP Sample Tools SuiteApp stopped accepting new installations in September 2025 and was replaced by the MCP Standard Tools SuiteApp (Oracle). Its source remains in Oracle's netsuite-suitecloud-samples repository, and NetSuite supports custom tools written as SuiteScript 2.1 scripts.

Directories list some of these too. The CData server, for example, is listed in them, and its source is on CData's GitHub. Check any community server's source before connecting it to a production account.

What can the NetSuite MCP Standard Tools do?

The MCP Standard Tools SuiteApp exposes seven groups of tools, and each tool appears only if the user's role holds its required permissions. The list below is taken from Oracle's Available Tools in the MCP Standard Tools SuiteApp page as of October 29, 2026.

GroupToolsWhat they do
SuiteQLns_runCustomSuiteQL, ns_getSuiteQLMetadataRun custom SuiteQL (read-only queries only); read fields and joins
Recordsns_getRecord, ns_createRecord, ns_updateRecord, ns_transformRecord, ns_getRecordTypeMetadata, ns_getRecordTransformMetadataRead, create, update and transform records (for example, a sales order into an invoice)
Record actionsns_getRecordActionMetadata, ns_executeRecordActionList and run the actions available on a record
Reportsns_listAllReports, ns_runReport, ns_getSubsidiaries, ns_getAccountingBooks, ns_getAccountingContexts, ns_getNexusIdsRun standard and custom reports, filtered by subsidiary, book or nexus
Saved searchesns_listSavedSearches, ns_runSavedSearchList and run existing saved searches
File Cabinetns_searchFiles, ns_getFolderByPath, ns_getIdFromPath, ns_getPathFromId, ns_attachFile, ns_detachFileFind files and attach them to records
Runtimens_getSessionInfoShow the current account, role, features and permissions

SuiteQL through MCP is read-only, but the record tools are not. Oracle states that users with the MCP Server Connection permission "can perform these actions on any records available through REST, if their current permissions allow it" (Oracle). Oracle's standard tool list includes no delete tool.

For a worked SuiteQL example outside MCP, see how to map NetSuite revenue recognition schedules via SuiteQL.

What can't a NetSuite MCP server do?

A NetSuite MCP server gives an AI client access to NetSuite. It does not give a finance team approvals, a fixed run sequence or a durable audit trail. These gaps apply to Oracle's server and to the third-party options above.

  • No approval step on writes. A record tool creates or updates the record as soon as the AI client calls it. Oracle's own risk guidance warns that an agent "may run powerful MCP tool functions - such as making payments or granting approvals - without the user's explicit intent," and tells customers to prefer clients that ask for confirmation first (Oracle). That confirmation lives in the AI client, not in NetSuite.
  • No fixed, repeatable run. Each tool is a single action. The order of calls is generated by the model at runtime, so the same request can produce a different sequence of calls on a different day.
  • A thin, short-lived log. The execution log records the date and time, duration, status, user email, HTTP status code, method and URL path of each call. Production logs are kept for 21 days, sandbox logs for 7 (Oracle). The documented fields do not include the prompt, the reason for a change or an approver.
  • No scheduling. MCP is request-driven. A tool runs when a person's AI client calls it, so nothing runs at 6 a.m. on the first business day unless someone builds that elsewhere.
  • No segregation of duties by itself. The tools inherit the user's role. If one role can both create a vendor bill and approve it in NetSuite, the AI client can do both.

How do you set up the NetSuite MCP server?

Setup takes a NetSuite administrator about seven steps: enable features, create a dedicated role, install the SuiteApp, then connect the AI client with OAuth 2.0. Oracle's required features and permissions and connection guide are the primary references.

  1. Enable the features. Go to Setup > Company > Enable Features > SuiteCloud and turn on Server SuiteScript and OAuth 2.0. Turn on REST Web Services if users will read or write records through the SuiteApp.
  2. Create a dedicated, non-administrator role. Oracle does not allow the Administrator role, or any role with full access, to use the AI Connector Service. Give the new role MCP Server Connection and Log in using OAuth 2.0 Access Tokens (not "Log in using Access Tokens").
  3. Scope the role tightly. Add only the record and search permissions the use case needs. Add the REST Web Services permission only if the role should create or update records. Oracle recommends starting with read-only or low-impact tools (Oracle).
  4. Install the MCP Standard Tools SuiteApp from the SuiteApp Marketplace.
  5. Copy the server URL. For the Standard Tools it is https://<accountid>.suitetalk.api.netsuite.com/services/mcp/v1/suiteapp/com.netsuite.mcpstandardtools. To expose every installed tool set, use .../services/mcp/v1/all.
  6. Connect the AI client. Add the URL as a custom connector in Claude or ChatGPT and sign in with the dedicated role. NetSuite uses an integration record with the OAuth 2.0 authorization code grant (public client). Review that record's state and concurrency limit under Setup > Integration > Manage Integrations.
  7. Test, then watch the log. Ask the client to call ns_getSessionInfo to confirm the role and permissions, then run one read-only query. Review the AI Connector Service (MCP) tab of the integration record's execution log, and keep your own copy if you need more than 21 days.

Where does a NetSuite MCP server leave a finance-controls gap?

MCP answers "can the model reach NetSuite?" Finance controls answer "should this change post, who approved it, and can we prove it a year from now?" The second question is the one your auditors ask.

Control finance needsNetSuite MCP serverWhat closes the gap
Approval before a writeOptional confirmation in the AI clientAn approval gate in the workflow, recorded with the approver
Same steps every runCall sequence generated at runtimeA defined, versioned workflow
Audit evidence21-day request log, no prompt or reasonEvery run logged with inputs, outputs and approvals
Segregation of dutiesInherits one user's roleSeparate preparer and approver steps
Scheduled and event-driven runsRequest-driven onlyTriggers on a schedule or a system event

Loopfour, the deterministic finance workflow automation platform, works as that control layer. Loopfour does not ship an MCP server. It connects to NetSuite through the SuiteTalk REST API with token-based authentication, and its workflows create and read customers, vendors, invoices, vendor bills and journal entries, and run SuiteQL.

  • AI only where interpretation is needed. Reading a vendor invoice PDF or classifying a remittance is a scoped AI task. Posting the bill to NetSuite is a programmatic step that runs the same way every time.
  • Approvals before anything touches the ledger. A write waits for a named approver, for example through Slack approval buttons, with preparer and approver kept separate.
  • Every run leaves evidence. Each automated action is logged and versioned (governance).
  • We build it, run it, maintain it. Loopfour is a managed service, so your team does not maintain the workflow when NetSuite or the process changes.

The two can sit side by side. Many teams will want analysts asking NetSuite questions through a read-only MCP role, while anything that posts to the ledger runs through an approved workflow. See all Loopfour integrations.

How does NetSuite MCP fit into a wider finance stack?

NetSuite MCP is one connection in a larger pattern: AI clients reaching systems of record through MCP, with controls added on top. The guide to financial workflow MCP and how it connects AI to finance systems of record covers hosts, clients, servers and tools, compares MCP with APIs, iPaaS and RPA, and sets out the controls finance needs. For the QuickBooks equivalent, see what the QuickBooks MCP server can and cannot do.

Next step

Map the finance workflow with the most exposure and prove the automation path.

Bring the invoice, contract, payment reconciliation, or customer finance workflow you have to defend at audit. Loopfour can map the trigger, controls, integrations, and approval loop.

Book a workflow review

Checklist

NetSuite MCP server setup checklist

  1. Under Setup > Company > Enable Features > SuiteCloud, turn on Server SuiteScript and OAuth 2.0. Turn on REST Web Services if users will read or write records.
  2. Create a dedicated, non-administrator role with MCP Server Connection and Log in using OAuth 2.0 Access Tokens.
  3. Give the role only the record and search permissions the use case needs. Add the REST Web Services permission only if the role should create or update records.
  4. Install the MCP Standard Tools SuiteApp from the SuiteApp Marketplace.
  5. Copy your account's server URL: https://<accountid>.suitetalk.api.netsuite.com/services/mcp/v1/suiteapp/com.netsuite.mcpstandardtools.
  6. Add the URL as a custom connector in Claude or ChatGPT, and sign in with the dedicated role.
  7. Review the integration record's state and concurrency limit under Setup > Integration > Manage Integrations.
  8. Call ns_getSessionInfo to confirm the role and permissions, then run one read-only query.
  9. Check the AI Connector Service (MCP) tab of the execution log. Keep your own copy if you need more than 21 days.

Frequently Asked Questions

Yes. Oracle provides it as the NetSuite AI Connector Service, which implements the Model Context Protocol. Installing the MCP Standard Tools SuiteApp adds tools for read-only SuiteQL, reports, saved searches and record creation and updates. Any MCP-compatible AI client, including Claude and ChatGPT, connects to an account-specific URL and signs in with OAuth 2.0.

Yes, if the role allows it. The MCP Standard Tools include tools that create, update and transform records through REST Web Services, and a tool that runs record actions. SuiteQL queries are read-only. NetSuite adds no approval step of its own, so Oracle advises using AI clients that ask the user to confirm high-impact actions first.

NetSuite blocks the Administrator role, and any role with full access to NetSuite features, from running the AI Connector Service. Oracle's documentation says MCP tools are never executed with those roles. Create a dedicated role with the MCP Server Connection permission and only the record permissions the use case needs.

NetSuite enforces the user's role permissions and logs every MCP call, so the AI client sees only what that role can see. The risk sits in what the model does with access. Oracle names unintended actions, prompt injection and hallucination as risks outside NetSuite's control and recommends least-privilege roles and starting with read-only tools.

Partly. Each integration record has an execution log showing the time, duration, status, user email, HTTP status, method and URL path of each MCP call. Production logs are kept for 21 days and sandbox logs for 7. The documented fields do not record the prompt, the reason for a change or an approver.

Sources

Related

How-to

How do I map NetSuite revenue recognition schedules via SuiteQL?

Loopfour's NetSuite integration has no dedicated revenue-recognition action, so a workflow reads NetSuite's native Advanced Revenue Management records — Revenue Arrangements and their Revenue Elements — by querying them directly with SuiteQL over the REST API, rather than through a first-class action the way invoices or vendor bills work.

Read more

How-to

How do I set up interactive Slack approval buttons for invoice approval?

Post the invoice as a message with an interactive button block, then respond to the click by opening a modal with the trigger_id Slack sends in the interaction payload — within three seconds, before any lookup or validation. Loopfour's Slack integration supports this through sendMessage (with blocks) and openModal, but the modal call has to happen first, not last.

Read more

How-to

How do I maintain segregation of duties in an automated AP approval workflow?

Keep three roles distinct in the workflow itself: who can create or edit a vendor record, who can enter or submit a bill, and who can approve it for payment. Institutional guidance is explicit that authorizing a payment and the person who executes it shouldn't be the same individual — automation makes it easy to collapse these into one click, which is exactly the risk to design against.

Read more

Integration

QuickBooks MCP server: what it does, what it can't, and how to set it up

Yes. Intuit publishes an official QuickBooks MCP server that lets Claude and other MCP clients read and write QuickBooks Online data over OAuth 2.0. It runs locally, covers 29 entity types and 11 reports, and leaves approvals, audit evidence and multi-step control to you.

Read more

Integration

ERP MCP server: what exists and how it compares to APIs

An ERP MCP server lets an AI client such as Claude read, and if allowed write, ERP data through the Model Context Protocol. NetSuite, QuickBooks, Dynamics 365, Xero and Sage Intacct now offer one, and SAP data is reachable through AWS and Joule Studio. MCP connects a model to the ERP. Approvals and audit evidence still sit outside it.

Read more

Definition

MCP for accounting: what accountants can do with it, and what it can't

MCP for accounting connects an AI assistant such as Claude or ChatGPT to your accounting system through a Model Context Protocol server. QuickBooks, Xero, NetSuite and Sage Intacct each have a vendor-published server. They are good at reading reports and ledgers. Writes, approvals, close sign-off and audit evidence still need controls outside the model.

Read more