https://github.com/XeroAPI/xero-mcp-server
An MCP server that integrates with the MCP protocol. https://modelcontextprotocol.io/introduction
https://github.com/XeroAPI/xero-mcp-server
Last synced: 14 days ago
JSON representation
An MCP server that integrates with the MCP protocol. https://modelcontextprotocol.io/introduction
- Host: GitHub
- URL: https://github.com/XeroAPI/xero-mcp-server
- Owner: XeroAPI
- License: mit
- Created: 2025-03-17T02:29:58.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-03-30T21:21:21.000Z (16 days ago)
- Last Synced: 2025-03-30T22:25:37.897Z (16 days ago)
- Language: TypeScript
- Homepage:
- Size: 103 KB
- Stars: 20
- Watchers: 9
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-mcp-servers - Xero - Access and manage accounting information in your business (🏢 Enterprise-Supported Implementations / Productivity & Management)
- awesome-mcp-servers - Xero - Access and manage accounting information in your business (🏢 Enterprise-Supported Implementations / Productivity & Management)
- awesome-mcp-servers - Xero - An MCP server that integrates with the MCP protocol. https://modelcontextprotocol.io/introduction (Table of Contents / Other Tools and Integrations)
- awesome-mcp-servers - Xero - An MCP server that integrates with the MCP protocol. https://modelcontextprotocol.io/introduction (Table of Contents / Other Tools and Integrations)
- awesome-mcp-servers - Xero - Interact with the accounting data in your business using our official MCP server (Official Servers)
README
# Xero MCP Server
This is a Model Context Protocol (MCP) server implementation for Xero. It provides a bridge between the MCP protocol and Xero's API, allowing for standardized access to Xero's accounting and business features.
## Features
- Xero OAuth2 authentication with custom connections
- Contact management
- Chart of Accounts management
- Invoice creation and management
- MCP protocol compliance## Prerequisites
- Node.js (v18 or higher)
- npm or pnpm
- A Xero developer account with API credentials### Configuring your Xero Developer account
Set up a Custom Connection following these instructions: https://developer.xero.com/documentation/guides/oauth2/custom-connections/
Currently the following scopes are required:
`accounting.transactions accounting.contacts accounting.settings.read`### Integrating the MCP server with Claude Desktop
To add the MCP server to Claude go to Settings > Developer > Edit config and add the following to your claude_desktop_config.json file:
```json
{
"mcpServers": {
"xero": {
"command": "npx",
"args": ["-y", "@xeroapi/xero-mcp-server@latest"],
"env": {
"XERO_CLIENT_ID": "your_client_id_here",
"XERO_CLIENT_SECRET": "your_client_secret_here"
}
}
}
}
```### Available MCP Commands
- `list-contacts`: Retrieve a list of contacts from Xero
- `list-invoices`: Retrieve a list of invoices
- `list-accounts`: Retrieve a list of accounts
- `list-tax-rates` : Retrieve a list of tax rates
- `list-quotes` : Retrieve a list of quotes
- `list-credit-notes`: Retrieve a list of credit notes
- `create-contact`: Create a new contact
- `create-invoice`: Create a new invoice
- `create-quote`: Create a new quote
- `create-credit-note`: Create a new credit note
- `update-contact`: Update an existing contact
- `update-invoice`: Update an existing draft invoiceFor detailed API documentation, please refer to the [MCP Protocol Specification](https://modelcontextprotocol.io/).
## For Developers
### Installation
```bash
# Using npm
npm install# Using pnpm
pnpm install
```### Run a build
```bash
# Using npm
npm run build# Using pnpm
pnpm build
```### Integrating with Claude Desktop
To add the MCP server to Claude go to Settings > Developer > Edit config and add the following to your claude_desktop_config.json file:
```json
{
"mcpServers": {
"xero": {
"command": "node",
"args": ["insert-your-file-path-here/xero-mcp-server/dist/index.js"],
"env": {
"XERO_CLIENT_ID": "your_client_id_here",
"XERO_CLIENT_SECRET": "your_client_secret_here"
}
}
}
}
```## License
MIT
## Security
Please do not commit your `.env` file or any sensitive credentials to version control.