# Integración de Modelos (MCP/Agent)

Este artículo le presenta cómo integrar FIRERPA con modelos de lenguaje grandes (LLMs) (a través de MCP o comandos). FIRERPA ya ha implementado en su capa base el protocolo de servidor MCP y la funcionalidad nativa de `tool-call` de OpenAI, lo que le permite escribir sus propios plugins MCP y ofrecer servicios a través del puerto estándar 65000, o heredar la clase `Agent` para implementar llamadas a `tools` de forma totalmente automática.

## Comando `Agent` Integrado

Mediante el comando `agent` integrado, puede completar rápidamente tareas de forma totalmente conversacional a través de un modelo de lenguaje grande. Es compatible con cualquier proveedor de servicios o servicio autohospedado que sea compatible con la API de OpenAI + `toolcall`. En combinación con el `crontab` integrado, puede programar la ejecución de tareas conversacionales.

```{hint}
El comando `agent` debe usarse dentro de la terminal integrada y requiere que proporcione una API y una clave válidas. El rendimiento puede variar entre los diferentes modelos de lenguaje grandes, por favor elija el que mejor se adapte a sus necesidades. Recomendamos gemini, openai, deepseek, glm, etc.
```

| Nombre del Parámetro | Tipo | Requerido | Valor por Defecto | Descripción |
| :--- | :--- | :--- | :--- | :--- |
| `--api` | Cadena (str) | Sí | - | Endpoint de la API |
| `--model` | Cadena (str) | Sí | - | Nombre del modelo |
| `--temperature` | Flotante (float) | No | `0.2` | Temperatura de muestreo del modelo |
| `--key` | Cadena (str) | Sí | - | Clave de API para autenticación |
| `--vision` | Booleano (bool) | No | `False` | Habilitar modo de visión |
| `--imsize` | Entero (int) | No | `1000` | Tamaño de la imagen en modo de visión |
| `--prompt` | Cadena (str) | Sí | - | Instrucción a ejecutar por el agente (Agent) |
| `--max-tokens` | Entero (int) | No | `16384` | Número máximo de tokens a generar |
| `--step-delay` | Flotante (float) | No | `0.0` | Tiempo de retraso entre pasos |

```{attention}
Tenga en cuenta que la dirección del parámetro API es la dirección completa, no la `base_url`. Generalmente, es necesario agregar `/chat/completions` después de la `base_url` para construir la dirección completa de la API.
```

Una vez que tenga la información necesaria, puede hacer que la IA opere su dispositivo automáticamente ingresando el siguiente comando en la terminal del escritorio remoto.

```bash
agent --api https://generativelanguage.googleapis.com/v1beta/openai/chat/completions --key YOUR_API_KEY --model gemini-2.5-flash --prompt "Ayúdame a abrir la aplicación de configuración, nombre del paquete com.android.settings, encontrar la configuración de red y activar el modo avión"
```

Si su prompt de tarea es demasiado largo, también puede proporcionarlo a través de un archivo.

```bash
agent --api https://generativelanguage.googleapis.com/v1beta/openai/chat/completions --key YOUR_API_KEY --model gemini-2.5-flash --prompt /path/to/prompt.txt
```

## Integración con Claude & Cursor (MCP)

Esta sección le presenta cómo integrar la funcionalidad MCP de FIRERPA en su cliente de modelo de lenguaje grande. Solo hemos proporcionado ejemplos para Claude y Cursor, pero puede usarlo en cualquier otro lugar que admita el protocolo MCP.

```{note}
El servicio MCP integrado de FIRERPA admite `tool-call`, `resource-read`, así como `prompts`, notificaciones de progreso y registros.
```

```{attention}
Tenga en cuenta que los protocolos de comunicación para los servidores 8.0 y 9.0 son diferentes. 9.x usa `streamable-http`, mientras que 8.x usa `sse`.
```

### Instalar la Extensión Oficial

Le proporcionamos un servicio MCP oficial. Puede descargar este módulo de extensión en <a href="https://github.com/firerpa/lamda/blob/HEAD/extensions/firerpa.py" target="_blank">extensions/firerpa.py</a>. También puede consultar su método de implementación para escribir o ampliar la funcionalidad del plugin usted mismo. Después de descargar el script del plugin de extensión, súbalo al directorio `/data/usr/modules/extension` del dispositivo a través del escritorio remoto o manualmente con `push`. Luego, reinicie el dispositivo o el servicio FIRERPA.

```{attention}
Los scripts de extensión para 8.0 y 9.0 no son compatibles. Por favor, confirme estrictamente la versión de su servidor y obtenga el script correspondiente de la rama de GitHub correcta.
```

### Usar la Extensión Oficial

Para **Claude**, primero debe ir a la página de configuración de Claude y seguir los pasos que se muestran en la imagen a continuación. Luego, según las indicaciones, edite el archivo de configuración `claude_desktop_config.json` de Claude y agregue la siguiente configuración de servicio MCP en formato JSON.


```json
{"mcpServers": {"firerpa": {"command": "npx", "args": ["-y", "supergateway", "--streamableHttp", "http://192.168.0.2:65000/firerpa/mcp/"]}}}
```

<p align="center">
<img src="/assets/images/claude-settings.png" alt="Ejemplo" width="auto">
</p>

Para **Cursor**, debe abrir la configuración de Cursor (Cursor Settings), seguir los pasos que se muestran en la imagen e ingresar la siguiente configuración.

```json
{"mcpServers": {"firerpa": {"url": "http://192.168.0.2:65000/firerpa/mcp/"}}}
```

<p align="center">
<img src="/assets/images/cursor-settings.png" alt="Ejemplo" width="auto">
</p>

```{attention}
Por favor, asegúrese de reemplazar el enlace en la configuración con la dirección IP de su propio dispositivo.
```

### Escribir Extensiones MCP

```{hint}
Documentación próximamente. Esté atento.
```