Servidor MCP

El servidor Power Portals Pro MCP proporciona a los asistentes de programación de IA conocimiento directo de este framework mientras construyes. Es un servidor Model Context Protocol , viene con el framework y no hay clave de licencia ni nada a lo que suscribirse.

Por qué existe

Dos cosas que un agente no puede obtener solo con la documentación, y ambas causan código roto:

Lo que responde

Nota

Todas las herramientas de Dataverse leen metadatos. Ninguna lee, escribe o borra un registro, así que apuntar a un agente a un entorno de producción le permite aprender la forma de tus datos sin poder tocarlos.

Añadirlo a un proyecto

Dos lugares donde puede vivir

Aquí hay un huevo y la gallina que merece la pena ser explícito. Las plantillas escriben la configuración en el proyecto que crean, pero el servidor es más útil antes de que ese proyecto exista, cuando eliges una plantilla y sus opciones. Así que instálala una vez para ti y deja que el archivo por proyecto tome el control a partir de ahí.

Una vez por máquina, para cualquier carpeta

Esto hace que el servidor esté disponible en todas partes, incluyendo una carpeta vacía en la que vas a andamiar. Luego puede responder qué plantilla usar, qué significan las opciones y qué configurar después. Deliberadamente desfijado, para que registre la última versión:

Visual Studio lee un nivel .mcp.json de usuario desde tu carpeta de perfil, Cursor usa ~/.cursor/mcp.json, y VS Code tiene una configuración MCP a nivel de usuario en sus configuraciones. Cada uno ocupa el mismo servers bloque.

Por proyecto, fijado a su versión

Los proyectos creados a partir de las plantillas Power Portals Pro ya están conectados por cable: la plantilla escribe a .mcp.json en la raíz de la solución, fijada a la versión correspondiente del servidor. No hay nada que hacer.

Para añadirlo a un proyecto existente, crea ese archivo tú mismo en la raíz de tu solución:

¿Qué archivo lee tu editor?

Visual Studio 2022 17.14+ y Visual Studio 2026 leen .mcp.json desde la carpeta de la solución, y Claude Code también. VS Code lee .vscode/mcp.json y Cursor .cursor/mcp.json lee — ambos usan el mismo servers bloque, así que cópialo a otro.

dnx viene con el SDK .NET 10, que ya tienes: todos los proyectos Power Portals Pro están alojados por ASP.NET Core, incluyendo React SPAs. La primera partida descarga el paquete y lo almacena en caché.

Tener ambos es la configuración prevista. Las dos entradas usan el mismo nombre de servidor, así que un cliente que entiende ambos ámbitos usa el del proyecto — lo que significa que obtienes las respuestas con versiones dentro de un proyecto y las más recientes en cualquier otro lugar.

Comprobar que funciona

Pregunta a tu asistente algo que solo el servidor pueda responder — por ejemplo: "usa get_component_api para mostrarme todos los parámetros en MainGrid". Si la herramienta no está disponible, el cliente no ha detectado el archivo de configuración; la mayoría necesita reiniciar después de añadirlo.

Conexión a Dataverse

Las herramientas de documentación no necesitan ninguna configuración. Las herramientas de metadatos necesitan una conexión con tu entorno, y esa conexión pertenece a la carpeta, no a la máquina. Ejecuta esto una vez en el proyecto:

Un entorno por carpeta

Eso vincula esta carpeta a un solo entorno. Si trabajas con varios clientes, cada proyecto permanece conectado a su propio entorno y los agentes en diferentes carpetas nunca se cruzan. Esto es lo único que pac auth select no se puede hacer: cambia un único perfil de toda la máquina, así que cambiar de cliente en un solo lugar lo cambia en todas partes.

El inicio de sesión utiliza por defecto el flujo de código del dispositivo, así que funciona por SSH, dentro de un contenedor y en WSL, y puedes terminarlo en un teléfono. Paso --browser si prefieres abrir uno.

Dónde se almacenan las cosas

La caché de tokens está codificada por el entorno, así que un segundo clon del repositorio del mismo cliente no te pide que inicies sesión de nuevo, mientras que un cliente diferente siempre lo hace.

Mandos

Todos estos actúan sobre la carpeta actual a menos que apruebes --workspace.

Otras formas de conectar

El entorno y las credenciales se resuelven en este orden, por lo que la declaración de intenciones más explícita gana:

  1. Variables de entornoPPP_D365_URL, PPP_D365_CLIENT_ID y PPP_D365_CLIENT_SECRET en el bloque del env servidor. Un principal de servicio, y la forma de conectarlo en CI o en un contenedor compartido.
  2. El inicio de sesión de la carpeta — escrito por login. La ruta normal.
  3. Los propios ajustes del proyecto — los mismos D365:Url, D365:ClientId y D365:ClientSecret (o D365:Secret) el propio portal lee de secretos de usuario y appsettings. Por tanto, un proyecto Power Portals Pro configurado a menudo no necesita iniciar sesión en absoluto.

Perfiles CLI de Power Platform

Si ya tienes entornos en pac, puedes empezar desde uno en lugar de buscar una URL:

La CLI no tiene ningún comando que entregue un token de acceso, y mantiene las credenciales en su propio almacén, por lo que su sesión no puede reutilizarse directamente. Lo que --pac-profile sí hace es tomar el entorno y la cuenta de un perfil y iniciar sesión como esa cuenta — normalmente sin que se lo pidan, porque ya tienes una sesión.

Nota

El perfil activo de la CLI nunca cambia. pac auth select No se utiliza deliberadamente: movería todos los proyectos a la vez.

Las herramientas

Rara vez necesitas nombrar una herramienta — los asistentes la eligen de las descripciones — pero ayuda saber qué hay ahí.

Documentación, siempre disponible

Tu entorno, una vez conectado

Poner en marcha un nuevo proyecto

Trabajando en otros idiomas

El conocimiento que el servidor devuelve es inglés, y eso es deliberado. Tu asistente es quien lo lee — nunca ves una respuesta de herramienta directamente — así que se traduce para ti: pregunta en tu propio idioma, y responde en tu idioma. Lo que no debe traducir es el código. Los nombres de componentes, parámetros y columnas son en inglés en todos los proyectos, sea cual sea el idioma en el que esté la conversación, así que mantener la referencia en inglés es lo que impide que un asistente invente un nombre de parámetro traducido que no existe.

Nota

Las preguntas que nombran algo — “MainGrid Ansichten konfigurieren” — ya funcionan en cualquier idioma, porque los nombres de componentes son iguales en todas partes. Las herramientas también indican a tu asistente que busque en inglés, así que las preguntas que no nombran nada también funcionan.

Resolución de problemas