Skip to main content
Glama

Server Details

Provides Vaadin Documentation and help with development tasks

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
vaadin/vaadin-mcp
GitHub Stars
13

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4/5 across 11 of 11 tools scored. Lowest: 3.4/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct aspect of Vaadin documentation: Java API, React API, Web Component API, styling, versions, theming, and search. Even the three component API tools are clearly differentiated by the programming model. No ambiguity.

Naming Consistency5/5

All tool names consistently follow the `get_` prefix followed by a descriptive noun phrase (e.g., `get_component_java_api`, `get_supported_vaadin_versions`). No mixing of conventions.

Tool Count5/5

With 11 tools, the server covers the core documentation needs for Vaadin across multiple dimensions (API types, styling, versions, theming, search) without being bloated. Each tool has a clear purpose.

Completeness4/5

The tool set covers most documentation needs: component APIs (Java, React, Web Component), styling, versions, theming, search, and a primer. Minor gaps exist (e.g., direct release notes or changelog), but search and full document retrieval can compensate.

Available Tools

11 tools
get_component_java_apiGet Component Java APIAInspect

Returns the Java API documentation for a specific Vaadin component. The component name can be in any format (e.g., 'Button', 'button', 'vaadin-button').

ParametersJSON Schema
NameRequiredDescriptionDefault
component_nameYesThe name of the component (e.g., 'Button', 'button', 'TextField', 'text-field')
vaadin_versionYesRequired. Vaadin version: "7", "8", "14", "24", "25.0", "25.1", "25.2", or "25.3".
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden. It adds a useful behavioral detail (component name can be in any format) but does not disclose output format, error behavior, or whether the operation is read-only. The description is not misleading, but lacks depth for a tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, both informative. The first states the purpose, the second clarifies input format. No wasted words, and the key information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, but because there is no output schema and no annotations, the description should explain what the returned documentation looks like. It only says 'documentation', which is vague. However, the purpose and required parameters are sufficiently clear for an agent to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description's mention of component name format is already present in the schema, and it adds no new meaning for vaadin_version. It does not compensate beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Returns') and names the exact resource ('Java API documentation for a specific Vaadin component'). It clearly differentiates from sibling tools like get_component_react_api and get_component_web_component_api by explicitly stating 'Java API'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: use this when you need Java API docs for a specific component. It also clarifies input flexibility (any format for component name). However, it does not explicitly mention alternatives or when not to use it, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_component_react_apiGet Component React APIAInspect

Returns the React API documentation for a specific Vaadin component. The component name can be in any format (e.g., 'Button', 'button', 'vaadin-button').

ParametersJSON Schema
NameRequiredDescriptionDefault
component_nameYesThe name of the component (e.g., 'Button', 'button', 'TextField', 'text-field')
vaadin_versionYesRequired. Vaadin version: "7", "8", "14", "24", "25.0", "25.1", "25.2", or "25.3".
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It adds a useful behavioral trait (component names accepted in any format) but lacks details on return format, error behavior, or version handling, which for a read-only lookup is only partially transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences are front-loaded with the core purpose, followed by a useful note on input flexibility. No extraneous words or redundant details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with no output schema, the description is mostly adequate. However, it does not mention that vaadin_version is required (left to schema) and provides no guidance on when to choose this over sibling tools, leaving moderate gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description reinforces component_name flexibility but adds no new semantics for vaadin_version beyond what the schema already documents via enum and description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Returns') and resource ('React API documentation for a specific Vaadin component'), clearly differentiating it from sibling tools like get_component_java_api and get_component_web_component_api via the 'React' qualifier.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied to be for obtaining React-specific API docs, but no explicit when-to-use or alternatives are mentioned. The flexible naming example is helpful context but does not guide selection among the related component API tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_components_by_versionGet Components by VersionAInspect

Returns a comprehensive list of components available in a specific Vaadin version, including component names, React component names, Java class names, and npm packages.

ParametersJSON Schema
NameRequiredDescriptionDefault
versionYesThe Vaadin version as a minor version (e.g., '24.8', '24.9', '25.0')
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states that the tool 'returns' a list, which implies a read-only operation, but it does not explicitly disclose that it has no side effects or describe error behavior for invalid/unsupported versions. This is a modest disclosure but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence, front-loaded with the core action, and every phrase adds value. It lists exactly what data is returned without any redundant fluff or repetition of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (one parameter, no output schema), the description adequately explains the return value by enumerating the included data types (component names, React component names, Java class names, npm packages). It could be slightly more explicit about potential filters or ordering, but overall it is complete for a simple list-returning tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides 100% coverage of the single 'version' parameter with a clear description and example (e.g., '24.8'). The tool description merely says 'specific Vaadin version' which adds no meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Returns' with the resource 'components available in a specific Vaadin version' and enumerates the exact contents (component names, React names, Java classes, npm packages). This clearly distinguishes it from sibling tools that focus on individual component APIs rather than listing all components.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when one needs an inventory of components for a given Vaadin version, but it does not explicitly mention when not to use it or name alternatives like get_component_java_api or search_vaadin_docs. There is no 'when/when-not' guidance, so it is only minimally adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_component_stylingGet Component StylingAInspect

Returns the styling/theming documentation for a specific Vaadin component. Returns both Java and React styling documentation when available. The component name can be in any format (e.g., 'Button', 'button', 'vaadin-button').

ParametersJSON Schema
NameRequiredDescriptionDefault
component_nameYesThe name of the component (e.g., 'Button', 'button', 'TextField', 'text-field')
vaadin_versionYesRequired. Vaadin version: "7", "8", "14", "24", "25.0", "25.1", "25.2", or "25.3".
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden, and it does disclose that both Java and React docs are returned 'when available' and that component names are flexible. However, it does not mention return format, error behavior, or any side effects, which are not covered elsewhere.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary purpose, and every sentence adds useful information: what it returns, the dual Java/React coverage, and input flexibility. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only lookup tool with two required parameters clearly described in the schema and no output schema, the description is fairly complete. It could mention behavior when docs are unavailable or the required version, but those are partially covered by the schema (required flag).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with good parameter descriptions, so the baseline is 3. The description adds value by explaining that component_name can be in any format (e.g., 'Button', 'button', 'vaadin-button'), which is behavior beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns styling/theming documentation for a specific Vaadin component, with a specific verb ('Returns') and resource ('styling/theming documentation'). It also distinguishes from sibling tools like get_component_java_api and get_component_react_api by mentioning both Java and React styling docs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the use case (when you need styling docs rather than API or web component docs), and the sibling names provide contrast. However, it does not explicitly name alternatives or state when not to use it, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_component_web_component_apiGet Component Web Component (TypeScript) APIAInspect

Returns the Web Component/TypeScript API documentation for a specific Vaadin component by fetching from external TypeScript API docs. The component name can be in any format (e.g., 'Button', 'button', 'vaadin-button').

ParametersJSON Schema
NameRequiredDescriptionDefault
component_nameYesThe name of the component (e.g., 'Button', 'button', 'TextField', 'text-field')
vaadin_versionYesRequired. Vaadin version: "7", "8", "14", "24", "25.0", "25.1", "25.2", or "25.3".
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden of behavioral disclosure. It reveals that data is 'fetched from external TypeScript API docs' and that the component name can be in any format (normalization behavior). However, it does not disclose potential network dependency failures, error handling, or whether any state is modified (though retrieval is clearly read-only).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary action, and contains no fluff. It efficiently communicates the purpose and a key parameter flexibility without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 2-parameter retrieval tool with full schema coverage, the description is nearly complete. It explains the external source and name flexibility. The only minor gap is not explicitly noting that an external network connection is required, but the phrase 'fetching from external TypeScript API docs' implies this. Overall, combined with the schema, it is contextually sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for both parameters, including examples for component_name and an enum with descriptions for vaadin_version. The description adds 'The component name can be in any format', but this is already demonstrated by the schema's examples, so it adds minimal additional meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action: 'Returns the Web Component/TypeScript API documentation for a specific Vaadin component'. It specifies both the resource (Web Component/TypeScript API documentation) and the scope (specific Vaadin component), and the 'Web Component/TypeScript' qualifier distinguishes it from sibling tools like get_component_java_api and get_component_react_api.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for TypeScript/Web Component API retrieval, and the sibling tool names suggest alternatives. However, there is no explicit guidance on when to use this tool versus the Java/React API tools, or any exclusions. The context is clear but not elaborated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_documentGet Full DocumentAInspect

Retrieves complete documentation pages for one or more file paths. Use this when you need full context beyond what search results provide. Provide file_paths only (array).

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathsYesArray of file paths from search results. Use this to fetch one or more documents in a single call.
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden for behavioral disclosure. It implies a read-only retrieval operation and notes the parameter constraint, but it does not describe the return format, potential limitations, or any side effects. The phrase 'complete documentation pages' adds some context but remains vague.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, with two sentences that front-load the core action and immediately follow with usage guidance. Every phrase earns its place—the 'Provide file_paths only' is a clear, purposeful directive.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity tool with one parameter and no output schema, the description sufficiently covers purpose, usage, and parameter constraints. It does not explain the return structure, but the straightforward retrieval nature and high schema coverage make the description complete enough for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100% for the single parameter, thoroughly explaining that file_paths is an array of paths from search results. The description merely repeats the parameter name and type, adding no additional semantic value beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves complete documentation pages for one or more file paths, using a specific verb and resource. It distinguishes itself from sibling tools that focus on specific component APIs or versions by emphasizing 'full context' beyond search results.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says to use this tool when needing full context beyond search results, providing clear context for when it applies. However, it does not explicitly name alternative tools or state when not to use it, which would elevate it to a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_latest_vaadin_versionGet Latest Vaadin VersionAInspect

Returns the latest stable version of Vaadin as a simple JSON object. This is useful when setting up new projects, checking for updates, or when helping with dependency management. Returns: {version, released}.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It explicitly states the return format: {version, released} and describes it as a 'simple JSON object.' This is transparent and sufficient for a read-only, parameterless tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core purpose, followed by usage context and return format. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has no parameters, no output schema, and no annotations. The description is complete: it states what it does, when to use it, and the exact return shape. No gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, so the baseline is 4. The description adds the return structure, which is the only meaningful semantic. No parameter explanations are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Returns the latest stable version of Vaadin as a simple JSON object.' This is specific and distinguishes it from sibling tools about components or supported versions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear usage contexts: 'useful when setting up new projects, checking for updates, or when helping with dependency management.' It does not explicitly mention alternatives or when not to use it, but the context is adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_supported_vaadin_versionsGet Supported Vaadin VersionsAInspect

Returns the latest stable release for each supported Vaadin major version (25, 24, 23, 14, 8, 7) with version number, release date, and whether it requires a commercial license. Useful for migration planning and understanding which versions are available.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It transparently explains the output: latest stable release for each major version, including version number, release date, and commercial license flag. It also explicitly lists which versions are included. This is sufficient for a read-only, parameterless tool, though it doesn't mention any potential error conditions or response format details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded: the first sentence immediately states what the tool does and what it returns, while the second sentence adds a practical use case. Every word earns its place, with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple parameterless tool without an output schema, the description is quite complete. It enumerates the supported versions and the fields returned, which covers the key aspects an agent needs to know. It might be slightly improved by stating the exact output format (e.g., JSON array), but the current description is adequate for the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description doesn't need to add parameter semantics since the input schema is empty. The description focuses entirely on the output, which is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns the latest stable release for each supported Vaadin major version, listing the exact versions (25, 24, 23, 14, 8, 7). It specifies the output fields (version number, release date, commercial license requirement), which distinguishes it from sibling tools like get_latest_vaadin_version.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage context by noting it is 'useful for migration planning and understanding which versions are available.' However, it does not explicitly mention alternatives or when-not-to-use scenarios, though the context implies this tool is for getting the full set of supported versions rather than a single one.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_theme_css_propertiesGet Theme CSS PropertiesAInspect

Returns CSS custom properties documentation for a specific Vaadin theme (Aura, Lumo, or Base styles). Use this to look up the correct CSS variables for the theme the application is using. Base style properties (--vaadin-*) are available in all themes.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeYesThe theme to get CSS custom properties for: "aura" (Vaadin 25+ default), "lumo" (classic theme), or "base" (base styles available in all themes, Vaadin 25+ only).
vaadin_versionYesRequired. Vaadin version: "7", "8", "14", "24", "25.0", "25.1", "25.2", or "25.3".
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden of behavioral disclosure. The verb 'Returns' implies a read-only operation, and the note about base properties being available in all themes adds useful context. However, it lacks explicit statements about auth requirements, error conditions, or the structure of the returned documentation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the main action, and contains no filler. Both sentences contribute meaningful information, making it compact and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple lookup tool with two well-described parameters and no output schema, the description is mostly complete. It states what is returned, when to use it, and the availability of base properties. The only minor gap is not describing the exact format of the returned CSS property list, but this is not critical for a straightforward lookup.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides 100% coverage with enum descriptions for both parameters. The description adds value beyond the schema by explaining that base properties (--vaadin-*) are available in all themes, which clarifies the meaning of the 'base' theme option. This extra context justifies an above-baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns CSS custom properties documentation for a specific Vaadin theme, naming Aura, Lumo, and Base styles. This specific verb-resource pairing distinguishes it from sibling tools like get_component_styling, which focus on component-level styling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says to use this tool to look up correct CSS variables for the application's theme, providing clear context for when to invoke it. It does not mention exclusions or alternatives, but the defined use case is sufficient for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_vaadin_primerVaadin PrimerAInspect

IMPORTANT: Always use this tool FIRST before working with Vaadin. Returns a comprehensive primer document with current (2025+) information about modern Vaadin development. This addresses common AI misconceptions about Vaadin and provides up-to-date information about Java vs React development models, project structure, components, and best practices. Essential reading to avoid outdated assumptions. For legacy versions (7, 8, 14), returns guidance on version-specific resources.

ParametersJSON Schema
NameRequiredDescriptionDefault
vaadin_versionYesRequired. Vaadin version: "7", "8", "14", "24", "25.0", "25.1", "25.2", or "25.3". For legacy versions (7, 8, 14), returns guidance on version-specific resources.
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses that the tool returns a primer and varies output by version, but it doesn't specify whether the operation is read-only, response format, or potential side effects. This is adequate but not comprehensive for a no-annotation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with an important instruction and is concise overall. However, there is some redundancy (e.g., 'current (2025+)' and 'up-to-date', 'Essential reading to avoid outdated assumptions' reiterating earlier points), which prevents a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple nature of the tool (one parameter, no output schema), the description covers purpose, usage, and version-specific behavior. It lists content topics and emphasizes when to use it. It lacks explicit mention of return format but is sufficiently complete for a simple primer tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides 100% coverage for the single parameter 'vaadin_version', including its enum values and version-specific behavior. The description merely repeats the legacy-version note from the schema, adding no new meaning beyond what the schema provides. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Returns a comprehensive primer document with current (2025+) information about modern Vaadin development.' It uses a specific verb ('Returns') and resource ('primer document'), and distinguishes itself from sibling tools by emphasizing it should be used 'FIRST before working with Vaadin'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs when to use: 'Always use this tool FIRST before working with Vaadin.' It also contextualizes usage with 'Essential reading to avoid outdated assumptions' and specifies behavior for legacy versions. However, it does not explicitly mention alternatives or when not to use it, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_vaadin_docsSearch Vaadin DocumentationAInspect

Search Vaadin documentation for relevant information about Vaadin development, components, and best practices. Uses hybrid semantic + keyword search. USE THIS TOOL for questions about: Vaadin components (Button, Grid, Dialog, etc.), TestBench, UI testing, unit testing, integration testing, @BrowserCallable, Binder, DataProvider, validation, styling, theming, security, Push, Collaboration Engine, PWA, production builds, Docker, deployment, performance, and any Vaadin-specific topics. When using this tool, try to deduce the correct development model from context: use "java" for Java-based views, "react" for React-based views, or "common" for both. Use get_full_document with file_paths containing the result's file_path when you need complete context.

ParametersJSON Schema
NameRequiredDescriptionDefault
questionYesThe search query or question about Vaadin. Will be used to query a vector database with hybrid search (semantic + keyword).
max_tokensNoMaximum number of tokens to return (default: 1500)
max_resultsNoMaximum number of results to return (default: 5)
ui_languageNoThe UI implementation language: "java" for Java-based views, "react" for React-based views, or "common" for both. If not specified, the agent should try to deduce the correct language from context or asking the user for clarification.
vaadin_versionYesRequired. Vaadin version: "7", "8", "14", "24", "25.0", "25.1", "25.2", or "25.3".
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavioral disclosure. It reveals the hybrid semantic + keyword search mechanism, implies the result structure by referencing 'file_path', and gives guidance on deducing the development model. It does not describe pagination, rate limits, or exact response format, but it provides enough behavioral context for a read-only search operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: a concise purpose statement followed by an explicit topic list, then actionable usage guidance. The topic list is long but directly relevant for helping an agent decide when to use the tool. No repetitive or filler content; front-loads the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is moderately complex with 5 parameters and no output schema. The description compensates by explaining the search strategy, hinting at result fields (file_path), and providing integration with get_full_document for full context. It does not detail result ranking or snippet content, but it gives sufficient information for an agent to invoke the tool and interpret results in context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter already documented in the input schema. The description adds limited extra meaning by reinforcing the ui_language parameter's role ('use java for Java-based views, react for React-based views, or common for both'), but it does not explain max_tokens or max_results beyond the schema. Since the schema handles the semantics, the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Search Vaadin documentation for relevant information about Vaadin development, components, and best practices.' It uses a specific verb ('Search') and resource ('Vaadin documentation'), enumerates topics, and distinguishes itself from sibling tools like get_component_java_api which target specific API details rather than broad search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use guidance with a detailed topic list ('USE THIS TOOL for questions about: Vaadin components... any Vaadin-specific topics') and instructs to use get_full_document when more context is needed. However, it does not explicitly state when to prefer sibling tools like get_component_java_api for focused API lookups, so it lacks a full when-not comparison.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    Provides instant access to 700+ programming documentation sources and creates isolated Docker containers for safe code testing and experimentation. Combines comprehensive documentation lookup with containerized development environments for enhanced development workflows.
    AGPL 3.0
  • A
    license
    A
    quality
    C
    maintenance
    Provides programmatic access to Material Web documentation and components for AI agents, enabling documentation search, template generation, and HTML validation.
    7
    16
    1
    MIT
  • A
    license
    -
    quality
    -
    maintenance
    Provides unified ABAP and RAP documentation search, document retrieval, and ABAP feature matrix lookups. It also enables local ABAP linting to streamline development and documentation workflows via the Model Context Protocol.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.