ERPNext MCP Server
Provides tools for interacting with ERPNext, enabling AI assistants to manage documents, run reports, and perform CRUD operations on various DocTypes such as Customers, Items, etc.
Provides integration with the Frappe API, allowing access to ERPNext data through the underlying Frappe framework, including document management and report execution.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ERPNext MCP Server list customers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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}URIsJSON 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
Related MCP server: Frappe MCP Server
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
<use_mcp_tool>
<server_name>erpnext</server_name>
<tool_name>authenticate_erpnext</tool_name>
<arguments>
{
"username": "your-username",
"password": "your-password"
}
</arguments>
</use_mcp_tool>Get Customer List
<use_mcp_tool>
<server_name>erpnext</server_name>
<tool_name>get_documents</tool_name>
<arguments>
{
"doctype": "Customer"
}
</arguments>
</use_mcp_tool>Get Customer Details
<access_mcp_resource>
<server_name>erpnext</server_name>
<uri>erpnext://Customer/CUSTOMER001</uri>
</access_mcp_resource>Create New Item
<use_mcp_tool>
<server_name>erpnext</server_name>
<tool_name>create_document</tool_name>
<arguments>
{
"doctype": "Item",
"data": {
"item_code": "ITEM001",
"item_name": "Test Item",
"item_group": "Products",
"stock_uom": "Nos"
}
}
</arguments>
</use_mcp_tool>Get Item Fields
<use_mcp_tool>
<server_name>erpnext</server_name>
<tool_name>get_doctype_fields</tool_name>
<arguments>
{
"doctype": "Item"
}
</arguments>
</use_mcp_tool>Available Tools
6 toolscreate_documentB
Create a new document in ERPNext
Inputs: data (required), doctype (required).
get_doctype_fieldsB
Get fields list for a specific DocType
Inputs: doctype (required).
get_doctypesA
Get a list of all available DocTypes
Inputs: no named parameters.
get_documentsA
Get a list of documents for a specific doctype
Inputs: doctype (required), limit, fields, filters.
run_reportC
Run an ERPNext report
Inputs: report_name (required), filters.
update_documentC
Update an existing document in ERPNext
Inputs: data (required), name (required), doctype (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool targets a distinct aspect: listing doctypes, fetching fields, retrieving documents, creating, updating, and running reports. There is no overlap between these operations.
All tools use a verb_noun pattern (get_, create_, update_, run_), but pluralization is inconsistent: get_doctypes and get_documents are plural, while get_doctype_fields, create_document, and update_document use singular forms.
With 6 tools, the server is well-scoped and covers core ERPNext interactions without unnecessary bloat. Each tool has a clear purpose.
The set covers create, read (list), and update, but lacks a delete_document operation. Also, get_documents only implies listing, with no explicit get by ID, which may require workarounds. Reports add some breadth.
Maintenance
Related MCP Connectors
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Official Fibery MCP server: query and update your workspace from any AI client via OAuth.
Enables AI assistants to retrieve event data and execute event management operations in Nunify.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with ERPNext/Frappe instances through the REST API, allowing document management, report execution, and DocType operations using natural language.6MIT
- AlicenseNot gradedqualityDmaintenanceAllows AI assistants to interact with Frappe applications through the official REST API, enabling document CRUD operations, schema handling, and detailed API instructions.271 npm2ISC
- AlicenseNot gradedqualityDmaintenanceEnables AI models to securely interact with Frappe Framework/ERPNext instances, supporting document CRUD, RPC methods, file management, workflows, reporting, and more via the Model Context Protocol.271 npmISC
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with ERPNext data and functionality through the Model Context Protocol, including document CRUD, report running, and API method calls.MIT