frappe-api-mcp
Model Context Protocol (MCP) server that exposes a single frappe_api tool to call Frappe REST endpoints under /api.
What it provides
- Tool name:
frappe_api - Methods:
GET,POST,PUT,PATCH,DELETE - Input:
path(required),method,query,body,headers - Auth: uses
FRAPPE_AUTH_TOKENas theAuthorizationheader unless overridden
Requirements
- Node.js 18+
- A reachable Frappe/ERPNext site
Local setup
git clone https://github.com/danielsebastianc/frappe-api-mcp.git
cd frappe-api-mcp
npm install
cp .env.example .env
Set these environment variables before running:
FRAPPE_BASE_URL(example:http://localhost:8000)FRAPPE_AUTH_TOKEN(example:token api_key:api_secret)
Run
npm start
Test
npm test
OpenCode MCP config example
Do not put real secrets in committed config files. Prefer environment injection.
{
"mcp": {
"frappe_api": {
"type": "local",
"command": ["node", "/path/to/your/folder/mcp/frappe-api-server.mjs"],
"environment": {
"FRAPPE_BASE_URL": "http://localhost:8000",
"FRAPPE_AUTH_TOKEN": "token api_key:api_secret"
}
}
}
}