MCP server by federicociro
kinaxis-mcp-server
The first open-source Model Context Protocol (MCP) server for Kinaxis Maestro (formerly RapidResponse).
What it does
Exposes Kinaxis Maestro REST & Bulk APIs as MCP tools that AI agents (Copilot, Claude, etc.) can call to:
| Tool | Description |
|------|-------------|
| health_check | Verify connectivity and auth |
| list_tables | Discover available Kinaxis tables |
| query_table | Run a query against any table |
| fetch_query_results | Paginated row retrieval |
| close_query | Release query resources |
| bulk_export | Start a bulk export from any table |
| fetch_export_results | Paginated row retrieval from bulk export |
| bulk_upload_init | Start a bulk data upload |
| bulk_upload_data | Push rows to an upload |
| bulk_upload_complete | Finalize upload & trigger update |
| trigger_data_update | Trigger a data update |
| data_update_status | Check data update progress |
| run_script | Execute Maestro scripts (sync) |
| run_script_async | Execute scripts asynchronously |
| run_workflow | Run Maestro workflows |
| workflow_status | Check workflow status |
| open_workbook | Open a workbook for data retrieval |
| read_worksheet | Read worksheet data |
| import_worksheet | Import data via workbook |
Quick start
Prerequisites
- Node.js >= 18
- A Kinaxis Maestro instance with REST API access
- OAuth2 client credentials or a web service user (Basic Auth)
Install
git clone https://github.com/federicociro/kinaxis-mcp-server.git
cd kinaxis-mcp-server
npm install
cp .env.example .env
# Edit .env with your Kinaxis credentials
Configure
Edit .env:
KINAXIS_BASE_URL=https://your-region.kinaxis.net/YOUR_INSTANCE
KINAXIS_CLIENT_ID=your_oauth2_client_id
KINAXIS_CLIENT_SECRET=your_oauth2_client_secret
KINAXIS_DEFAULT_SCENARIO=Baseline
KINAXIS_DEFAULT_SCOPE=Public
Or use Basic Auth:
KINAXIS_BASE_URL=https://your-region.kinaxis.net/YOUR_INSTANCE
KINAXIS_USERNAME=your_ws_user
KINAXIS_PASSWORD=your_ws_password
Add to your MCP client
VS Code (Copilot)
Add to .vscode/mcp.json:
{
"servers": {
"kinaxis": {
"command": "node",
"args": ["src/index.js"],
"cwd": "/path/to/kinaxis-mcp-server",
"env": {
"KINAXIS_BASE_URL": "https://your-region.kinaxis.net/YOUR_INSTANCE",
"KINAXIS_CLIENT_ID": "your_client_id",
"KINAXIS_CLIENT_SECRET": "your_client_secret"
}
}
}
}
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"kinaxis": {
"command": "node",
"args": ["/path/to/kinaxis-mcp-server/src/index.js"],
"env": {
"KINAXIS_BASE_URL": "https://your-region.kinaxis.net/YOUR_INSTANCE",
"KINAXIS_CLIENT_ID": "your_client_id",
"KINAXIS_CLIENT_SECRET": "your_client_secret"
}
}
}
}
Run standalone
npm start
Authentication
The server supports two authentication methods:
-
OAuth2 Client Credentials (recommended): Register a client in Kinaxis Admin, provide
KINAXIS_CLIENT_IDandKINAXIS_CLIENT_SECRET. Tokens are refreshed automatically. -
Basic Auth: Use a Kinaxis web service user with
KINAXIS_USERNAMEandKINAXIS_PASSWORD. Simpler setup but credentials are sent with every request.
Kinaxis API reference
This server implements endpoints from the
Maestro Web Services Guide (REST & Bulk APIs), available on the
Kinaxis Customer Community.
Place your copy of the documentation in the docs/ folder (gitignored)
for local reference.
Contributing
PRs welcome! Please:
- Fork the repo
- Create a feature branch (
feat/my-feature) - Use Conventional Commits
- Open a PR
See CONTRIBUTING.md for local setup, commit examples, and release notes guidance.
License
MIT Federico Berrone, 2026