Frappe Dev MCP Server
MCP server for Frappe/ERPNext development with AI assistance for DocTypes, bench commands, and APIs
Connector by SajmustafaKe · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/sajmustafake-frappe-dev-mcp-server
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 36 read · 82 write · 8 delete · 14 not yet classified
- Secrets
- None asked for
- Install scripts
- Not scanned yet
- Runs as
- Node.js package
Tools by what they do 140
Read from the source code; the running server may list different tools.
Read 36 · Look things up without changing anything.
frappe_check_permissionfrappe_get_app_structurefrappe_get_countfrappe_get_customize_formfrappe_get_data_import_templatefrappe_get_doctype_listfrappe_get_doctype_schemafrappe_get_documentfrappe_get_field_optionsfrappe_get_financial_statementsfrappe_get_frappe_usage_infofrappe_get_frontend_structure
Show 24 more tools
frappe_get_hooksfrappe_get_job_statusfrappe_get_permissionsfrappe_get_printfrappe_get_report_metafrappe_get_ui_templatesfrappe_get_valuefrappe_get_vue_component_treefrappe_get_workflowfrappe_get_workflow_actionsfrappe_get_workspace_sidebarfrappe_list_appsfrappe_list_client_scriptsfrappe_list_custom_fieldsfrappe_list_desktop_iconsfrappe_list_documentsfrappe_list_notificationsfrappe_list_print_formatsfrappe_list_reportsfrappe_list_server_scriptsfrappe_list_web_pagesfrappe_list_workspace_sidebarsfrappe_list_workspacesfrappe_scheduler_status
Write 82 · Create, change, send or run things.
frappe_add_apps_screen_hookfrappe_add_boot_sessionfrappe_add_custom_fieldfrappe_add_custom_fields_bulkfrappe_add_doc_eventsfrappe_add_fixturesfrappe_add_jinjafrappe_add_override_methodfrappe_add_permissionfrappe_add_permission_queryfrappe_add_property_setterfrappe_add_scheduler_events
Show 70 more tools
frappe_add_to_my_workspacefrappe_add_user_permissionfrappe_add_web_includefrappe_add_website_generatorfrappe_apply_workflow_actionfrappe_build_assetsfrappe_build_frontendfrappe_bulk_updatefrappe_call_methodfrappe_cancel_documentfrappe_create_api_endpointfrappe_create_appfrappe_create_client_scriptfrappe_create_controller_methodfrappe_create_dashboard_chartfrappe_create_desktop_iconfrappe_create_doctypefrappe_create_doctype_dashboardfrappe_create_documentfrappe_create_document_namingfrappe_create_email_templatefrappe_create_form_jsfrappe_create_frontend_componentfrappe_create_frontend_formfrappe_create_frontend_listfrappe_create_frontend_pagefrappe_create_letter_headfrappe_create_list_jsfrappe_create_module_deffrappe_create_notificationfrappe_create_number_cardfrappe_create_pagefrappe_create_patchfrappe_create_pinia_storefrappe_create_portal_pagefrappe_create_print_formatfrappe_create_resource_composablefrappe_create_rolefrappe_create_role_profilefrappe_create_scheduled_taskfrappe_create_script_reportfrappe_create_server_scriptfrappe_create_testfrappe_create_ui_blockfrappe_create_virtual_doctypefrappe_create_web_formfrappe_create_web_pagefrappe_create_web_templatefrappe_create_webhookfrappe_create_workflowfrappe_create_workspacefrappe_create_workspace_sidebarfrappe_import_datafrappe_import_fixturesfrappe_install_appfrappe_migrate_databasefrappe_new_sitefrappe_rename_documentfrappe_restartfrappe_run_bench_commandfrappe_run_patchfrappe_run_testsfrappe_send_emailfrappe_set_hooks_propertyfrappe_set_valuefrappe_setup_frontend_proxyfrappe_setup_requirementsfrappe_submit_documentfrappe_update_documentfrappe_update_website_settings
Delete 8 · Delete, drop, revoke or wipe things.
frappe_clear_cachefrappe_create_frontend_detailfrappe_delete_custom_fieldfrappe_delete_desktop_iconfrappe_delete_documentfrappe_purge_jobsfrappe_uninstall_appfrappe_update_workspace_sidebar
Not yet classified 14 · We could not tell from the name and description.
frappe_amend_documentfrappe_enqueue_jobfrappe_export_datafrappe_export_fixturesfrappe_generate_frappe_ui_componentfrappe_generate_vue_pagefrappe_get_appfrappe_inspire_ui_blockfrappe_refine_ui_blockfrappe_run_doctype_reportfrappe_run_query_reportfrappe_scaffold_frontend_app
Show 2 more tools
frappe_setup_field_level_securitytool
Secrets and settings it asks for
Other settings (environment variables or headers).
FRAPPE_PATH
Files it touches
- Any path the agent passes to its tools
Tools (140)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
frappe_add_apps_screen_hookAdd the add_to_apps_screen hook to hooks.py (v16) - this is how custom apps register their icon and entry point on the desktop apps screen
frappe_add_boot_sessionAdd boot_session hook to hooks.py for custom boot data
frappe_add_custom_fieldAdd a Custom Field to an existing DocType without modifying the original app's code
frappe_add_custom_fields_bulkAdd multiple Custom Fields to one or more DocTypes at once
frappe_add_doc_eventsAdd document event hooks (before_save, after_insert, on_submit, on_cancel, on_update, before_validate, etc.) to hooks.py
frappe_add_fixturesAdd fixtures list to hooks.py for exporting configuration data
frappe_add_jinjaAdd custom Jinja methods or filters to hooks.py
frappe_add_override_methodAdd override_whitelisted_methods or override_doctype_class entries to hooks.py
frappe_add_permissionAdd DocType permission rules for a role (DocPerm row)
frappe_add_permission_queryAdd permission_query_conditions or has_permission hooks to hooks.py
frappe_add_property_setterChange a property of an existing DocType field without modifying the original code
frappe_add_scheduler_eventsAdd scheduler event hooks (cron, all, daily, hourly, weekly, monthly) to hooks.py
frappe_add_to_my_workspaceAdd a workspace to the current user's 'My Workspaces' sidebar (v16 private workspace cloning)
frappe_add_user_permissionAdd a User Permission to restrict a user to specific documents
frappe_add_web_includeAdd app_include_js, app_include_css, web_include_js, or web_include_css entries to hooks.py
Show 125 more tools
frappe_add_website_generatorAdd website_generators hook for DocTypes that generate web pages
frappe_amend_documentAmend a cancelled document (create amended copy)
frappe_apply_workflow_actionApply a workflow action/transition on a document
frappe_build_assetsBuild front-end assets for all apps or a specific app
frappe_build_frontendRun the frontend build process (yarn build) and copy assets to the Frappe app's public directory
frappe_bulk_updateBulk update documents of a DocType
frappe_call_methodExecute a whitelisted Frappe/ERPNext method via bench. Note: In v16, state-changing methods require POST.
frappe_cancel_documentCancel a submitted document
frappe_check_permissionCheck if a user has permission on a document
frappe_clear_cacheClear cache for a Frappe site
frappe_create_api_endpointCreate a custom whitelisted API endpoint for a Frappe app
frappe_create_appCreate a new Frappe app with the bench scaffolding
frappe_create_client_scriptCreate a Client Script (custom JavaScript form script) for a DocType
frappe_create_controller_methodAdd a controller method (Python) to an existing DocType's controller file. Common methods: validate, before_save, after_insert, on_submit, on_cancel, on_update_after_submit, before_naming, autoname.
frappe_create_dashboard_chartCreate a Dashboard Chart for data visualization
frappe_create_desktop_iconCreate a Desktop Icon document (v16) - icons shown on the desktop/home screen. Supports Link, Folder, and App icon types with role-based visibility.
frappe_create_doctypeCreate a new Frappe DocType with JSON definition and Python controller. Supports all v16 field types including Tab Break, Dynamic Link, Table MultiSelect, Geolocation, JSON, etc.
frappe_create_doctype_dashboardCreate a DocType dashboard configuration showing connections, charts, and related documents
frappe_create_documentCreate a new Frappe document
frappe_create_document_namingConfigure document naming rules (Naming Series, autoname patterns, etc.)
frappe_create_email_templateCreate an Email Template with Jinja support for use in notifications and emails
frappe_create_form_jsCreate or update a DocType's form JavaScript file (.js) for client-side customization
frappe_create_frontend_componentCreate a Vue component file on disk using frappe-ui patterns with proper imports
frappe_create_frontend_detailGenerate a detail/show page for viewing a single document with createDocumentResource, field display, actions (submit/cancel/amend/delete), timeline, and comments
frappe_create_frontend_formGenerate a form page/component with frappe-ui FormControl components, validation, and createDocumentResource integration for creating/editing documents
frappe_create_frontend_listGenerate a list view page with frappe-ui ListView, createListResource, filters, pagination, search, and row click navigation
frappe_create_frontend_pageCreate a Vue page component with frappe-ui patterns and register its route in the router
frappe_create_letter_headCreate a Letter Head template for document printing
frappe_create_list_jsCreate a DocType's list view JavaScript file for list view customization
frappe_create_module_defCreate a Module Definition for a Frappe app
frappe_create_notificationCreate a Frappe Notification (email, system, SMS, or push notification triggered by document events)
frappe_create_number_cardCreate a Number Card for dashboard KPIs
frappe_create_pageCreate a custom Desk Page (single-page application within the desk). In v16, pages JS is evaluated as IIFE.
frappe_create_patchCreate a database migration patch file for an app. Patches run during bench migrate.
frappe_create_pinia_storeCreate a Pinia store with frappe-ui resource integration for complex state management
frappe_create_portal_pageCreate a Portal Page (www/ directory) with HTML/Jinja template and Python controller for a Frappe app
frappe_create_print_formatCreate a custom Print Format (HTML/Jinja) for a DocType. v16 supports custom print formats for reports.
frappe_create_resource_composableGenerate a composable wrapping frappe-ui's resource system (createDocumentResource, createListResource, or createResource/call)
frappe_create_roleCreate a new Role in the Frappe system
frappe_create_role_profileCreate a Role Profile that groups multiple roles together
frappe_create_scheduled_taskCreate a Python method and register it as a scheduled task in hooks.py
frappe_create_script_reportCreate a Script Report with Python data generation and optional JS client-side script
frappe_create_server_scriptCreate a Server Script (DocType Event, API, Permission Query, or Scheduled) directly in Frappe's database
frappe_create_testCreate a test file (unit + integration) for a DocType using Frappe v16 test patterns
frappe_create_ui_blockCreate UI blocks using frappe-ui and Tailwind CSS patterns
frappe_create_virtual_doctypeCreate a Virtual DocType (no database table, data from external source or computed). Common in v16 for API-backed data.
frappe_create_web_formCreate a Web Form for public-facing data entry
frappe_create_web_pageCreate a Web Page document for the website
frappe_create_web_templateCreate a Jinja template file for emails, print, or web pages
frappe_create_webhookCreate a Webhook to send data to external services on document events
frappe_create_workflowCreate a complete Workflow with states, transitions, and actions for a DocType
frappe_create_workspaceCreate a Workspace page (v16 redesigned workspace with sidebar navigation and desktop icon support)
frappe_create_workspace_sidebarCreate a Workspace Sidebar (v16) - the persistent left sidebar navigation. Public sidebars (no for_user) appear for all users. Private sidebars (with for_user) appear only for that user in 'My Workspaces'.
frappe_delete_custom_fieldDelete a Custom Field from a DocType
frappe_delete_desktop_iconDelete a Desktop Icon by name/label
frappe_delete_documentDelete a Frappe document
frappe_enqueue_jobEnqueue a background job using frappe.enqueue() (RQ)
frappe_export_dataExport data from a DocType to JSON
frappe_export_fixturesExport fixture data for an app (exports DocTypes defined in hooks.py fixtures)
frappe_generate_frappe_ui_componentGenerate a Vue 3 component using frappe-ui library
frappe_generate_vue_pageGenerate a complete Vue page with frappe-ui layout and components
frappe_get_appClone/get a Frappe app from a git URL
frappe_get_app_structureGet the directory structure of a Frappe app
frappe_get_countGet count of documents matching filters
frappe_get_customize_formGet the full customization of a DocType (custom fields, property setters, etc.)
frappe_get_data_import_templateGet a CSV import template for a DocType
frappe_get_doctype_listList all available DocTypes, optionally filtered by module or app
frappe_get_doctype_schemaGet the complete schema/structure of a DocType including fields, permissions, and properties
frappe_get_documentRetrieve a Frappe document by DocType and name
frappe_get_field_optionsGet available options for Link or Select fields in a DocType
frappe_get_financial_statementsGet financial statements (Profit & Loss, Balance Sheet, Cash Flow) from ERPNext
frappe_get_frappe_usage_infoGet comprehensive Frappe development information: version, installed apps, DocType stats, API endpoints, and development tips
frappe_get_frontend_structureGet the directory structure of a frappe-ui frontend app
frappe_get_hooksRead and display the current hooks.py file of a Frappe app
frappe_get_job_statusGet the status of background jobs
frappe_get_permissionsGet all permission rules for a DocType
frappe_get_printGet rendered print output for a document
frappe_get_report_metaGet metadata for a Frappe report (columns, filters, etc.)
frappe_get_ui_templatesGet available UI templates and patterns organized by category
frappe_get_valueGet specific field value(s) from a document
frappe_get_vue_component_treeGet the Vue component tree structure for a page
frappe_get_workflowGet workflow definition for a DocType
frappe_get_workflow_actionsGet available workflow actions for a document based on current state and user role
frappe_get_workspace_sidebarGet the Workspace Sidebar configuration for the current user or a specific sidebar by title
frappe_import_dataImport data from CSV/JSON into a DocType using Frappe Data Import
frappe_import_fixturesImport fixture data from an app's fixtures directory
frappe_inspire_ui_blockGenerate creative UI blocks inspired by modern design patterns
frappe_install_appInstall a Frappe app on a site
frappe_list_appsList all installed apps on a site
frappe_list_client_scriptsList all Client Scripts
frappe_list_custom_fieldsList all Custom Fields for a DocType
frappe_list_desktop_iconsList Desktop Icon documents (v16), optionally filtered by app, icon_type, or role
frappe_list_documentsList Frappe documents with filters, field selection, ordering, and pagination
frappe_list_notificationsList all Notification documents
frappe_list_print_formatsList all Print Formats, optionally filtered by DocType
frappe_list_reportsList all available reports, optionally filtered by type or DocType
frappe_list_server_scriptsList all Server Scripts
frappe_list_web_pagesList all web pages
frappe_list_workspace_sidebarsList all Workspace Sidebars (v16), optionally filtered by user or standard status
frappe_list_workspacesList all workspaces (v16: public ones appear as desktop icons, private ones in 'My Workspaces' sidebar)
frappe_migrate_databaseRun database migration for a Frappe site
frappe_new_siteCreate a new Frappe site
frappe_purge_jobsPurge failed/pending background jobs
frappe_refine_ui_blockRefine and improve existing UI blocks with responsive, dark mode, or animation enhancements
frappe_rename_documentRename a document
frappe_restartRestart bench services (web, worker, scheduler)
frappe_run_bench_commandExecute any bench command for Frappe development
frappe_run_doctype_reportGenerate a quick report based on a DocType listing with filters
frappe_run_patchRun a specific patch manually
frappe_run_query_reportExecute a Frappe query report with filters
frappe_run_testsRun tests for a Frappe app, module, or specific DocType
frappe_scaffold_frontend_appScaffold a complete frappe-ui SPA inside a Frappe app's frontend/ directory with Vue 3, Vite, Tailwind CSS, frappe-ui, vue-router, and optionally Pinia
frappe_scheduler_statusCheck scheduler status or enable/disable scheduler
frappe_send_emailSend an email programmatically via Frappe. Note: v16 frappe.sendmail(now=True) no longer commits transactions.
frappe_set_hooks_propertySet any arbitrary property in hooks.py (for hooks not covered by specialized tools)
frappe_set_valueSet a specific field value on a document
frappe_setup_field_level_securityConfigure field-level permissions (permlevel) for DocType fields. v16 supports role-based field masking.
frappe_setup_frontend_proxyCreate/update the proxyOptions.js file for connecting the Vite dev server to a Frappe backend site
frappe_setup_requirementsInstall Python and Node dependencies for all apps
frappe_submit_documentSubmit a submittable document
frappe_uninstall_appUninstall a Frappe app from a site
frappe_update_documentUpdate an existing Frappe document
frappe_update_website_settingsUpdate website settings (homepage, navbar, footer, brand, favicon, etc.)
frappe_update_workspace_sidebarUpdate an existing Workspace Sidebar - add, remove, or reorder items
toolA decorator that registers a function as a tool that can be used by an LLM. Example: >>> @mcp.tool() ... def get_current_weather(location: str, unit: str = "celsius"): ... '''Get the current weather in a given location.''' ... # ... implementation ... Args: name: The name of the tool. If not provided, the function's `__name__` will be used. description: A description of what the tool does. If not provided, it will be extracted from the function's docstring. input_schema: The JSON schema for the tool's input. If not provided, it will be infe…
Signals
- Stars
- 4
- Forks
- 1
- Open issues
- 0
- Last commit
- Mar 4, 2026 (7 months ago)
- Last release
- Nov 8, 2025 (11 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
io.github.SajmustafaKe/frappe-dev-mcp-server- Version
- 1.0.1
- Auth
- No auth
- Packages
- npm frappe-dev-mcp-server
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
Frappe Dev MCP Server. Agent Mart. https://agentmart.dev/connectors/sajmustafake-frappe-dev-mcp-server (last updated 2026-10-24)