> ## Documentation Index
> Fetch the complete documentation index at: https://docs.erp.arukz.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect Claude or ChatGPT to ARUKZ ERP with MCP

> Let Claude, ChatGPT and other AI apps read your sales, receivables, payables, low stock and job work through the ARUKZ ERP MCP server, with an API token.

ARUKZ ERP runs an MCP (Model Context Protocol) server at `https://erp.arukz.com/mcp`, so an AI app such as Claude or ChatGPT can read your company's figures and answer questions about them. The app signs in with a personal API token sent as `Authorization: Bearer <token>`, sees exactly what that person may see, and gets the same read-only lookups as [Ask AI](https://docs.erp.arukz.com/ai/ask-ai.md): nothing it does can post, pay or change a record. MCP is included on every plan, and your AI app pays for its own model, so it does not use your [AI allowance](https://docs.erp.arukz.com/ai/allowance-and-own-key.md).

## What the AI app can read

| Tool | Returns | Input |
| - | - | - |
| `sales_summary` | Posted sales invoices in a period: count, value before tax, tax, total and the top five customers | A date range |
| `receivables_summary` | What customers owe today, split by how overdue it is | None |
| `payables_summary` | What the company owes suppliers today, split by how overdue it is | None |
| `low_stock` | Products at or below their reorder level, with the quantity on hand | None |
| `job_work_outstanding` | Goods still at job workers, with the date each must be back by under GST | None |

A tool is offered only when the token's user may open the matching screen (invoices, bills, products or job work challans) and, for job work, when the Job work module is on. Amounts are in rupees.

## Before you start

**1. The AI module must be on**

The server offers tools only while **AI and insights** is switched on for your company; while it is off, an AI app connects but finds no tools. Ask ARUKZ support to switch it on. See [Modules](https://docs.erp.arukz.com/admin/modules.md).

**2. Get an API token**

A company admin opens **Settings → API and AI access**, chooses **For an AI app (MCP)** (read-only, which is all MCP needs), adds an expiry date if wanted, and copies the token, for example `12|AbCdEf...`. It is shown only once; the same page lists and revokes the company's tokens.

Without admin rights, a user can ask for a read-only token with their own email and password through the API; see [Authentication](https://docs.erp.arukz.com/api-reference/authentication.md).

> [!WARNING]
>
> The token acts as you. Keep it out of shared files and chats. Changing your password, or being deactivated, ends every token you hold. Accounts with two-factor sign-in cannot get a token by password; an admin makes theirs on **Settings → API and AI access**. Give the AI app a user whose role sees only what the app needs.

## Connect your AI app

> [tab] Claude Code
>
> Add the server once, with your token in the header:
>
> ```bash Add ARUKZ ERP to Claude Code theme={"theme":{"light":"github-light","dark":"github-dark"}}
> claude mcp add --transport http arukz-erp https://erp.arukz.com/mcp \
>   --header "Authorization: Bearer YOUR_TOKEN"
> ```
>
> Then run `/mcp` inside Claude Code to check that **arukz-erp** is connected, and ask, for example, "Which customers owe us the most, and how overdue are they?".

> [tab] Claude Desktop
>
> Claude Desktop starts local servers from its configuration file, so use the open-source `mcp-remote` bridge (it needs Node.js) to reach the ARUKZ ERP server with your token. Open **Settings → Developer → Edit Config** and add:
>
> ```json claude_desktop_config.json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "mcpServers": {
>     "arukz-erp": {
>       "command": "npx",
>       "args": [
>         "-y",
>         "mcp-remote",
>         "https://erp.arukz.com/mcp",
>         "--header",
>         "Authorization:${ARUKZ_AUTH}"
>       ],
>       "env": {
>         "ARUKZ_AUTH": "Bearer YOUR_TOKEN"
>       }
>     }
>   }
> }
> ```
>
> Restart Claude Desktop. The ARUKZ ERP tools appear in the tools menu of a new chat.

> [tab] ChatGPT
>
> ChatGPT connects to remote MCP servers as connectors, on plans where developer mode or custom connectors are available. Add a connector with the server URL `https://erp.arukz.com/mcp`, and set its authentication so that every request carries the header `Authorization: Bearer YOUR_TOKEN`.
>
> If your ChatGPT connector screen offers only OAuth sign-in or no authentication, it cannot send a fixed token, and it cannot connect to ARUKZ ERP yet: the server accepts API tokens only. The same holds for any app that offers only OAuth, including Claude's web custom connectors.

> [tab] Other apps and your own code
>
> Any MCP client that speaks the Streamable HTTP transport and lets you set a request header works: point it at `https://erp.arukz.com/mcp` and send `Authorization: Bearer YOUR_TOKEN` on every request. The server answers `POST` only.

## Test the connection

Two requests show whether the token works and which tools it gets. The first starts a session; copy the `MCP-Session-Id` header from its reply into the second.

```bash Initialise a session theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -si https://erp.arukz.com/mcp \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'
```

```bash List the tools theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -s https://erp.arukz.com/mcp \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Session-Id: SESSION_ID_FROM_THE_FIRST_REPLY" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
```

## If it does not work

| Reply | Meaning | What to do |
| - | - | - |
| `401` | No token, a wrong one, or one that has expired | Get a new token and update the app |
| `402` | Your workspace is read-only or locked; MCP requests are `POST`, so they are refused while it is read-only | Renew under **Settings → Subscription**. See [Read-only mode](https://docs.erp.arukz.com/admin/read-only-mode.md) |
| `403` | The user is deactivated | Ask your admin |
| `429` | Too many requests in a minute | Wait a minute |
| Connected, but no tools | The AI module is off for your company, or the user's role cannot see invoices, bills, products or job work | Ask support to switch on AI, or your admin to change the role |

> [card] [Ask AI](https://docs.erp.arukz.com/ai/ask-ai.md)
>
> The same lookups inside ARUKZ ERP.

> [card] [API reference](https://docs.erp.arukz.com/api-reference/introduction.md)
>
> The full REST API, for reading and writing.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.