Claude Code Policy: Write Managed Settings Fast
Read More
Enterprise Connectors
webforJ logo. webforJ MCP server connector.

webforJ MCP Server

WebforJ's MCP server, provides tools, resources, prompts for scaffolding and developing webforJ apps

ToolsTools
9
Last updatedLast Updated
Jun 14, 2026
CategoryCategory
All
Enterprise-grade security
SSO & authentication ready
Full governance & audit logs

What is the webforJ MCP Server?

The webforJ MCP server gives AI agents structured, permission-aware access to webforJ through the Model Context Protocol. With 9 pre-built actions, agents can read, create, and update webforJ data on behalf of authorized users.

Willow ships the webforJ MCP server as part of an enterprise control plane. Every call runs behind SSO (Okta, Azure AD), enforces RBAC and least-privilege at runtime, writes to a full audit trail, and integrates with Splunk and Loki for SIEM visibility. Connect from Claude Desktop, Claude Code, Cursor, ChatGPT, VS Code, n8n, or any custom agent. Install once, distribute org-wide, and see exactly how webforJ is being used by every AI agent in your stack.

Tools

Tool

get_versions

Report the webforJ versions this server knows about. Returns the latest stable release, the current in-development SNAPSHOT (from the main-branch pom.xml), and an array of every major with its highest observed tag plus a `status` flag: "development" (the active SNAPSHOT line — actively changing), "stable" (the latest released major — may still receive minor/patch bugfixes), or "frozen" (older released majors — no new releases will be cut). Each major also carries `dataAvailable` indicating whether the DWC styling tools can answer questions about it. Call this FIRST when you do not know what version the user is on or which version to target — never guess.
Tool

create_project

Returns the Maven archetype command that scaffolds a new webforJ project, plus the follow-up commands to change into the generated directory and start the dev server. Relay the Maven command to the user via the host shell tool without modifying its arguments. Set showOptions=true to list available archetypes and the startforJ web generator instead of producing a command.
Tool

get_document

Return the full content of an indexed webforJ documentation or sample file. Use this as a follow-up to search_knowledge_base when a search result excerpt is not enough and you need the complete page — migration guides, tutorials, long API docs. Pass the documentId from a search result.
Tool

search_knowledge_base

Search webforJ documentation, JavaDoc, and code samples for any class, method, annotation, or component, and for CSS styling concepts and rules (palette semantics, seed vs h/s, :not([theme]) pattern, dark mode, ::part limits, table styling). Returns matching snippets with titles, categories, and relevance scores. Call this before claiming any webforJ API exists. For exact --dwc-* custom property or ::part() names on a specific component, use styles_get_component instead; to verify tokens in generated CSS, use styles_validate_tokens. Pass category to narrow the search; if the category is unknown the tool errors with a ranked list of similar names plus the full set of valid categories, so you can retry. In a webforJ project the deliverable is Java (or the Kotlin DSL) using webforJ classes; search for the dedicated webforJ component before falling back to React, JSX, or hand-built HTML.
Tool

styles_get_component

Return the real CSS styling surface of a DWC web component: CSS custom properties, shadow parts, reflected attributes, and slots. Accepts a DWC tag ("dwc-button") or a webforJ Java class name ("Button", "TextField"). Use mode="list" for every valid tag, mode="map" for Java -> tag mappings. Call this before writing CSS for a component so you never guess a var or part name. Prefer a typed Java setter on the component over CSS when both can produce the same result.
Tool

styles_list_tokens

Return the authoritative list of global --dwc-* tokens (palette seeds, color shades, surfaces, spacing, typography, borders, etc.). Use this for any "which tokens are available for X" question — DO NOT ask the knowledge base to list tokens; it returns prose and the answer will be hallucinated. Filter with "prefix" (e.g. "--dwc-color-primary-") or "contains" (e.g. "seed") to narrow the result. For component-scoped CSS vars like --dwc-button-* use styles_get_component instead. The returned list is verbatim and complete for the filter you passed — do not add, rename, complete, or explain "implied" tokens, and do not reference tokens from other webforJ versions. If a token you expect is missing from the response, it does not exist for that version. Tokens that share a description are returned in a single entry where "names" is the list of every token that has that description; treat each name as a real, independently usable token. When writing CSS, use a token instead of hardcoding colors, spacing, or font sizes.
Tool

styles_validate_tokens

Validate every --dwc-* reference in CSS, Java, MDX, or Markdown text against the real DWC global tokens and component CSS variables. Returns the list of invalid tokens with line numbers and ranked similar-name suggestions. Run this on any generated or edited stylesheet before writing it to disk.
Tool

fqcn_validate

Validate fully qualified class names against the catalog of types declared in webforJ source for the target version. Accepts either an explicit list of FQCNs or a Java snippet (the handler extracts its import statements). Returns unknown FQCNs with ranked similar-name suggestions. FQCNs outside the webforJ package family are not validated. Run this on any generated or edited Java before writing it to disk.
Tool

create_theme

Generate a webforJ theme from a primary HSL color. Returns two content blocks: a JSON summary with theme metadata, @AppTheme / @StyleSheet snippets, and recommended file paths, plus a second text block prefixed "CSS_CONTENT:" containing the full stylesheet.
Customize tools

Customize Tools

Edit descriptions, modify arguments, select tools, or add new ones

ReviewEdit descriptions
ConfigureChange arguments
ApproveSelect tools
Create NewAdd tool

Set Up Your webforJ MCP Server in Minutes

Add the following configuration to your MCP client. Authentication is handled via OAuth. Compatible with Claude Desktop, Claude Code, Cursor, ChatGPT, VS Code, n8n, and any MCP-compatible agent.

Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "willow-webforj": {
      "type": "http",
      "url": "https://<org>.mcp-s.com/mcp/mcp/webforj"
    }
  }
}

Cursor

.cursor/mcp.json
{
  "mcpServers": {
    "willow-webforj": {
      "type": "http",
      "url": "https://<org>.mcp-s.com/mcp/mcp/webforj"
    }
  }
}

Claude Code

CLI
claude mcp add willow-webforj --transport http https://<org>.mcp-s.com/mcp/mcp/webforj

n8n

HTTP Request Node
{
  "url": "https://<org>.mcp-s.com/mcp/mcp/webforj",
  "method": "POST"
}

Or click "Install with Willow" above to set up automatically with SSO and RBAC preconfigured.

Enterprise Governance for webforJ

Willow adds the layer webforJ and every other SaaS doesn't ship out of the box: every call runs behind SSO (Okta, Azure AD), enforces RBAC and least-privilege at runtime, writes to full audit logs, and detects shadow AI usage across your stack. One MCP gateway. Any agent. Every tool.

webforJ MCP Server FAQ

What is the webforJ MCP server?

The webforJ MCP server is a Model Context Protocol implementation that lets AI agents like Claude, Cursor, and ChatGPT read and write webforJ data through a standardized interface. Willow hosts and governs this server so enterprises can roll it out without a security review backlog.

How is Willow's webforJ MCP server different from the official one?

The official webforJ MCP server is scoped to a single user's account and does not include enterprise governance. Willow's version adds SSO, RBAC, audit logging, shadow AI detection, and centralized control over which actions agents can take across the entire org.

Which AI clients work with the webforJ MCP server?

Claude Desktop, Claude Code, Cursor, ChatGPT, VS Code with MCP support, n8n, and any custom agent built with OpenAI Agents SDK, LangChain, Vercel AI SDK, or Anthropic SDK.

Is the webforJ MCP server secure? How does Willow handle authentication?

Every call runs behind your existing SSO (Okta, Azure AD). Per-user OAuth scopes the agent to exactly what that user can do in webforJ, nothing more. No credentials reach the LLM. Every action writes to an audit trail.

Can I limit which webforJ actions agents can take?

Yes. Willow lets you scope agents to specific actions, specific projects, or specific environments. Toggle actions on or off in the dashboard, or enforce policy via infrastructure-as-code through GitHub.

How do I detect shadow webforJ MCP servers in my org?

Willow's browser extension and discovery service surface unmanaged MCP servers, skills, and AI agents across the org. If a developer installed an unapproved webforJ MCP locally, you'll see it.

What does the webforJ MCP server cost?

Pricing depends on org size and deployment model (SaaS, dedicated cloud, self-host). See withwillow.ai/pricing or contact sales for a quote.

How do I install the webforJ MCP server with Willow?

Install via the Willow Connect Panel in one click, or paste the JSON snippet above into your Claude Desktop, Cursor, or Claude Code config. SSO and RBAC inherit from your existing Willow setup.

Compare Willow MCP Gateway

See how Willow stacks up against other MCP platforms on governance, security, and enterprise readiness.

Your agents are already in the wild.

Give them a Basecamp. Go from AI chaos to AI work, in minutes.

webforJ MCP Server | Willow