epicorkinetic_get_tablesLABSCO SUMMARY
Read-only Epicor Kinetic, once the driver is licensed.
The tool surface is deliberately tiny — list tables, list columns, run a SELECT — and that is what makes it predictable: the model discovers the schema before it writes SQL, so answers are grounded in the actual field names. The setup is the real cost, since the CData JDBC driver has to be installed and licensed separately before anything works.
What it is
A local MCP server that wraps the CData JDBC Driver for Epicor Kinetic, which presents Epicor Kinetic as relational SQL tables. The server hands a model those tables and a query tool, so questions get answered from live data instead of guessed at. It is read-only by design and speaks stdio, so it can only be used by a client running on the same machine.
What you get
- The list of Epicor Kinetic tables the driver exposes, returned as CSV with a header row —
epicorkinetic_get_tables - The columns of any one of those tables, so a model can build a query against real field names rather than invented ones —
epicorkinetic_get_columns - A SQL
SELECTagainst your live Epicor Kinetic data —epicorkinetic_run_query - 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
An Epicor Kinetic account plus a licensed CData JDBC Driver for Epicor Kinetic — a trial licence works, entered by running java -jar cdata.jdbc.epicorkinetic.jar --license. Java to run the server and Maven to build it: mvn clean install produces CDataMCP-jar-with-dependencies.jar. You then write a .prp connection file naming DriverClass as cdata.jdbc.epicorkinetic.EpicorKineticDriver, the path to the driver jar, a tool Prefix such as epicorkinetic, and the JDBC connection string — the driver's Connection String utility builds that string for you, and OAuth sources authenticate in your browser during that step. MIT licensed.
Setup effort
Build from source — git clone https://github.com/cdatasoftware/epicor-kinetic-mcp-server-by-cdata.git
USE CASES
Answering an ad-hoc question about Epicor Kinetic data
Ask in plain language; the model looks up the relevant table and columns first, then issues one SELECT against live data.
Finding out what is actually in the system
Have the model enumerate tables and their columns to map the schema before anyone writes reporting queries by hand.
3 tools
Listed in project docs. Your client may show a different list.
epicorkinetic_get_columnsepicorkinetic_run_queryBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation. The docs disagree whether the tool-name prefix is the server name or the Prefix setting (the example sets Prefix=epicorkinetic). All three only read: run_query executes SELECT; write access is CData's separate paid MCP Server.
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
git clone https://github.com/cdatasoftware/epicor-kinetic-mcp-server-by-cdata.git
cd epicor-kinetic-mcp-server-by-cdata
mvn clean installDownload and install the CData JDBC Driver for Epicor Kinetic from https://www.cdata.com/drivers/epicorkinetic/download/jdbc
License the driver: java -jar cdata.jdbc.epicorkinetic.jar --license (enter name, email, and "TRIAL" or a license key)
Run java -jar cdata.jdbc.epicorkinetic.jar with no arguments to open the Connection String utility, test the connection, copy the connection string
Write a .prp file (e.g. epicor-kinetic.prp) containing Prefix=epicorkinetic, ServerName, ServerVersion, DriverPath, DriverClass=cdata.jdbc.epicorkinetic.EpicorKineticDriver, JdbcUrl, Tables
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 below to claude_desktop_config.json, pointing java at CDataMCP-jar-with-dependencies.jar and at the .prp file, then fully quit and reopen the client
MCP Clients
Claude Desktop
{
"mcpServers": {
"epicor-kinetic": {
"command": "<YOUR_PATH_TO_JAVA>",
"args": [
"-jar",
"<YOUR_PATH_TO_CDATA_MCP_JAR_WITH>",
"<YOUR_PATH_TO_EPICOR_KINETIC>"
]
}
}
}