返回市场
阿拉斯-克劳德代理

阿拉斯-克劳德代理

作者:DaanTheoden8 星标更新:2025-06-18

项目介绍

🚀 Aras Innovator Claude Agent

通过OAuth 2.0将Claude Desktop连接到Aras Innovator PLM!

此模型上下文协议(MCP)服务器使Claude Desktop能够使用现代OAuth 2.0身份验证和OData REST API与Aras Innovator进行交互,允许您查询PLM数据、创建项目并直接从您的AI助手调用方法。

✨ 您可以做什么?

  • 🔐 与Aras Innovator 14+进行安全的OAuth 2.0认证
  • 📊 使用OData REST端点查询PLM数据
  • ✍️ 直接从Claude创建新项目(零件、文档等)
  • 🔧 调用Aras服务器方法和自定义端点
  • 📋 访问列表和配置数据
  • 🛡️ 企业级安全性,采用bearer token认证

📋 先决条件

🐍 Python 3.8+

  • Windows:python.org下载
  • macOS/Linux: 使用brew install pythonsudo apt install python3 python3-pip安装

🤖 Claude Desktop(免费!)

🏢 Aras Innovator 14+,支持OAuth 2.0

  • 启用了OAuth 2.0端点的Aras Innovator服务器
  • 具有API权限的有效Aras用户凭证
  • 数据库访问权限

🎯 快速开始

1️⃣ 克隆并安装

git clone https://github.com/DaanTheoden/aras-claude-agent.git
cd aras-claude-agent
pip install -r requirements.txt

2️⃣ 配置您的Aras连接

在项目根目录中创建一个.env文件:

# Aras Innovator OAuth 2.0配置
API_URL=https://your-aras-server.com/YourDatabase
API_USERNAME=your-aras-username
API_PASSWORD=your-aras-password
ARAS_DATABASE=YourDatabase

# 可选配置
API_TIMEOUT=30
API_RETRY_COUNT=3
API_RETRY_DELAY=1
LOG_LEVEL=INFO

💡 从env_example.txt复制并更新您的Aras凭证

3️⃣ 添加到Claude Desktop

编辑您的Claude Desktop配置文件:

📁 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"]
    }
  }
}

💡 替换路径为您实际的安装目录!

4️⃣ 测试您的设置!

验证安装:

python main.py

服务器应无JSON解析错误地启动。

在Claude Desktop中测试: 重启Claude Desktop并尝试:

  • "测试我的API连接"
  • "获取数据库中的所有零件"
  • "显示可用的文档类型"

🛠️ 可用工具

工具描述您可以询问的内容示例端点
test_api_connection测试OAuth 2.0认证"测试我的API连接"N/A
api_get_items查询Aras OData"获取所有零件"Part, Document
api_create_item创建新的Aras项目"创建一个新的零件"Part, Document
api_call_method调用Aras服务器方法"调用方法GetItemsInBOM"方法名称
api_get_list获取Aras列表值"显示零件类别"列表ID

🔐 OAuth 2.0认证

此代理使用OAuth 2.0资源所有者密码凭据授予进行与Aras Innovator 14+的安全认证。认证流程:

  1. 令牌请求https://your-server/oauthserver/connect/token
  2. 范围openid Innovator offline_access
  3. 客户端IDIOMApp(默认Aras客户端)
  4. 授权类型password
  5. 必需项username, password, database

💬 示例对话

您:"测试我的API连接"
Claude:✅ 成功认证API!
已获得bearer token,准备好进行API调用。
服务器URL:https://your-server.com/YourDatabase

您:"获取所有item_number以'P-'开头的零件"
Claude:检索了25个符合您标准的零件...

您:"创建一个名为'用户手册v2'的新文档"
Claude:成功创建具有ID A1B2C3D4的文档...

🔧 最近修复及更新

✅ v1.1.0 - OAuth 2.0及JSON解析修复

  • 修复:"意外标记'A','API MCP Se'...不是有效的JSON"错误
  • 添加:使用requests-oauthlib进行正确的OAuth 2.0认证
  • 添加:Aras认证所需的数据库参数
  • 修复:所有打印语句重定向到stderr,防止stdout污染
  • 更新:OData端点支持(/Server/Odata
  • 添加:针对Aras REST API的正确HTTP头

🛠️ 故障排除

🔗 OAuth认证失败?

  • 验证您的Aras服务器是否支持OAuth 2.0(Aras 14+)
  • 检查.env中的凭证和数据库名称
  • 确保用户具有API访问权限

🔐 "缺少数据库参数"错误?

  • 在您的.env文件中添加ARAS_DATABASE=YourDatabaseName

🤖 Claude找不到工具?

  • 在更改配置后重启Claude Desktop
  • 检查claude_desktop_config.json中的文件路径

🐍 JSON解析错误?

  • ✅ 在v1.1.0中已修复!更新到最新版本

🏗️ 架构

Claude Desktop
    ↓ JSON-RPC
MCP Server (stdio)
    ↓ OAuth 2.0
Aras Innovator
    ↓ OData REST API
PLM Database

🤝 贡献

发现bug或想添加功能?我们欢迎贡献!请检查我们的问题或提交拉取请求。

📚 更多学习

📄 许可证

MIT许可证 - 查看LICENSE文件了解详情。