erpnext-fast-mcp-server

erpnext-fast-mcp-server

Enables generic CRUD operations on ERPNext/Frappe DocTypes via MCP tools, allowing users to interact with ERPNext data like documents, reports, and schema through natural language commands.

Category
Visit Server

README

erpnext-fast-mcp-server

A FastMCP server that exposes generic ERPNext / Frappe DocType operations as MCP tools, so any MCP-compatible client (Claude Desktop, Claude Code, etc.) can read and write data in an ERPNext site over its REST API.

Tools

  • get_document(doctype, name) — fetch a single document
  • list_documents(doctype, filters, fields, order_by, limit, limit_start) — search/list documents
  • create_document(doctype, data) — create a document
  • update_document(doctype, name, data) — update fields on a document
  • delete_document(doctype, name) — delete a document
  • get_doctype_meta(doctype) — fetch a DocType's field/schema definition
  • get_count(doctype, filters) — count documents matching filters
  • run_report(report_name, filters) — run a Query/Script report

These are generic, so they work against any DocType (Customer, Sales Invoice, Item, Stock Entry, etc.) without hardcoding business objects.

Setup

  1. Install dependencies (using uv):

    uv sync
    
  2. Get API credentials from your Frappe/ERPNext site: User → API Access → Generate Keys. Copy the API Key and API Secret shown (the secret is only displayed once).

  3. Copy .env.example to .env and fill in your values:

    cp .env.example .env
    
    FRAPPE_URL=https://your-site.frappe.cloud
    FRAPPE_API_KEY=your-api-key
    FRAPPE_API_SECRET=your-api-secret
    

    .env is git-ignored — never commit real credentials.

  4. Run the server directly to check it starts:

    uv run erpnext-mcp
    

Using with Claude Desktop / Claude Code

Add to your MCP client config (e.g. claude_desktop_config.json):

{
  "mcpServers": {
    "erpnext": {
      "command": "uv",
      "args": ["run", "--directory", "/absolute/path/to/erpnext-fast-mcp-server", "erpnext-mcp"],
      "env": {
        "FRAPPE_URL": "https://your-site.frappe.cloud",
        "FRAPPE_API_KEY": "your-api-key",
        "FRAPPE_API_SECRET": "your-api-secret"
      }
    }
  }
}

Alternatively, keep credentials only in .env (not in the client config) and omit the env block above — python-dotenv will load .env from the project directory at startup.

Security notes

  • Never commit .env or hardcode API keys/secrets in source.
  • Scope the Frappe user's role/permissions to the minimum needed — the MCP tools inherit whatever permissions the API key's user has on the site.
  • delete_document is irreversible; consider removing it from the tool list if you don't want an MCP client to be able to delete records.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured