mcp-business-central-server
The Business Central MCP Server facilitates seamless integration with Microsoft Dynamics 365 Business Central, offering a lightweight and efficient solution to interact with business entities. It emphasizes simplicity in setup and use, primarily through optimized HTTP request management.
Business Central MCP Server
A lightweight MCP Server for seamless integration with Microsoft Dynamics 365 Business Central, enabling MCP clients to interact with any entity in your Business Central environment. Developed by sofias tech.
Features
This server provides a clean interface to Business Central resources through the Model Context Protocol (MCP), with optimized HTTP request handling for improved performance.
Tools
The server implements the following tools:
BC_Get_Schema
: Retrieves the schema of any Business Central entity including available fieldsBC_List_Items
: Fetches a list of entities with optional filtering and paginationBC_Get_Items_By_Field
: Searches for entities based on a specific field valueBC_Create_Item
: Creates a new entity record in Business CentralBC_Update_Item
: Updates an existing entity recordBC_Delete_Item
: Removes an entity record from Business Central
Working with Business Central Entities
This server can work with any entity (table) in Business Central. When using the tools, you must provide the exact entity name as it appears in Business Central. For example:
Employees
Customers
Items
Vendors
SalesOrders
Payments
The entity name is case-sensitive and must match exactly what Business Central exposes through its API.
Architecture
The server is built with resource efficiency in mind:
- Clear separation between resource management and tool implementation
- Simple and maintainable codebase with minimal code duplication
- Direct HTTP request handling using requests library
Setup
- Create API credentials for Business Central
- Configure your Business Central environment and company information
- Set up the required environment variables
Environment Variables
The server requires these environment variables:
BC_URL_SERVER
: Your Business Central API server URL (e.g., "https://api.businesscentral.dynamics.com/v2.0/tenant/api/v2.0")BC_USER
: Your Business Central API usernameBC_PASS
: Your Business Central API passwordBC_COMPANY
: The name of your Business Central company
Quickstart
Installation
pip install -e .
Or install from PyPI once published:
pip install mcp-business-central-server
Using uv:
uv pip install mcp-business-central-server
Claude Desktop Integration
To integrate with Claude Desktop, update the configuration file:
On Windows: %APPDATA%/Claude/claude_desktop_config.json
On macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Standard Integration
"mcpServers": {
"businesscentral": {
"command": "mcp-business-central-server",
"env": {
"BC_URL_SERVER": "your-bc-api-url",
"BC_USER": "your-bc-username",
"BC_PASS": "your-bc-password",
"BC_COMPANY": "your-bc-company"
}
}
}
Using uvx
"mcpServers": {
"businesscentral": {
"command": "uvx",
"args": [
"mcp-business-central-server"
],
"env": {
"BC_URL_SERVER": "your-bc-api-url",
"BC_USER": "your-bc-username",
"BC_PASS": "your-bc-password",
"BC_COMPANY": "your-bc-company"
}
}
}
Development
Requirements
- Python 3.10+
- Dependencies listed in
requirements.txt
andpyproject.toml
Local Development
- Clone the repository
- Create a virtual environment:
python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
- Install development dependencies:
pip install -e .
- Create a
.env
file with your Business Central credentials:BC_URL_SERVER=your-bc-api-url BC_USER=your-bc-username BC_PASS=your-bc-password BC_COMPANY=your-bc-company
- Run the server:
python -m mcp_bc_server
Debugging
For debugging the MCP server, you can use the MCP Inspector:
npx @modelcontextprotocol/inspector -- python -m mcp_bc_server
License
This project is licensed under the MIT License - see the file for details.
Copyright (c) 2025 sofias tech