The Vaadin Model Context Protocol (MCP) server provides AI coding assistants with direct access to comprehensive Vaadin documentation, enabling intelligent code assistance for Vaadin Java and React applications.
Click on your AI coding tool to expand setup instructions:
Add the Vaadin MCP server to your project or global configuration.
{
  "mcpServers": {
    "vaadin": {
      "type": "http",
      "url": "https://mcp.vaadin.com/docs"
    }
  }
}
          File locations:
.mcp.json (in project root)~/.claude.jsonNote: Restart Claude Code after making configuration changes.
Add the Vaadin MCP server to your project or global configuration.
{
  "mcpServers": {
    "vaadin": {
      "type": "http",
      "url": "https://mcp.vaadin.com/docs"
    }
  }
}
          File locations:
.cursor/mcp.json~/.cursor/mcp.jsonNote: Restart Cursor after making configuration changes.
Add the Vaadin MCP server through Windsurf Settings (bottom right) or Cmd+Shift+P → "Open Windsurf Settings".
{
  "mcpServers": {
    "vaadin": {
      "type": "http",
      "url": "https://mcp.vaadin.com/docs"
    }
  }
}
          Note: Click the Hammer icon on the Cascade toolbar to view connected MCP tools.
Junie only supports stdio-based MCP servers. Use @pyroprompts/mcp-stdio-to-streamable-http-adapter to bridge stdio to the HTTP-based Vaadin MCP server.
Ctrl+Alt+S (Windows/Linux) or Cmd+, (macOS){
  "mcpServers": {
    "vaadin": {
      "command": "npx",
      "args": ["@pyroprompts/mcp-stdio-to-streamable-http-adapter"],
      "env": {
        "URI": "https://mcp.vaadin.com/docs",
        "MCP_NAME": "vaadin"
      }
    }
  }
}
          Note: The adapter uses environment variables to configure the connection. URI points to the Vaadin MCP server endpoint, and MCP_NAME is an identifier for the server.
File locations:
.junie/mcp/mcp.json~/.junie/mcp.json⚠️ Important: MCP servers only work when GitHub Copilot is used in Agent mode. Regular Copilot Chat does not support MCP.
Agent mode with MCP support is now in public preview for JetBrains IDEs (as of May 2025).
.copilot/mcp-config.json in your project root (JetBrains IDEs use the same format as VS Code){
  "servers": {
    "vaadin": {
      "url": "https://mcp.vaadin.com/docs"
    }
  }
}
          Known Issue: Some users report that tools may not appear if MCP servers are configured after the IDE has started. For best results, create the mcp-config.json file before starting your IDE.
Enterprise Note: Organizations with Copilot Business or Enterprise must enable the "MCP servers in Copilot" policy (disabled by default).
Learn more:
⚠️ Important: MCP servers only work when GitHub Copilot is used in Agent mode. Regular Copilot Chat does not support MCP.
Requires VS Code 1.99 or later.
.vscode/mcp.json in your project root{
  "servers": {
    "vaadin": {
      "type": "http",
      "url": "https://mcp.vaadin.com/docs"
    }
  }
}
          Enterprise Note: Organizations with Copilot Business or Enterprise must enable the "MCP servers in Copilot" policy (disabled by default).
Learn more:
Add the Vaadin MCP server to your Codex configuration. Works with both Codex CLI and IDE extension.
~/.codex/config.toml[mcp_servers.vaadin] url = "https://mcp.vaadin.com/docs"
Version Requirement: HTTP-based MCP servers require Codex CLI version 0.43 or later. If you see "missing field command" errors, upgrade with: npm install -g @openai/codex@latest
Learn more:
Add the Vaadin MCP server to your Gemini CLI configuration. Gemini will automatically use Vaadin documentation tools when relevant.
~/.gemini/settings.json{
  "mcpServers": {
    "vaadin": {
      "httpUrl": "https://mcp.vaadin.com/docs"
    }
  }
}
          Note: Gemini CLI will automatically invoke Vaadin tools when you ask questions about Vaadin development (e.g., "What is a TestBench UI unit test?").
Learn more:
The Vaadin MCP server can be used with any MCP-compatible client. Choose the appropriate configuration based on your tool's transport support:
Simply point it to our HTTP endpoint:
https://mcp.vaadin.com/docs
The exact configuration format depends on your specific tool. Look for settings like "MCP Server URL", "HTTP transport", or "Streamable HTTP" in your tool's documentation.
Use an HTTP adapter to bridge stdio to HTTP. This works with any stdio-based MCP client:
{
  "mcpServers": {
    "vaadin": {
      "command": "npx",
      "args": ["@pyroprompts/mcp-stdio-to-streamable-http-adapter"],
      "env": {
        "URI": "https://mcp.vaadin.com/docs",
        "MCP_NAME": "vaadin"
      }
    }
  }
}
          Adapt the JSON structure to match your tool's configuration format. The adapter uses environment variables: URI for the server endpoint and MCP_NAME as an identifier.
Important: The Vaadin MCP server uses HTTP transport (streamable-http). This is natively supported by Claude Code, Cursor, and Windsurf. For stdio-only tools like Junie, you can use @pyroprompts/mcp-stdio-to-streamable-http-adapter as a bridge between the two transport types.
GitHub Repository:
https://github.com/vaadin/vaadin-mcp
View source code, report issues, and contribute to the project.
Model Context Protocol:
https://modelcontextprotocol.io
Learn more about the Model Context Protocol standard.