DEV Community

Riccardo Gregori
Riccardo Gregori

Posted on

FormEngineer evolves into... AppMaker!

A few posts ago I introduced Greg.Xrm.Mcp.FormEngineer, my first MCP Server designed to enable conversational, interactive, management of Dataverse forms.

It enabled a few interesting scenarios:

  • ๐Ÿค” Smart reverse-engineering of Dataverse forms: useful whenever you have to document a pre-existing application, or jump in a running project and don't know how to start changing stuff
  • ๐Ÿ’ก Smart form insights: analyzing the form structure, it can provide useful recommendations to improve the user experience.
  • ๐Ÿ“ Form Manipulation: with it, you can simply ask your favorite AI client "Add a section called AAA with all the marketing fields into tab BBB", or "put meaningful, context-specific icons near the tab names for each tab of form XXX", or again "Update the main form of table A in order to replicate a layout similar to the one of table B"

Playing with it, as usual I started been hungry with features...
...Why just be tied to forms? Why can't we just play around with Apps, Sitemaps, and even Views?

That's why FormEngineer, like a Pokemon, evolved into AppMaker!

The new version of my MCP server is now capable of:

  • Creating a Model Driven App from scratch
  • Manipulate the sitemap of an existing app
  • Add/remove app components
  • Analyze and document the structure of apps
  • Create new views and/or update existing views
  • Rename a view
  • Analyze and document the structure of views
  • ...plus all the other features already available in FormEngineer.

AppMaker capabilities

It can be installed as a dotnet tool:

dotnet tool install --global Greg.Xrm.Mcp.AppMaker
Enter fullscreen mode Exit fullscreen mode

Then configured into VSCode or Claude Desktop via:

VSCode (.vscode/mcp.json snippet)

{
    "servers": {
        "AppMaker": {
            "command": "Greg.Xrm.Mcp.AppMaker",
            "args": [
                "--dataverseUrl",
                "https://yourorg.crm.dynamics.com"
            ],
            "cwd": "${workspaceFolder}"
        }
    }
}
Enter fullscreen mode Exit fullscreen mode

Claude Desktop (config fragment)

{
    "mcpServers": {
        "AppMaker": {
            "command": "Greg.Xrm.Mcp.AppMaker",
            "args": [
                "--dataverseUrl",
                "https://yourorg.crm.dynamics.com"
            ],
        }
    }
}
Enter fullscreen mode Exit fullscreen mode

๐Ÿค” How can I use it?

I'm creating a series of YouTube Videos showcasing the capabilities of AppMaker MCP Server, in conjunction with PAC CLI and PACX. You can see them here:

https://www.youtube.com/neronotte

Top comments (0)