Dynamics 365商业中央模型协议服务器

为Microsoft Dynamics 365 Business Central提供的模型上下文协议(MCP)服务器,使AI代理如Windsurf、Claude和Copilot Studio能够与Business Central ERP模块交互。

  • by sdrdcv-collab
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 sdrdcv-collab/bc-mcp-server

使用说明

BC MCP服务器

用于Microsoft Dynamics 365 Business Central的MCP(模型上下文协议)服务器。启用AI代理,如 帆板运动, 克劳德,以及 Copilot工作室 与Business Central ERP模块交互。

特性

  • 🔄 完整的CRUD操作 -查询、创建、更新、删除BC记录
  • 📊 所有BC模块 -财务、销售、采购、库存
  • 🔐 OAuth2身份验证 -安全的Azure AD身份验证
  • 🛠️ 标准化MCP协议 -适用于任何MCP兼容客户端

安装

通过NPX(推荐)

npx @ciellos/bc-mcp-server

通过NPM

npm install -g @ciellos/bc-mcp-server
bc-mcp-server

来源

git clone https://github.com/ciellos-dev/bc-mcp-server.git
cd bc-mcp-server
npm install
npm start

配置

环境变量

创建一个 .env 文件或设置环境变量:

BC_TENANT_ID=your-azure-tenant-id
BC_CLIENT_ID=your-app-client-id
BC_CLIENT_SECRET=your-app-client-secret
BC_ENVIRONMENT=Production
BC_COMPANY=CRONUS USA, Inc.

风帆配置

添加到您的Windsurf MCP设置(%APPDATA%\Windsurf\mcp_settings.json):

{
  "mcpServers": {
    "business-central": {
      "command": "npx",
      "args": ["-y", "@ciellos/bc-mcp-server"],
      "env": {
        "BC_TENANT_ID": "your-tenant-id",
        "BC_CLIENT_ID": "your-client-id",
        "BC_CLIENT_SECRET": "your-client-secret",
        "BC_ENVIRONMENT": "Production",
        "BC_COMPANY": "CRONUS USA, Inc."
      }
    }
  }
}

Claude桌面配置

增添 claude_desktop_config.json:

{
  "mcpServers": {
    "business-central": {
      "command": "npx",
      "args": ["-y", "@ciellos/bc-mcp-server"],
      "env": {
        "BC_TENANT_ID": "your-tenant-id",
        "BC_CLIENT_ID": "your-client-id",
        "BC_CLIENT_SECRET": "your-client-secret",
        "BC_ENVIRONMENT": "Production",
        "BC_COMPANY": "CRONUS USA, Inc."
      }
    }
  }
}

Azure AD应用程序注册

  1. 首选 Azure 门户 → Azure Active Directory → 应用程序注册
  2. 点击 新注册
  3. 姓名: BC MCP Server
  4. 点击 注册
  5. 首选 API权限 → 添加权限 → Dynamics 365商务中心
  6. 添加 Financials.ReadWrite.All 许可
  7. 点击 授予管理员同意
  8. 首选 证书和秘密 → 新客户机密
  9. 复制机密值

可用工具

工具 说明
bc_query 使用OData筛选器查询BC实体
bc_get_record 按ID获取单个记录
bc_create_record 创建新记录
bc_update_record 更新现有记录
bc_delete_record 删除记录
bc_list_companies 列出所有公司
bc_get_metadata 获取实体元数据/架构

支持的实体

  • customers -客户记录
  • vendors -供应商/供货商记录
  • items -库存物品
  • salesOrders -销售订单
  • salesInvoices -销售发票
  • purchaseOrders -采购订单
  • purchaseInvoices -采购发票
  • generalLedgerEntries -总账条目
  • bankAccounts -银行账户
  • employees -员工记录

使用示例

在风帆/克劳德

"List all customers from Business Central"
"Create a new vendor named Contoso Ltd"
"Show sales orders for customer 10000"
"Update item 1000 with new price 99.99"

建筑

┌─────────────────┐     ┌──────────────┐     ┌──────────────────┐
│  Windsurf/      │────▶│  BC MCP      │────▶│ Business Central │
│  Claude/Copilot │◀────│  Server      │◀────│ API              │
└─────────────────┘     └──────────────┘     └──────────────────┘
        │                      │                      │
        │    MCP Protocol      │    REST/OData        │
        │    (JSON-RPC 2.0)    │    (OAuth2)          │

许可证

麻省理工学院© 天空

贡献

欢迎投稿!请打开问题或提交PR。