- Home
- MCP servers
- Xero
Xero
- java
0
GitHub Stars
java
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"cdatasoftware-xero-mcp-server-by-cdata": {
"command": "java",
"args": [
"-jar",
"/PATH/TO/CDataMCP-jar-with-dependencies.jar",
"/PATH/TO/xero.prp"
]
}
}
}You run a local MCP server that exposes live Xero data through a simple MCP interface. By hosting this server on your machine, you can answer natural-language questions about Xero data without writing SQL, while keeping data access read-only for safety and simplicity.
How to use
After you have the MCP server running, your AI client can query live Xero data through built‑in tools. You don’t need to manually call SQL or expose credentials; simply ask questions like “What is my total revenue by month?” or “Show all accounts with a balance above zero.” The server presents tables and columns as relational models, and the built‑in tools let the client discover available data and execute safe read operations.
How to install
Prerequisites you need before starting: a Java runtime environment (Java 8 or newer) and a build tool for Java projects.
# 1) Clone the project
git clone https://github.com/cdatasoftware/xero-mcp-server-by-cdata.git
cd xero-mcp-server-by-cdata
# 2) Build the server
mvn clean install
# This creates the JAR: CDataMCP-jar-with-dependencies.jar
Next, install and license the CData JDBC Driver for Xero, then configure a JDBC connection to Xero. You will create a properties file that defines your MCP server connection.
# Example commands you will run as part of the setup (paths will vary on your system)
# Install and license the JDBC Driver (steps shown interactively in your environment)
# 1. Run the Connection String utility to verify access and copy the JDBC URL
java -jar cdata.jdbc.xero.jar
# 2. License the driver when prompted
java -jar cdata.jdbc.xero.jar --license
Create a JDBC configuration file (for example, xero.prp) with your connection details. The file defines a driver path, driver class, and JDBC URL, along with a prefix and server identity.
# xero.prp
Prefix=xero
ServerName=CDataXero
ServerVersion=1.0
DriverPath=PATH\TO\cdata.jdbc.xero.jar
DriverClass=cdata.jdbc.xero.XeroDriver
JdbcUrl=jdbc:xero:InitiateOAuth=GETANDREFRESH;
Tables=
Additional configuration and running the server
Start the MCP server using the JAR and the previously created .prp file. The server runs locally in stdio mode, which means it is designed to be used with a client on the same machine.
java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/xero.prp
Notes on usage and capabilities
The MCP server exposes a set of tools to interact with the data. You can list available tables, list columns for a given table, and run read-only queries. Use these tools through your MCP client to construct natural-language requests that map to the underlying data model.
Troubleshooting and tips
If you cannot see the MCP server in your client, ensure you have fully restarted the client after starting the server. If you encounter data access issues, verify that the connection string in xero.prp is correct and that you can reach the Xero data source from the host machine.
Tools and endpoints
The server provides these read-only tools to query data: a) xero_get_tables – retrieves a list of available tables, b) xero_get_columns – lists columns for a specified table, c) xero_run_query – executes a SQL SELECT query against the data source.
Security and licensing
This configuration preserves read-only access to protect your data. Ensure the host machine is secured and that only trusted clients can initiate requests to the MCP server.
License
This MCP server is released under the MIT License. You may use, modify, and distribute it in compliance with MIT terms.
Available tools
xero_get_tables
Retrieves a list of tables available in the data source. The output is CSV with column headers on the first line.
xero_get_columns
Retrieves a list of columns for a given table. The output is CSV with column headers on the first line.
xero_run_query
Executes a SQL SELECT query against the connected data source and returns the results.