Prerequisites
- NetSuite (NS) Account.
- Relevant features enabled and permissions provided to the role.
- NetSuite MCP SuiteApp or at least one Custom Tool deployed in the NS instance.
- Postman
Enable Features
In NetSuite, navigate to: Setup → Company → Enable Features → SuiteCloud (last tab), and enable the following features. You may see additional options listed, but for now, these are the key features to enable as you begin working with integrations.
- Client SuiteScript
- Server SuiteScript
- SOAP Web Services
- REST Web Services
- Token-based Authentication
- OAuth 2.0
- SuiteCloud Development Framework
Role Assignment
If you don’t have a role that meets the following criteria, create or update a custom role by navigating to: Setup → Users/Roles → Manage Roles
Update an existing role or create a new one with the required permissions. The quickest method: click Customize on the CFO role, provide a new name (e.g., MCP AI Tool or Integration).
Go to the Permissions tab → Setup subtab, and add the following permissions with Full level:
- MCP Server Connection
- Log in using OAuth 2.0 Access Tokens
Assign the new role to your user account:
- Navigate to Lists → Employees, find your employee record, and click Edit.
- In the Access tab → Roles subtab, add the newly created role.
- Save the record.
In NetSuite, after creating a new role and assigning it to yourself, make sure to log out and log back in to see the newly assigned role.
Currently, NetSuite does not allow creating an integration record with the MCP scope directly from the UI. It must first be created using Claude.ai or Postman or any other tool, after which the record can be used. Here is the guide for that process. although I haven’t created it directly from Postman yet. I’ll give it a try someday.
The Claude Client ID (this ID same for all suers) can be obtained from this screen when connecting NetSuite via Claude.ai.
We’re done with the NetSuite setup at this stage
Postman Setup
Open Postman
Add a new POST request in any exiting collection of create new blank collection. give it a meaningful name.
- Collection Name: NS MCP Tester
- Request Name: Call NS MCP Connector
Provide the URL as
https://{{ACCOUNT_ID}}.suitetalk.api.netsuite.com/services/mcp/v1/all
in Authorization tab, on the left pane, make following selections
- Auth Type = OAuth 2.0
- Add authorization headers to= Request Headers
On the right side panel, under Configure New Token
- Token Name= Any Name (MCP Token)
- Grant type=Authorization Code (With OKCE)
- Callback URL=https://claude.ai/api/mcp/auth_callback
- Authorize using browser= unchecked/ or can be checked if want to perform in browser
- Auth URL= https://{{ACCOUNT_ID}}.app.netsuite.com/app/login/oauth2/authorize.nl
- Access Token URL=https://{{ACCOUNT_ID}}.suitetalk.api.netsuite.com/services/rest/auth/oauth2/v1/token
- Client ID=82f37ec8cf43b684fdd72405c89a3aac258760addff3693d00e5c6f04750cb36 (same for all)
- Client Secret= keep it empty
- Code Challenge Method= SHA-256
- Code Verifier= keep it empty
- Scope= mcp
- State= any random string (use $guid built-in postman variable)
- Client Authentication= Send as Basic Auth header
advance will look like this
- response_type=code
- grant_type=authorization_code , set Request URL in Send In column
click on Get a Access Token and use it.
Body: as raw, type JSON
{
"jsonrpc": "2.0",
"id": "{{$guid}}",
"method": "tools/call",
"params": {
"name": "runCustomSuiteQL",
"arguments": {
"sqlQuery": "select id, name from location"
}
}
}
By following this guide, you have successfully set up and configured the NetSuite AI Connector with Postman. With the required roles, permissions, and integration records in place, you are now ready to begin testing, validating, and leveraging the connector for your integration workflows. As NetSuite evolves its capabilities, this setup provides a strong foundation for future enhancements and automation.