LabscoMCP early access ↗
DaanTheodenMCP SERVER

Generic API MCP Server

Query and create Aras Innovator PLM items from Claude Desktop, over OAuth 2.0 and OData.

by DaanTheoden ↗ERP & Vertical Business SystemsCommunity

LABSCO SUMMARY

Password-grant OAuth against Aras, with the database name as a required field.

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.

What it is

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.

What you get

  • 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

Requirements

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.

Setup effort

Build from source — git clone https://github.com/DaanTheoden/aras-claude-agent.git