Skip to main content
Glama
SuriyaMurthy

pid_controller

by SuriyaMurthy

Agentic PID Tuner (mediante MCP)

Un panel de control interactivo y en tiempo real para un controlador PID, integrado con el Model Context Protocol (MCP). Este proyecto permite a los agentes de IA (como Claude) leer, analizar y sintonizar activamente un bucle de control simulado mediante comandos en lenguaje natural, con cambios que se reflejan al instante en el navegador web.

Captura del panel

✨ Características

  • Panel web en tiempo real: Ajusta las ganancias $K_p$, $K_i$ y $K_d$ manualmente mediante los controles deslizantes de la interfaz.

  • Visualización de formas de onda en directo: Observa el sobreimpulso, el tiempo de establecimiento y la respuesta del sistema al instante (desarrollado con simple-pid y matplotlib).

  • Control mediante agente de IA: Incluye un servidor MCP que expone herramientas para que los LLM lean las ganancias actuales y envíen otras nuevas.

  • Sincronización bidireccional: Si mueves un control deslizante, la IA ve el nuevo valor. Si la IA cambia un valor, tu navegador se actualiza automáticamente en 1 segundo.

Related MCP server: agentic-mcp-server

🛠️ Requisitos previos

🚀 Instalación

  1. Clona el repositorio:

gh repo clone SuriyaMurthy/agentic-pid-controller
cd agentic-pid-controller
  1. Crea y activa un entorno virtual:

python -m venv .venv

# On Windows:
.venv\Scripts\activate
# On Mac/Linux:
source .venv/bin/activate
  1. Instala las dependencias:

pip install -r requirements.txt

🎮 Uso

1. Inicia el panel web

Ejecuta el servidor Flask para alojar la simulación y la interfaz web:

python app.py

Abre tu navegador y navega a http://127.0.0.1:5000.

2. Conecta con Claude Desktop (MCP)

Para permitir que Claude interactúe con tu panel, añade el servidor MCP a la configuración de Claude Desktop.

Abre el archivo de configuración de Claude Desktop:

  • Linux: ~/.cursor/mcp.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Añade la siguiente configuración. IMPORTANTE: Debes reemplazar las rutas por las rutas completas reales de tu ordenador.

{
  "mcpServers": {
    "pid_controller": {
      "command": "/absolute/path/to/mcp-pid-tuner/.venv/bin/python3",
      "args": [
        "/absolute/path/to/mcp-pid-tuner/mcp_server_pid.py"
      ]
    }
  }
}

Nota para usuarios de Windows: Usa la ruta de tu .venv\Scripts\python.exe y asegúrate de que las barras invertidas estén escapadas (\\).

Reinicia Claude Desktop después de guardar el archivo.

3. Habla con la IA

Con la aplicación Flask en ejecución, abre Claude Desktop. Ahora puedes usar indicaciones como:

  • "Comprueba los parámetros PID actuales en mi panel."

  • "El sistema tiene demasiado sobreimpulso. ¿Puedes ajustar los parámetros para que el sobreimpulso quede por debajo del 5%?"

  • "Aumenta la ganancia proporcional en 0.5 y dime cómo afecta al tiempo de establecimiento."

Observa cómo el panel web se actualiza automáticamente mientras Claude sintoniza el sistema.

📂 Estructura del proyecto

  • app.py: El servidor web Flask, el bucle de simulación PID y los endpoints de la API.

  • mcp_server_pid.py: El servidor FastMCP que expone las herramientas get_pid_parameters y update_pid_parameters al LLM a través de E/S estándar.

  • requirements.txt: Dependencias de Python (flask, mcp, simple-pid, matplotlib).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SuriyaMurthy/agentic-pid-controller'

If you have feedback or need assistance with the MCP directory API, please join our Discord server