Token导航 LogoToken导航TokenDH.com
Bc Odata MCP logo
数据服务未说明官方级别未说明来源级核验

Bc Odata MCP

MCP Server

一个基于Go的MCP服务器,提供Microsoft Business Central的OData API,用于与LLM和Cursor集成。

工具数

5

提示词数

0

GitHub Stars

0

资源数

0
GoCursor数据分析Cursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

iafnetworkspa

提供方

iafnetworkspa

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

业务中心OData MCP服务器

Go 模型上下文协议 (MCP) 服务器,可暴露所有 Microsoft Business Central OData API,用于 LLM 和 Cursor。

产品特点

  • ✅ OAuth 2.0 身份验证与自动令牌管理
  • ✅ 全面支持OData查询(filter,select,orderby,top,skip)
  • ✅ 可选的自动分页
  • ✅ 自动重试管理和速率限制
  • ✅ 用于一般查询和特定操作的 MCP 工具
  • ✅ 与Cursor和其他MCP客户端兼容
  • ✅ GitHub Actions 自动 CI/CD
  • ✅ 语义版本控制和自动变更日志

先决条件

  • Go 1.21 或更高
  • Credenziali Business Central(客户ID、客户机密、租户ID)
  • 访问 Business Central OData API

安装

Da来源

  1. 克隆仓库:
git clone https://github.com/iafnetworkspa/bc-odata-mcp.git
cd bc-odata-mcp
  1. 安装依赖关系:
go mod download
  1. 填写服务器 :
# Su Windows
go build -o bc-odata-mcp.exe ./cmd/server

# Su Linux/macOS
go build -o bc-odata-mcp ./cmd/server

或者使用 Makefile:

# Su Windows
make build-windows

# Su Linux/macOS
make build-linux  # o make build-darwin per macOS

Da释放

从下载最新版本 页面发布 并为您的平台选择合适的二进制。

配置

  1. 复制示例文件:
cp config.example.env .env
  1. 修改 .env 您的 Business Central 凭据:
BC_CLIENT_ID=your_client_id
BC_CLIENT_SECRET=your_client_secret
BC_TENANT_ID=your_tenant_id
BC_ENVIRONMENT=Production
BC_COMPANY=your_company
BC_BASE_PATH=https://api.businesscentral.dynamics.com/v2.0
BC_TOKEN_URL=https://login.microsoftonline.com/{TENANT_ID}/oauth2/v2.0/token
BC_SCOPE_API=https://api.businesscentral.dynamics.com/.default
  1. 对于 Windows PowerShell,您还可以使用设置脚本:
.\setup-bc-env.ps1.example

使用

Con光标

  1. 配置光标 MCP 文件 (~/.cursor/mcp.json%USERPROFILE%\.cursor\mcp.json):
{
  "mcpServers": {
    "bc-odata": {
      "command": "C:\\path\\to\\bc-odata-mcp.exe",
      "env": {
        "BC_CLIENT_ID": "your_client_id",
        "BC_CLIENT_SECRET": "your_client_secret",
        "BC_TENANT_ID": "your_tenant_id",
        "BC_ENVIRONMENT": "Production",
        "BC_COMPANY": "your_company",
        "BC_BASE_PATH": "https://api.businesscentral.dynamics.com/v2.0",
        "BC_TOKEN_URL": "https://login.microsoftonline.com/{TENANT_ID}/oauth2/v2.0/token",
        "BC_SCOPE_API": "https://api.businesscentral.dynamics.com/.default"
      }
    }
  }
}
  1. 重新启动 Cursor 以加载 MCP 服务器。

可用工具

服务器显示以下 MCP 工具:

bc_odata_query

执行常规 OData 查询 。

参数 :

  • endpoint (字符串,必填):命名dell'endpoint OData(例如“ODV_List”、“Customers”)
  • filter (字符串,可选):Odata过滤器(ES.“No EQ'12345”)
  • select (string, optional):要选择的字段(例如“No,Name,Amount”)
  • orderby (字符串,可选):排序(例如“Document_Date desc”)
  • top (数字,可选): 限制结果(例如 10)
  • skip (number, optional) 要跳过的结果数量
  • paginate (boolean, optional) 如果为 true,则自动检索所有页面

例如:

{
  "endpoint": "ODV_List",
  "filter": "Document_Type eq 'Order'",
  "orderby": "Document_Date desc",
  "top": 10
}

bc_odata_get_entity

检索每个密钥的特定实体。

参数 :

  • endpoint (string, required): OData 端点名称
  • key (string, required) 键值

例如:

{
  "endpoint": "ODV_List",
  "key": "ORD-001"
}

bc_odata_count

计算对应过滤器的实体。

参数 :

  • endpoint (string, required): OData 端点名称
  • filter (字符串,可选):Filtro OData

例如:

{
  "endpoint": "ODV_List",
  "filter": "Document_Type eq 'Order'"
}

bc_odata_list_endpoints

列出 Business Central 中可用的所有 OData 端点。有助于发现可用的实体和 API。

参数 :

例如:

{}

风险评估: 返回可用端点名称数组和完整的服务文档。

bc_odata_get_metadata

获取端点的 OData 元数据。包括实体结构、所有权和关系。

参数 :

  • endpoint (string, optional) OData 端点名称。如果省略,则返回所有元数据。

例如:

{}

或特定元数据:

{
  "endpoint": "ODV_List"
}

注: 元数据通常为 XML 格式,包含有关 OData 服务中可用的所有实体、属性、数据类型和关系的详细信息。

项目结构

bc-odata-mcp/
├── cmd/
│   └── server/
│       └── main.go              # Entry point
├── internal/
│   ├── bc/
│   │   ├── auth.go              # OAuth 2.0 authentication
│   │   └── client.go            # OData client
│   └── mcp/
│       ├── server.go             # MCP server implementation
│       ├── types.go              # MCP protocol types
│       └── server_test.go        # Tests
├── .github/
│   └── workflows/
│       ├── ci.yml                # CI workflow
│       ├── build.yml             # Build workflow
│       └── release.yml           # Release workflow
├── .gsemanticrelease.yml        # Semantic release config
├── CHANGELOG.md                 # Changelog (auto-generated)
├── config.example.env           # Example configuration
├── go.mod                       # Go dependencies
├── Makefile                     # Build automation
└── README.md                    # Questo file

发展

测试地点

要在本地测试服务器,您可以使用发送 JSON-RPC 请求的测试脚本:

echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | ./bc-odata-mcp

按生产构建

# Su Windows
go build -ldflags="-s -w" -o bc-odata-mcp.exe ./cmd/server

# Su Linux/macOS
go build -ldflags="-s -w" -o bc-odata-mcp ./cmd/server

或者使用 Makefile:

make build-windows  # o make build-linux, make build-darwin

约定式提交

本项目使用 约定式提交 自动版本化。提交必须遵循以下格式:

  • feat: 新功能(minor version bump)
  • fix: 每个bug修复(补丁版本碰撞)
  • BREAKING CHANGE:! 每次重大更改(主要版本碰撞)
  • chore:, docs:, style:, refactor:, perf:, test:, build:, ci: 对于其他更改

CI/CD

该项目包括 GitHub Actions 工作流程,用于:

  • 持续集成在每个push/PR上构建,测试和lint
  • 构建构建多平台(Linux,Windows,macOS)
  • 发布自动版本控制和基于常规提交的变更日志生成

安全

  • ⚠️ 永远不要承诺 文件 .env 或存储库中的凭据
  • ✅ 在生产中使用秘密环境变量或管理系统
  • ✅ OAuth 令牌自动缓存和更新
  • ✅ 与 Business Central 的通信是通过 HTTPS 进行的

故障排除

认证错误

如果您收到 401 错误,请检查:

  • OAuth 凭据正确
  • BC_SCOPE_API 是正确的
  • BC_TOKEN_URL 包含 TENANT_ID 正确

连接错误

如果无法连接到 Business Central:

  • 检查 BC_BASE_PATH 是正确的
  • 检查 BC_TENANT_ID, BC_ENVIRONMENTe BC_COMPANY 是正确的
  • 检查网络连接

速率限制

服务器通过指数式重试自动管理速率限制。如果您继续收到 429 错误,请考虑:

  • 增加请求之间的延迟
  • 减少查询频率
  • 使用分页而不是多重查询

更新日志

查看 更改日志.md 完整的更改列表。

许可证

本项目按“原样”提供供内部使用。

贡献

欢迎捐款!请打开一个问题或pull请求。确保您遵循 约定式提交 对于 commit 消息。

目录标签

目录标签

GoCursor数据分析OData本地部署API集成企业资源规划数据查询自动化

支持客户端

Cursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP