Authentication uses the Resource Owner Password Credentials grant against the `IOMApp` client, and the database parameter is mandatory — a missing `ARAS_DATABASE` is the first error most setups hit. The account you configure carries its own PLM permissions, so what can be created or which methods can be called is bounded by that account rather than by the server.
A Python server that authenticates against Aras Innovator 14+ with OAuth 2.0 and exposes its OData REST API: querying items, creating them, calling server methods and reading list values.
- `test_api_connection` — confirm authentication worked and a bearer token was obtained, before anything else runs
- `api_get_items` — query PLM data over OData, Part and Document among the endpoints
- `api_create_item` — create new items such as Parts and Documents from the conversation
- `api_call_method` — invoke an Aras server method or custom endpoint by name
- `api_get_list` — read Aras list values, for instance the categories behind a dropdown
Python 3.8+ and an Aras Innovator 14+ server with its OAuth 2.0 endpoints enabled, plus a user account with API and database permissions. A `.env` file supplies `API_URL`, `API_USERNAME`, `API_PASSWORD` and `ARAS_DATABASE`; `API_TIMEOUT`, `API_RETRY_COUNT`, `API_RETRY_DELAY` and `LOG_LEVEL` are optional. `pip install -r requirements.txt`, then point Claude Desktop at `main.py`.
