Skip to directory

webforJ MCP

webforJ (BASIS International)

Streamable HTTP9+ documented tools1

About webforJ MCP

A hosted MCP server for webforJ framework documentation, Java APIs and samples, Kotlin DSL, project scaffolding, DWC component styling metadata, design-token validation, and theme generation.

What you can use it for

  • Find current webforJ documentation, JavaDoc, Kotlin DSL, and code samples.
  • Scaffold webforJ Java/Spring projects using official Maven archetypes.
  • Inspect DWC component styling surfaces and validate design-token usage.
  • Validate Java class names and generate a DWC theme.
Connection and setup
Hosting
remote
Transport
Streamable HTTP
Endpoint
https://mcp.webforj.com/mcp
Authentication
No authentication was required for the documented public endpoint; a direct unauthenticated MCP initialize/tools-list request succeeded.

Requirements

  • An MCP-compatible client supporting Streamable HTTP.
  • For version-specific styling or Java class validation, know the webforJ version from the project pom.xml; the server's get_versions tool can list supported catalog versions.

Setup steps

  1. Add the remote server URL https://mcp.webforj.com/mcp in the client.
  2. Codex: configure [mcp_servers.webforj-mcp] with url = "https://mcp.webforj.com/mcp"; the official webforJ plugin marketplace is an alternative and bundles Agent Skills with the MCP server.
  3. Cursor: add {"mcpServers":{"webforj-mcp":{"url":"https://mcp.webforj.com/mcp"}}} in user ~/.cursor/mcp.json or project .cursor/mcp.json.
  4. Claude Code: the webforJ plugin can be installed using claude plugin marketplace add webforj/webforj-ai and claude plugin install webforj@webforj-ai; the plugin includes skills as well as MCP.
  5. For other HTTP MCP clients, use the client's own remote server configuration format with the same URL.
  6. Verify with a harmless catalog lookup, such as asking what webforJ versions are available; for version-dependent styling tools, first inspect pom.xml or ask for the project version.
Tools 9+

Read-only tools/list from https://mcp.webforj.com/mcp returned exactly nine tools on server webforj-mcp v0.0.1. Current repo docs describe this same hosted server; tools cover version lookup, project scaffolding, documentation, CSS styling, Java class validation and theme generation.

  • 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.

    Parameters: reasoning
    01
  • 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.

    Parameters: appName, artifactId, groupId, archetype, flavor, version, archetypeVersion, showOptions, reasoning
    02
  • 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.

    Parameters: id, reasoning
    03
  • 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.

    Parameters: query, limit, categories, type, reasoning
    04
  • 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.

    Parameters: name, mode, webforjVersion, reasoning
    05
  • 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.

    Parameters: prefix, contains, webforjVersion, reasoning
    06
  • 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.

    Parameters: content, webforjVersion, reasoning
    07
  • 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.

    Parameters: imports, content, webforjVersion, reasoning
    08
  • 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.

    Parameters: primaryColor, themeName, infoDegree, tintBaseSaturation, tintScaleFactor, step, detectPrimaryColorCategory, contrastSensitiveLightness, webforjVersion, reasoning
    09

This server’s available tools can vary by account, permissions, or configuration. The list shown is not its full runtime catalog.

Limitations and notes
  • Styling and FQCN validation tools require the target webforJ version; the server instruction says call get_versions first when unknown.
  • The webforJ AI repository/plugin bundles Agent Skills in addition to the MCP server; these are separate installation assets and are not MCP tools.
  • The hosted server is remote and documentation says its URL always serves the latest version; no separate fixed package install is needed.
Source discrepancies
  • Queue publisher was ambiguous (mcp); official webforJ docs and the webforJ GitHub organization establish the intended publisher and exact server.
  • The repository README describes a plugin that bundles skills and the MCP server; this record documents the server only and notes bundled skills separately.
Original sources
  • official mcp docs

    Official webforJ documentation explains server capabilities, endpoint, remote Streamable HTTP setup, supported client classes and prompts.

  • official current server reference

    Current repository README lists the same nine tools for the hosted endpoint.

  • live tools list

    Read-only MCP initialize and tools/list returned server webforj-mcp v0.0.1 and nine exact names, descriptions, and input-property names.

  • publisher organization

    Organization profile describes webforJ framework as BASIS International's framework and contains the official webforj-ai repository.

Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.