Generic API MCP Server
A generic server to interact with any REST API, allowing you to query data, create items, and call methods.
🚀 Aras Innovator Claude Agent
Connect Claude Desktop to Aras Innovator PLM via OAuth 2.0!
This Model Context Protocol (MCP) server enables Claude Desktop to interact with Aras Innovator using modern OAuth 2.0 authentication and OData REST APIs, allowing you to query PLM data, create items, and call methods directly from your AI assistant.
✨ What can you do?
- 🔐 Secure OAuth 2.0 authentication with Aras Innovator 14+
- 📊 Query PLM data using OData REST endpoints
- ✍️ Create new items (Parts, Documents, etc.) directly from Claude
- 🔧 Call Aras server methods and custom endpoints
- 📋 Access lists and configuration data
- 🛡️ Enterprise-grade security with bearer token authentication
📋 Prerequisites
🐍 Python 3.8+
- Windows: Download from python.org
- macOS/Linux:
brew install pythonorsudo apt install python3 python3-pip
🤖 Claude Desktop (free!)
- Download from claude.ai - no subscription required!
🏢 Aras Innovator 14+ with OAuth 2.0
- Aras Innovator server with OAuth 2.0 endpoints enabled
- Valid Aras user credentials with API permissions
- Database access permissions
🎯 Quick start
1️⃣ Clone & install
git clone https://github.com/DaanTheoden/aras-claude-agent.git
cd aras-claude-agent
pip install -r requirements.txt
2️⃣ Configure your Aras connection
Create a .env file in the project root:
# Aras Innovator OAuth 2.0 Configuration
API_URL=https://your-aras-server.com/YourDatabase
API_USERNAME=your-aras-username
API_PASSWORD=your-aras-password
ARAS_DATABASE=YourDatabase
# Optional Configuration
API_TIMEOUT=30
API_RETRY_COUNT=3
API_RETRY_DELAY=1
LOG_LEVEL=INFO
💡 Copy from
env_example.txtand update with your Aras credentials
3️⃣ Add to Claude Desktop
Edit your Claude Desktop config file:
📁 Windows: %APPDATA%\Claude\claude_desktop_config.json
📁 macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"api-server": {
"command": "py",
"args": ["C:/path/to/your/aras-claude-agent/main.py"]
}
}
}
💡 Replace the path with your actual installation directory!
4️⃣ Test your setup!
Verify installation:
python main.py
The server should start without any JSON parsing errors.
Test in Claude Desktop: Restart Claude Desktop and try:
- "Test my API connection"
- "Get all Parts from the database"
- "Show me the available Document types"
🛠️ Available tools
| Tool | Description | What You Can Ask | Example Endpoint |
|---|---|---|---|
test_api_connection | Test OAuth 2.0 authentication | "Test my API connection" | N/A |
api_get_items | Query Aras OData | "Get all Parts" | Part, Document |
api_create_item | Create new Aras items | "Create a new Part" | Part, Document |
api_call_method | Call Aras server methods | "Call method GetItemsInBOM" | Method names |
api_get_list | Get Aras list values | "Show Part categories" | List IDs |
🔐 OAuth 2.0 Authentication
This agent uses OAuth 2.0 Resource Owner Password Credentials Grant for secure authentication with Aras Innovator 14+. The authentication flow:
- Token Request:
https://your-server/oauthserver/connect/token - Scope:
openid Innovator offline_access - Client ID:
IOMApp(default Aras client) - Grant Type:
password - Required:
username,password,database
💬 Example conversations
You: "Test my API connection"
Claude: ✅ Successfully authenticated with API!
Bearer token obtained and ready for API calls.
Server URL: https://your-server.com/YourDatabase
You: "Get all Parts where item_number starts with 'P-'"
Claude: Retrieved 25 Parts matching your criteria...
You: "Create a new Document with name 'User Manual v2'"
Claude: Successfully created Document with ID A1B2C3D4...
🔧 Recent Fixes & Updates
✅ v1.1.0 - OAuth 2.0 & JSON Parsing Fixes
- Fixed: "Unexpected token 'A', 'API MCP Se'... is not valid JSON" error
- Added: Proper OAuth 2.0 authentication with
requests-oauthlib - Added: Database parameter requirement for Aras authentication
- Fixed: All print statements redirected to stderr to prevent stdout contamination
- Updated: OData endpoint support (
/Server/Odata) - Added: Proper HTTP headers for Aras REST API
🛠️ Troubleshooting
🔗 OAuth authentication failing?
- Verify your Aras server supports OAuth 2.0 (Aras 14+)
- Check credentials and database name in
.env - Ensure user has API access permissions
🔐 "Missing database parameter" error?
- Add
ARAS_DATABASE=YourDatabaseNameto your.envfile
🤖 Claude not finding tools?
- Restart Claude Desktop after config changes
- Check file paths in
claude_desktop_config.json
🐍 JSON parsing errors?
- ✅ Fixed in v1.1.0! Update to latest version
🏗️ Architecture
Claude Desktop
↓ JSON-RPC
MCP Server (stdio)
↓ OAuth 2.0
Aras Innovator
↓ OData REST API
PLM Database
🤝 Contributing
Found a bug or want to add features? We welcome contributions! Please check our issues or submit a pull request.
📚 Learn More
📄 License
MIT License - see LICENSE file for details.
相关服务器
Scout Monitoring MCP
赞助Put performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
赞助Access financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
MalwareAnalyzerMCP
Execute terminal commands for malware analysis. Requires Node.js 18 or higher.
Tuteliq
AI-powered safety tools for detecting grooming, bullying, threats, and harmful interactions in conversations. The server integrates Tuteliq’s behavioral risk detection API via the Model Context Protocol (MCP), enabling AI assistants to analyze interaction patterns rather than relying on keyword moderation. Use cases include platform safety, chat moderation, child protection, and compliance with regulations such as the EU Digital Services Act (DSA), COPPA, and KOSA.
Codacy
Access the Codacy API to analyze code quality, coverage, and security for your repositories.
Blueprint MCP
Browser automation via MCP for Chrome and Firefox
BlueMouse
The "Prefrontal Cortex" for LLMs. A local, data-driven logic gate that interviews AI to prevent hallucinations.
Bevy BRP MCP
Control, inspect, and mutate Bevy applications with AI coding assistants via the Bevy Remote Protocol (BRP).
EVE Online ESI MCP Server
An MCP server for interacting with the EVE Online ESI (EVE Swagger Interface) API.
Remote MCP Server (Authless)
An example of a remote MCP server deployable on Cloudflare Workers, featuring customizable tools and no authentication.
Liana-MCP
A natural language interface for cell-cell communication analysis using the Liana framework.
Kai
Kai provides a bridge between large language models (LLMs) and your Kubernetes clusters, enabling natural language interaction with Kubernetes resources. The server exposes a comprehensive set of tools for managing clusters, namespaces, pods, deployments, services, and other Kubernetes resources