Connect AI assistants to your ERPNext instance via the Model Context Protocol (MCP) using the official Frappe API.
Documentation
ERPNext MCP Server
A Model Context Protocol server for ERPNext integration
This is a TypeScript-based MCP server that provides integration with ERPNext/Frappe API. It enables AI assistants to interact with ERPNext data and functionality through the Model Context Protocol.
Features
Resources
- Access ERPNext documents via
erpnext://{doctype}/{name}URIs - JSON format for structured data access
Tools
authenticate_erpnext- Authenticate with ERPNext using username and passwordget_documents- Get a list of documents for a specific doctypecreate_document- Create a new document in ERPNextupdate_document- Update an existing document in ERPNextrun_report- Run an ERPNext reportget_doctype_fields- Get fields list for a specific DocTypeget_doctypes- Get a list of all available DocTypes
Configuration
The server requires the following environment variables:
ERPNEXT_URL- The base URL of your ERPNext instanceERPNEXT_API_KEY(optional) - API key for authenticationERPNEXT_API_SECRET(optional) - API secret for authentication
Development
Install dependencies:
npm installBuild the server:
npm run buildFor development with auto-rebuild:
npm run watchInstallation
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"erpnext": {
"command": "node",
"args": ["/path/to/erpnext-server/build/index.js"],
"env": {
"ERPNEXT_URL": "http://your-erpnext-instance.com",
"ERPNEXT_API_KEY": "your-api-key",
"ERPNEXT_API_SECRET": "your-api-secret"
}
}
}
}To use with Claude in VSCode, add the server config to:
On MacOS: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
On Windows: %APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspectorThe Inspector will provide a URL to access debugging tools in your browser.
Usage Examples
Authentication
erpnext
authenticate_erpnext
{
"username": "your-username",
"password": "your-password"
}Get Customer List
erpnext
get_documents
{
"doctype": "Customer"
}Get Customer Details
erpnext
erpnext://Customer/CUSTOMER001Create New Item
erpnext
create_document
{
"doctype": "Item",
"data": {
"item_code": "ITEM001",
"item_name": "Test Item",
"item_group": "Products",
"stock_uom": "Nos"
}
}Get Item Fields
erpnext
get_doctype_fields
{
"doctype": "Item"
}Similar MCP
Based on tags & features
Trending MCP
Most active this week