Frappe Dev MCP Server

MCP server for Frappe/ERPNext development with DocTypes, bench commands, and app management

Local serverstdioPython

What is the Frappe Dev MCP server?

Most database access work still happens through a UI a human drives. Frappe Dev MCP server moves it into the conversation instead. MCP server for Frappe/ERPNext development with DocTypes, bench commands, and app management.

The short version

A Model Context Protocol (MCP) server that provides AI assistance for Frappe/ERPNext development. This server offers tools to help with creating DocTypes, running bench commands, managing apps, and other Frappe development tasks.

  • DocType Creation — Automatically generate DocType JSON definitions and Python controllers
  • Bench Commands — Execute bench commands for development workflows
  • App Management — Create, install, and manage Frappe apps
  • API Endpoints — Generate custom API endpoints
  • Database Operations — Run migrations and database management
  • App Structure Analysis — Get detailed app directory structures

The tools it exposes

The server publishes 11 tools. What each one is for:

  • app_name — Name of the Frappe app
  • endpoint_name — Name of the API endpoint
  • method — HTTP method (get, post, put, delete) (default: get)
  • code — Python code for the API endpoint
  • frappe_create_doctype — Creates a new Frappe DocType with JSON definition and Python controller
  • frappe_run_bench_command — The frappe_run_bench_command tool exposed by this server
  • frappe_get_app_structure — The frappe_get_app_structure tool exposed by this server
  • frappe_create_api_endpoint — The frappe_create_api_endpoint tool exposed by this server
  • frappe_migrate_database — The frappe_migrate_database tool exposed by this server
  • frappe_install_app — The frappe_install_app tool exposed by this server
  • frappe_create_app — The frappe_create_app tool exposed by this server

What it needs from you

Configuration is passed through the environment: FRAPPE_PATH. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Node.js 18+ - Frappe/ERPNext bench environment - Access to Frappe bench commands

Getting it running

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.

How it compares

This sits in the database access group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Frappe Dev's toolset — app_name, endpoint_name, method and 8 more — is a fair guide to whether it matches your workflow. It is maintained by SajmustafaKe; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 11 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Frappe Dev.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
app_nameName of the Frappe app
endpoint_nameName of the API endpoint
methodHTTP method (get, post, put, delete) (default: get)
codePython code for the API endpoint
frappe_create_doctypeCreates a new Frappe DocType with JSON definition and Python controller.
frappe_run_bench_commandThe frappe_run_bench_command tool exposed by this server.
frappe_get_app_structureThe frappe_get_app_structure tool exposed by this server.
frappe_create_api_endpointThe frappe_create_api_endpoint tool exposed by this server.
frappe_migrate_databaseThe frappe_migrate_database tool exposed by this server.
frappe_install_appThe frappe_install_app tool exposed by this server.
frappe_create_appThe frappe_create_app tool exposed by this server.

Configuration

  • Node.js 18+ - Frappe/ERPNext bench environment - Access to Frappe bench commands
VariableDescriptionRequired
FRAPPE_PATHFilesystem location the server is allowed to use.Optional

Example prompts to try

  • Use Frappe Dev to app name.
  • Use Frappe Dev to endpoint name.
  • Use Frappe Dev to method.

Frequently asked questions

It connects Frappe Dev to MCP-compatible AI assistants such as Claude and Cursor, exposing 11 tools (app_name, endpoint_name, method, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Frappe Dev directly.