Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Demo ERPNEXT

FreeNot checked

Demo ERPNEXT — Model Context Protocol server

GitHubEmbed

About

Demo ERPNEXT — Model Context Protocol server

README

Colaborador Axel Cuadros

Este proyecto es un ejemplo de servidor MCP para chatbot integrado con ERPNEXT(Para este proyecto ya se considera que tienes acceso a la ERP)

Configuraciones

Dirigete a la pagina principal haciendo uso de la ip obtenido de la VM con ifconfig

Pagina principal

Dirigete a settings

Settings View

Dezplazate hacia abajo, genera y copia la API key y API secret

API Key

Guarda las credenciales

Descarga o clona el repositorio

Instalación de python

Este documento explica cómo instalar Python entorno Windows usando winget.

Requisitos Previos

  • Windows 10 o superior
  • Tener habilitado el administrador de paquetes winget

Paso 1: Instalar Python

Abre una terminal de Windows (PowerShell o CMD) como administrador y ejecuta:

winget install Python.Python.3


## Instalación de dependencias con uv en Windows

1. Abre PowerShell.
2. Instala pipx si no lo tienes:
   ```powershell
   pip install pipx
  1. Instala uv usando pipx:

    pipx install uv
    

    O directamente con pip:

    pip install uv
    
  2. Verifica la instalación:

    uv --version
    
  3. Crea un entorno virtual con uv:

    uv venv .venv
    
  4. Activa el entorno virtual:

    .venv\Scripts\Activate.ps1
    
  5. Instala las dependencias del proyecto:

    uv pip install -r requirements.txt
    
  6. Si tienes problemas con la instalaciónde uv prueba como administrador:

    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    

Configura tus variables de entorno

Crea un archivo llamado .env en la raíz del proyecto con el siguiente contenido (reemplaza los valores según tu ERPNext):

URL_ERPNext=http://192.168.52.128/
API_KEY=tu_api_key
API_SECRET=tu_api_secret

Asegúrate de que estos datos coincidan con los que obtuviste en la configuración de tu ERPNext.

Este repositorio contiene:

  • Código fuente del servidor
  • Imágenes y diagramas

Para más información, revisa la documentación en la carpeta Docs/.

¿Cómo funciona la herramienta para asignar profesor a una orden de venta?

La función asignar_profesor_a_orden_venta permite asignar un profesor (que debe existir previamente como "Sales Person" en ERPNext) a una orden de venta específica.

¿Qué hace?

  • Recibe el ID de la orden de venta (sales_order_id) y el nombre del profesor (profesor).
  • Actualiza el campo sales_team de la orden de venta en ERPNext, asignando el profesor con el 100% de participación.
  • Devuelve el resultado de la operación e imprime un mensaje indicando si la actualización fue exitosa o si hubo un error.

Ejemplo de uso:

asignar_profesor_a_orden_venta("SO-0001", "Juan Perez")

Esto asignará a "Juan Perez" como responsable de la orden de venta con ID "SO-0001".

Nota: El profesor debe existir previamente como "Sales Person" en ERPNext para que la asignación funcione correctamente.

¿Qué es MCP y cómo funciona en este proyecto?

MCP (Model Context Protocol) es un protocolo y framework que permite exponer funciones de Python como herramientas accesibles para asistentes inteligentes, chatbots o integraciones externas. En este proyecto, se utiliza la clase FastMCP para registrar y exponer funciones que interactúan con ERPNext.

  • Cada función decorada con @mcp.tool() se convierte en una herramienta disponible para el asistente o para ser llamada desde otros sistemas.
  • MCP gestiona la comunicación, el registro y la ejecución de estas funciones de manera estructurada y segura.
  • El servidor MCP puede ejecutarse en diferentes modos de transporte (por ejemplo, stdio, HTTP, etc.), facilitando la integración con otros servicios o interfaces conversacionales.

Ejemplo básico:

from mcp.server.fastmcp import FastMCP
mcp = FastMCP("Demo1")

@mcp.tool()
def mi_funcion(param):
    # lógica aquí
    return resultado

Esto permite que mi_funcion sea llamada desde un asistente o interfaz conectada al servidor MCP.

Para el uso en local con Github local debes usar el archivo mcp.json

Agrega la ruta del archivo main.py en tu equipo y luego selecciona restart o start

Vista json mcp

Luego da click en el simbolo de herramienta en el chat de Github copilot

Vista herramientas mcp

Luego verás si tus herramientas estan disponibles

Vista herramientas mcp

Running the standalone MCP development tools

To run the mcp command with uv:

uv run mcp

Quickstart

Let's create a simple MCP server that exposes a calculator tool and some data:

# server.py
from mcp.server.fastmcp import FastMCP

# Create an MCP server
mcp = FastMCP("Demo")


# Add an addition tool
@mcp.tool()
def add(a: int, b: int) -> int:
    """Add two numbers"""
    return a + b


# Add a dynamic greeting resource
@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:
    """Get a personalized greeting"""
    return f"Hello, {name}!"

You can install this server in Claude Desktop and interact with it right away by running:

mcp install server.py

Alternatively, you can test it with the MCP Inspector:

mcp dev server.py

Prueba

Luego de las configuraciones modifica tus funciones para mayor precisión, puedes probar el servidor desde el chat de Github copilot con este ejemplo:

Vista herramientas mcp

Puedes validar la creación en Customer

Vista herramientas mcp

BONUS - usando Claude desktop

You can install this server in Claude Desktop and interact with it right away by running:

mcp install server.py

Vista herramientas mcp

Abre claude

Verifica que las herramientas estén presentes

Vista herramientas mcp

Prueba creando un alumno

Te aparecerá una ventana emergente, autotiza el mcp

Vista herramientas mcp

Luego revisa la salida y el ERP

Vista herramientas mcp

ERPNEXT

Vista herramientas mcp

from github.com/Orm15/mcp-server-demo-ERPNEXT

Installing Demo ERPNEXT

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/Orm15/mcp-server-demo-ERPNEXT

FAQ

Is Demo ERPNEXT MCP free?

Yes, Demo ERPNEXT MCP is free — one-click install via Unyly at no cost.

Does Demo ERPNEXT need an API key?

No, Demo ERPNEXT runs without API keys or environment variables.

Is Demo ERPNEXT hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Demo ERPNEXT in Claude Desktop, Claude Code or Cursor?

Open Demo ERPNEXT on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Demo ERPNEXT with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs