Odoo时间表MCP服务器
MCP(模型上下文协议)服务器,用于通过外部API管理Odoo 16时间表。
特性
- 列出带有筛选功能的时间表条目
- 阅读详细的时间表信息
- 创建新的时间表条目
- 更新现有时间表条目
- 删除时间表条目
先决条件
- Node.js 18或更高版本
- 具有外部API访问权限的Odoo 16实例
- Odoo API凭据(用户名/密码或API密钥)
安装
npm install
npm run build配置
复制示例配置文件:
cp config.example.json config.json编辑 config.json 使用您的Odoo实例详细信息:
{
"odoo_url": "https://your-instance.odoo.com",
"odoo_db": "your-database-name",
"odoo_username": "your-username",
"odoo_password": "your-password-or-api-key"
}用法
作为MCP服务器
添加到MCP客户端配置中:
{
"mcpServers": {
"odoo-timesheet": {
"command": "node",
"args": ["/path/to/odoo-timesheet-mcp/dist/index.js"],
"env": {
"ODOO_URL": "https://your-instance.odoo.com",
"ODOO_DB": "your-database",
"ODOO_USERNAME": "your-username",
"ODOO_PASSWORD": "your-password"
}
}
}
}可用工具
list_时间表
列出带有可选筛选器的时间表条目。
参数:
limit(可选):要返回的最大条目数offset(可选):要跳过的条目数employee_id(可选):按员工ID筛选project_id(可选):按项目ID筛选date_from(可选):从日期(YYYY-MM-DD)筛选条目date_to(可选):筛选迄今为止的条目(YYYY-MM-DD)
读取时间表
阅读特定时间表条目的详细信息。
参数:
ids:要读取的时间表条目ID数组
创建时间表
创建新的时间表条目。
参数:
project_id:项目IDtask_id(可选):任务IDname:工作描述unit_amount:工作时间date:日期(YYYY-MM-DD)employee_id(可选):员工ID
update_timesheet
更新现有时间表条目。
参数:
ids:要更新的时间表条目ID数组values:具有要更新的字段的对象
删除时间表
删除时间表条目。
参数:
ids:要删除的时间表条目ID数组
发展
npm run watch # Watch mode for development
npm run dev # Build and runAPI 参考
此服务器使用Odoo 16外部API(XML-RPC):https://www.odoo.com/documentation/16.0/developer/reference/external_api.html
使用的主要模型是 account.analytic.line 它表示Odoo中的时间表条目。
