Microsoft Business Central MCP Server
Microsoft Business Central MCP Server
Microsoft Dynamics 365 Business Central 用の Model Context Protocol (MCP) サーバーです。適切にフォーマットされた API v2.0 呼び出しを通じて、AI アシスタントに Business Central データへの直接アクセスを提供します。
特徴
✅ 正しい API URL: 適切な
/companies(id)/resource形式を使用(ODataV4 セグメントなし)✅ インストール不要:
npxで実行可能 - 事前インストールは不要✅ Azure CLI 認証: 既存の Azure CLI 認証を活用
✅ クライアント資格情報認証: AI エージェント向けのサービス間認証
✅ クリーンなツール名: プレフィックスなしで、
get_schema、list_itemsなど✅ 完全な CRUD: Business Central レコードの作成、読み取り、更新、削除
インストール
npx を使用(推奨)
インストールは不要です。Claude Desktop または Claude Code で設定してください:
{
"mcpServers": {
"business-central": {
"type": "stdio",
"command": "cmd",
"args": ["/c", "npx", "-y", "@knowall-ai/mcp-business-central"],
"env": {
"BC_URL_SERVER": "https://api.businesscentral.dynamics.com/v2.0/{tenant-id}/{environment}/api/v2.0",
"BC_COMPANY": "Your Company Name",
"BC_AUTH_TYPE": "azure_cli"
}
}
}
}Windows ユーザーへの注意: 上記のように cmd を /c とともに使用して、npx を正しく実行してください。
Smithery を使用
Smithery からインストール:
npx -y @smithery/cli install @knowall-ai/mcp-business-central --client claudeローカル開発
git clone https://github.com/knowall-ai/mcp-business-central.git
cd mcp-business-central
npm install
npm run build
node build/index.js設定
環境変数
変数 | 必須 | 説明 | 例 |
| はい | Business Central API ベース URL |
|
| はい | 会社の表示名 |
|
| いいえ | 認証タイプ(デフォルト: |
|
| client_credentials の場合 | Azure AD テナント ID |
|
| client_credentials の場合 | アプリ登録のクライアント ID |
|
| client_credentials の場合 | アプリ登録のクライアント シークレット |
|
設定値の取得方法
テナント ID: Azure Portal → Azure Active Directory → 概要 で確認
環境: 通常は
ProductionまたはSandbox会社名: Business Central に表示される表示名
URL 形式の例:
https://api.businesscentral.dynamics.com/v2.0/00000000-0000-0000-0000-000000000000/Production/api/v2.0認証
推奨事項:
azure_cli認証を使用してください - セットアップが簡単で、より信頼性が高いです。client_credentials方式もサポートされていますが、Business Central の Microsoft Entra Applications 設定には既知の構成上の課題があります。詳細は docs/TROUBLESHOOTING.adoc を参照してください。
オプション 1: Azure CLI(推奨)
最も簡単で信頼性の高い認証方法です。既存の Azure CLI ログインを使用します。
前提条件:
Azure CLI のインストール: https://docs.microsoft.com/cli/azure/install-azure-cli
ログイン:
az loginアクセスの確認:
az account get-access-token --resource https://api.businesscentral.dynamics.com
設定:
{
"mcpServers": {
"business-central": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@knowall-ai/mcp-business-central"],
"env": {
"BC_AUTH_TYPE": "azure_cli",
"BC_URL_SERVER": "https://api.businesscentral.dynamics.com/v2.0/{tenant-id}/Production/api/v2.0",
"BC_COMPANY": "My Company"
}
}
}
}オプション 2: クライアント資格情報(サービス間)
ユーザーの操作なしで実行する必要がある自動化システム向けです。この方法は OAuth 2.0 クライアント資格情報フローを使用します。
注意: この方法には既知の構成上の課題があります。Business Central の「Microsoft Entra Applications」設定は複雑で、アプリケーションユーザーの作成が期待どおりに機能しない場合があります。詳細なガイダンスについては docs/TROUBLESHOOTING.adoc を参照してください。
セットアップの概要:
Azure アプリ登録を作成:
Azure Portal → Azure Active Directory → アプリの登録 に移動
新しい登録を作成(シングルテナント)
API アクセス許可を追加: Dynamics 365 Business Central →
app_access(アプリケーションのアクセス許可。委任されたアクセス許可ではない)アクセス許可に対する管理者の同意を付与
リダイレクト URI を追加:
https://businesscentral.dynamics.com/OAuthLanding.htm
クライアント シークレットを生成:
アプリ登録で、証明書とシークレット に移動
新しいクライアント シークレットを作成し、安全に保存
Business Central を設定:
Business Central で「Microsoft Entra Applications」を検索
+ 新規 をクリックし、アプリのクライアント ID を入力
説明を設定(これがアプリケーションユーザー名になります)
状態を「有効」に設定 - 「'[説明]' という名前のユーザーが作成されます」と表示されるはずです
アクセス許可セットを追加:
D365 BUS FULL ACCESS(推奨)またはD365 READ会社フィールドはすべての会社へのアクセス用に空白のままにする
「同意を付与」をクリック
セットアップを確認:
アプリケーションユーザーが Business Central のユーザー一覧に表示されるはずです
表示されない場合は、docs/TROUBLESHOOTING.adoc で解決策を確認
参考資料:
利用可能なツール
1. get_schema
Business Central リソースの OData メタデータを取得します。
パラメータ:
resource(文字列、必須): リソース名(例:customers、contacts、salesOpportunities)
例:
{
"resource": "customers"
}2. list_items
オプションのフィルタリングとページネーションを使用してアイテムを一覧表示します。
パラメータ:
resource(文字列、必須): リソース名filter(文字列、オプション): OData フィルター式top(数値、オプション): 返すアイテムの最大数skip(数値、オプション): ページネーションのためにスキップするアイテム数
例:
{
"resource": "customers",
"filter": "displayName eq 'Contoso'",
"top": 10
}3. get_items_by_field
特定のフィールド値に一致するアイテムを取得します。
パラメータ:
resource(文字列、必須): リソース名field(文字列、必須): フィルタリングするフィールド名value(文字列、必須): 一致させる値
例:
{
"resource": "contacts",
"field": "companyName",
"value": "Contoso Ltd"
}4. create_item
Business Central に新しいアイテムを作成します。
パラメータ:
resource(文字列、必須): リソース名item_data(オブジェクト、必須): 作成するアイテムデータ
例:
{
"resource": "contacts",
"item_data": {
"displayName": "John Doe",
"companyName": "Contoso Ltd",
"email": "john.doe@contoso.com"
}
}5. update_item
既存のアイテムを更新します。
パラメータ:
resource(文字列、必須): リソース名item_id(文字列、必須): アイテム ID(GUID)item_data(オブジェクト、必須): 更新するフィールド
例:
{
"resource": "customers",
"item_id": "1366066e-7688-f011-b9d1-6045bde9b95f",
"item_data": {
"displayName": "Updated Name"
}
}6. delete_item
Business Central からアイテムを削除します。
パラメータ:
resource(文字列、必須): リソース名item_id(文字列、必須): アイテム ID(GUID)
例:
{
"resource": "contacts",
"item_id": "a1b2c3d4-e5f6-g7h8-i9j0-k1l2m3n4o5p6"
}一般的なリソース
companies- 会社情報customers- 顧客レコードcontacts- 連絡先レコードsalesOpportunities- 営業案件salesQuotes- 販売見積salesOrders- 販売注文salesInvoices- 販売請求書items- 製品/サービスアイテムvendors- 仕入先レコード
トラブルシューティング
詳細なトラブルシューティングガイドについては docs/TROUBLESHOOTING.adoc を参照してください。以下をカバーしています:
認証の問題(401 エラー、トークンの問題)
client_credentialsセットアップの課題と既知の問題会社が見つからないエラー
環境固有の設定(Production と Sandbox)
開発
# Install dependencies
npm install
# Build TypeScript
npm run build
# Watch mode for development
npm run devライセンス
MIT
貢献
問題報告とプルリクエストは https://github.com/knowall-ai/mcp-business-central で受け付けています
関連プロジェクト
MCP 仕様: modelcontextprotocol.io
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for LeadDelta — manage LinkedIn connections and CRM data via AI assistants.
MCP server for AI access to Swagger by SmartBear.
Official Microsoft MCP Server to query Microsoft Entra data using natural language
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/masoniqbal777/Mcp-Business-Central'
If you have feedback or need assistance with the MCP directory API, please join our Discord server