netsuite-mcp
Enables AI assistants to query and manage NetSuite data via natural language, supporting SuiteQL queries and record operations through Token-Based Authentication.
README
@cafeasp/netsuite-tools
A TypeScript toolkit for NetSuite developers — CLI and MCP server powered by a shared core library.
Terminal → CLI (Commander.js) ──┐
├──► Core Library (Auth + API) ──► NetSuite REST API
Claude/AI → MCP Server (stdio) ─┘
Packages
| Package | Description | npm |
|---|---|---|
| @cafeasp/netsuite-core | Auth, REST API client, SuiteQL engine | |
| @cafeasp/netsuite-cli | Terminal interface | |
| @cafeasp/netsuite-mcp | MCP server for AI clients |
Quick Start
CLI
npm install -g @cafeasp/netsuite-cli
# Configure credentials
netsuite config init
# Test connection
netsuite info
# Query data
netsuite query "SELECT id, companyname FROM customer" --limit 10
# Get a record
netsuite record get customer 123 --format json
# List records
netsuite record list item --limit 20
MCP Server (Claude Code)
npm install -g @cafeasp/netsuite-mcp
claude mcp add netsuite-mcp -e NETSUITE_ACCOUNT_ID=YOUR_ID -e NETSUITE_CONSUMER_KEY=YOUR_KEY -e NETSUITE_CONSUMER_SECRET=YOUR_SECRET -e NETSUITE_TOKEN_ID=YOUR_TOKEN -e NETSUITE_TOKEN_SECRET=YOUR_SECRET -e NETSUITE_AUTH_METHOD=tba -- netsuite-mcp
Then in Claude Code:
- "Show me the first 5 customers in NetSuite"
- "What fields are available on the salesorder record?"
- "Run this SuiteQL: SELECT id, tranid FROM transaction WHERE type = 'SalesOrd'"
Core Library
npm install @cafeasp/netsuite-core
import {
loadConfig,
createAuthProvider,
NetSuiteClient,
SuiteQLClient,
} from "@cafeasp/netsuite-core";
const config = loadConfig();
const auth = createAuthProvider(config);
const client = new NetSuiteClient(auth, config.accountId);
const suiteql = new SuiteQLClient(client);
const result = await suiteql.query("SELECT id, companyname FROM customer", { limit: 10 });
console.log(result.items);
Authentication
The tool uses Token-Based Authentication (TBA) — the most common auth method for NetSuite developers.
You need four values from your NetSuite account:
- Consumer Key and Consumer Secret (from an Integration Record)
- Token ID and Token Secret (from an Access Token)
See each package's README for detailed setup instructions.
Configuration
Credentials are stored in ~/.netsuite/config.json with named profiles:
# Set up default profile
netsuite config init
# Use a specific profile
netsuite --profile sandbox query "SELECT 1 FROM dual"
Environment variables override file config:
NETSUITE_ACCOUNT_IDNETSUITE_CONSUMER_KEYNETSUITE_CONSUMER_SECRETNETSUITE_TOKEN_IDNETSUITE_TOKEN_SECRET
Requirements
- Node.js >= 18
- NetSuite account with REST Web Services and TBA enabled
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.