acumatica_get_tablesLABSCO SUMMARY
Read-only by construction.
Three tools and no write path is the whole design: the model discovers tables, reads columns and runs SELECTs, so a badly framed question produces a wrong answer rather than a changed record in your ERP. Two things decide whether it fits. The CData JDBC driver is a separate licensed product, with a trial key to start on. And the assistant can query every table the connection can see — the Tables field in the connection profile does not narrow that, so limit the connection or the account it signs in with.
What it is
A read-only MCP server built on CData's JDBC Driver for Acumatica. The driver exposes Acumatica as relational tables; the server puts three tools over it, so a client can discover what tables exist, read a table's columns, and run a SELECT — without anyone writing SQL by hand.
What you get
- The tables the driver exposes for Acumatica, returned as CSV with a header row —
acumatica_get_tables - The columns of one of those tables, also as CSV, so a query can be composed against real field names —
acumatica_get_columns - A SQL SELECT executed against live Acumatica data —
acumatica_run_query - Tool names that carry the prefix you set in the connection profile — the sample uses
Prefix=acumatica— so several CData servers can run side by side without colliding - A
Tablessetting that only picks which tables also get a ready-made description (blank means none); it does not limit what the tools can list or query, so limit the connection or the account it signs in with
Requirements
Java and Maven to build — mvn clean install produces CDataMCP-jar-with-dependencies.jar. The CData JDBC Driver for Acumatica is a separate download and needs licensing: run java -jar cdata.jdbc.acumatica.jar --license and enter a name, an email and either TRIAL or a licence key. Connection settings go in a .prp file carrying Prefix, ServerName (the sample uses CDataAcumatica), ServerVersion, DriverPath, DriverClass (cdata.jdbc.acumatica.AcumaticaDriver), the JdbcUrl produced by the driver's connection-string utility, and the optional Tables list. The client then launches java -jar CDataMCP-jar-with-dependencies.jar <YOUR_PRP_FILE>.prp. Transport is stdio, so the server has to run on the same machine as the client. Acumatica authenticates over OAuth, so you approve it in a browser while building the connection string.
Setup effort
Build from source
USE CASES
Answering a question about ERP data without writing SQL
Let the client list the tables, read the columns it needs, and compose the SELECT itself from a question asked in plain language.
Exploring an unfamiliar Acumatica instance
Walk tables and columns to work out what the deployment actually holds before writing any reporting query.
Giving an assistant live figures instead of a stale export
Every answer runs a fresh SELECT against Acumatica, so numbers are current at the moment they are quoted.
3 tools
Listed in project docs. Your client may show a different list.
acumatica_get_columnsacumatica_run_queryBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation. All three are read-only ({servername}_run_query runs SQL SELECT only); writes need CData's separate paid server. The docs disagree whether the name prefix is your configured server name or the Prefix setting. The Tables setting does not limit what the tools reach; your connection's access does.
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
Clone the repository: git clone https://github.com/cdatasoftware/acumatica-mcp-server-by-cdata.git then cd acumatica-mcp-server-by-cdata
Build the server: mvn clean install — this creates the JAR file CDataMCP-jar-with-dependencies.jar that the config block points at
Download and install the CData JDBC Driver for Acumatica from https://www.cdata.com/drivers/acumatica/download/jdbc/
License the driver: from the driver install's lib folder run java -jar cdata.jdbc.acumatica.jar --license and enter your name, email, and "TRIAL" (or your license key)
Build the connection string: run java -jar cdata.jdbc.acumatica.jar to open the Connection String utility, click "Test Connection", and copy the working connection string (browser OAuth may be required here)
Create a .prp file (e.g. acumatica.prp) containing Prefix / ServerName / ServerVersion / DriverPath / DriverClass / JdbcUrl / Tables — set JdbcUrl to the connection string you copied in the previous step
Tables only picks which tables also get a ready-made description for your assistant, and empty means none; the server can still list and query every table your connection string reaches, so to keep data out of reach, limit that connection or the account it signs in with.
Add the mcpServers entry to claude_desktop_config.json pointing at your java binary, the built JAR, and the .prp file; copy the file to %APPDATA%\Claude\ (Windows) or ~/Library/Application Support/Claude/ (Mac)
Fully quit and re-open Claude Desktop for the MCP server to appear
MCP Clients
Claude Desktop — macOS / Linux
{
"mcpServers": {
"acumatica": {
"command": "<YOUR_PATH_TO_JAVA>",
"args": [
"-jar",
"<YOUR_PATH_TO_CDATA_MCP_JAR_WITH>",
"<YOUR_PATH_TO_ACUMATICA>"
]
}
}
}