VA Form Generation MCP Server

VA Form Generation MCP Server

Provides tools for auditing and fixing scaffolded VA forms to ensure they follow best practices and VA.gov content standards. Enables automated validation, agent prompt generation, and orchestration of form fixes across any vets-website workspace.

Category
Visit Server

README

VA Form Generation MCP Server

External MCP server for VA form generation automation - completely separate from the VA codebase, works with any vets-website workspace.

šŸŽÆ Purpose

This MCP server provides tools and resources for auditing and fixing scaffolded VA forms to ensure they follow 21P-601 best practices and VA.gov content standards.

Key Benefits:

  • āœ… External - Lives outside VA repo, no code review needed
  • āœ… Reusable - Works with ANY vets-website workspace
  • āœ… Team-friendly - Share across your entire team
  • āœ… Version controlled - Track improvements separately

šŸš€ Quick Start

1. Install

cd ~/va-form-generation-mcp
npm install

2. Configure Your Claude Environment

Choose the platform(s) you use:

šŸ–„ļø Claude Desktop

Add to your ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "va-form-generation": {
      "command": "node",
      "args": [
        "/Users/YOUR_USERNAME/va-form-generation-mcp/index.js"
      ]
    }
  }
}

Replace YOUR_USERNAME with your actual username!

Then restart Claude Desktop - the MCP server will automatically connect.


šŸ’» Claude Code (VS Code Extension)

Create or update .mcp.json in your vets-website workspace root:

{
  "mcpServers": {
    "va-form-generation": {
      "command": "node",
      "args": ["/Users/YOUR_USERNAME/va-form-generation-mcp/index.js"]
    }
  }
}

Also update .claude/settings.local.json to enable the MCP server:

{
  "permissions": {
    "allow": [
      "Read(//Users/YOUR_USERNAME/va-form-generation-mcp/**)"
    ]
  },
  "enableAllProjectMcpServers": true
}

Then reload your VS Code window - Claude Code will detect and load the MCP server.


šŸ” Cursor (Claude Code in Cursor)

Same as Claude Code above - create .mcp.json in your workspace root and update .claude/settings.local.json.

Then reload Cursor to activate the MCP server.


šŸ’¬ ChatGPT

ChatGPT does not currently support MCP servers. However, you can:

  1. Copy the templates from ~/va-form-generation-mcp/templates/
  2. Paste them directly into ChatGPT conversations
  3. Or use GPT Actions (requires custom GPT with API access)

3. Verify Setup

In Claude Desktop, Claude Code, or Cursor:

Show me all available tools from the va-form-generation MCP server

You should see 5 tools listed.

4. Use It!

Use the va-form-generation MCP server to audit form 21p-0516 in /Users/aponce/Workspaces/vets-website

šŸ› ļø Available Tools

audit_form

Generate comprehensive audit report for a scaffolded form.

Usage:

Audit form 21p-0516 using the MCP server
Workspace: /Users/aponce/Workspaces/vets-website

Returns:

  • Form information
  • Agent execution plan
  • Expected fixes
  • Quick start commands

get_agent_prompt

Get customized prompt for a specific agent (1-4).

Usage:

Get Agent 2 prompt for form 21p-0516

Returns:

  • Specialized prompt for that agent
  • Customized with form-specific paths
  • Ready to execute

validate_form

Run validation checks (schema, syntax, apostrophes, imports).

Usage:

Validate form at /path/to/form checking schema and apostrophes

Returns:

  • Bash commands to run validation
  • Expected issues to find

get_fix_reference

Get quick reference for common fixes.

Usage:

Show me the yesNoUI fix reference

Options:

  • yesNoUI - How to fix yesNoUI patterns
  • radioSchema - How to fix radioSchema calls
  • apostrophes - How to fix apostrophe syntax
  • transformers - How to fix submit/prefill transformers
  • fullNamePath - How to add fullNamePath (critical!)
  • all - Show all fixes

generate_orchestration_prompt

Generate the complete orchestration prompt to launch all 4 agents.

Usage:

Generate orchestration prompt for form 21p-0516

Returns:

  • Complete prompt to launch all 4 agents
  • Phase-by-phase execution plan
  • Expected results

šŸ“š Available Resources

checklist://master

Complete master checklist for form generation.

template://agent-1 through template://agent-4

Specialized prompts for each of the 4 agents.

reference://fixes

Before/after examples for all 16 fixes.


šŸŽÆ Typical Workflow

Option 1: Full Automation

Use the va-form-generation MCP server to:
1. Audit form 21p-0516 in /Users/aponce/Workspaces/vets-website
2. Generate the orchestration prompt
3. Execute all 4 agents

Option 2: Step by Step

1. Audit form 21p-0516 using MCP server

2. Get Agent 1 prompt from MCP server

3. Get Agent 2 prompt from MCP server

4. Get Agent 3 prompt from MCP server

5. Get Agent 4 prompt from MCP server

Option 3: Validation Only

Use MCP server to validate form 21p-0516 for all check types

šŸ—ļø Architecture

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│   Claude Desktop / Claude Code      │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
               │ MCP Protocol
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā–¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  VA Form Generation MCP Server      │
│  (External - ~/va-form-generation)  │
│                                     │
│  Tools:                             │
│  āœ“ audit_form                       │
│  āœ“ get_agent_prompt                 │
│  āœ“ validate_form                    │
│  āœ“ get_fix_reference                │
│  āœ“ generate_orchestration_prompt    │
│                                     │
│  Resources:                         │
│  āœ“ Master checklist                 │
│  āœ“ Agent prompts (1-4)              │
│  āœ“ Fix references                   │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
               │ File System Access
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā–¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│     vets-website Workspace          │
│  /Users/aponce/Workspaces/...       │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

šŸ“¦ What Gets Fixed

Component Patterns (6 fixes)

āœ… yesNoUI simplified to yesNoUI('question') āœ… Import paths corrected āœ… radioSchema called with enum values āœ… Duplicate imports removed

Architecture (5 fixes)

āœ… IntroductionPage rewritten āœ… ConfirmationPage uses ConfirmationView āœ… submit-transformer follows 21P-601 āœ… prefill-transformer accesses profile āœ… form.js has fullNamePath

Content (3 fixes)

āœ… Plain language (you/we, contractions) āœ… Person-centered titles āœ… PDF-accurate labels

Syntax (2 fixes)

āœ… Apostrophe errors āœ… Schema validation

Total: 16+ automated fixes


šŸ”§ Development

Run in Dev Mode

npm run dev

Add New Tools

Edit index.js and add to the tools array in ListToolsRequestSchema handler.

Add New Resources

Edit index.js and add to the resources array in ListResourcesRequestSchema handler.

Update Templates

Edit files in templates/ directory.


šŸ“– Examples

Example 1: Quick Audit

I'm working on form 21p-0516. Use the MCP server to audit it and tell me what needs to be fixed.

Workspace: /Users/aponce/Workspaces/vets-website

Example 2: Get Specific Fix

Use the MCP server to show me how to fix the radioSchema pattern

Example 3: Full Automation

Use the MCP server to:
1. Audit form 21p-527ez
2. Generate the orchestration prompt
3. Launch all 4 agents in the correct order

Workspace: /Users/aponce/Workspaces/vets-website

Example 4: Validation

Use the MCP server to validate form 21p-0516 for schema errors and apostrophe syntax

Form path: /Users/aponce/Workspaces/vets-website/src/applications/simple-forms/21p-0516

šŸŽ“ Learn More

  • Master Checklist: templates/master-checklist.md
  • Agent Prompts: templates/agent-{1-4}-prompt.md
  • MCP Protocol: https://modelcontextprotocol.io/

🚢 Sharing with Team

Method 1: Git Repository

cd ~/va-form-generation-mcp
git init
git add .
git commit -m "Initial MCP server"
git remote add origin YOUR_REPO_URL
git push -u origin main

Team members clone and configure:

git clone YOUR_REPO_URL ~/va-form-generation-mcp
cd ~/va-form-generation-mcp
npm install
# Add to claude_desktop_config.json

Method 2: npm Package (Private Registry)

npm publish --registry YOUR_PRIVATE_REGISTRY

Team members install:

npm install -g va-form-generation-mcp --registry YOUR_PRIVATE_REGISTRY

ā“ FAQ

Q: Does this modify the vets-website repo?

A: No! The MCP server lives completely outside the VA repo. It only provides tools and prompts - Claude does the actual modifications.

Q: Can multiple people use this?

A: Yes! Each team member installs it separately and points it to their own vets-website workspace.

Q: What if the VA changes their patterns?

A: Update the templates in this repo. Everyone pulls the updates. No VA PR needed!

Q: Can I customize it?

A: Absolutely! Edit the templates or add new tools specific to your needs.

Q: Does it work with Claude Code in VS Code?

A: Yes! As long as Claude Code supports MCP servers, it will work.


šŸ“ License

MIT


Questions? Open an issue or ask Claude: "Explain the va-form-generation MCP server"

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured