Skip to main content
Glama

RevoGrid DataGrid MCP Pro

Server Details

Hosted Pro MCP server for RevoGrid DataGrid docs, examples, feature checks, and migration guidance.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
revolist/revogrid
GitHub Stars
3,392

Available Tools

8 tools
find_examplesFind RevoGrid ExamplesA
Read-onlyIdempotent
Inspect

Use when implementation evidence should be a runnable or registered RevoGrid example, optionally filtered by framework and package.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum examples per page.
queryYesCapability or scenario demonstrated by a runnable example.
cursorNoOpaque cursor returned by the previous page.
productNoRevoGrid product demonstrated by the example.
surfaceNoLegacy catalog surface filter.
versionNoIndexed package version.
frameworkNoPreferred example framework.
packageNameNoExact published npm package name.
requiresProNoFilter by descriptive Pro/license requirement.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsYes
nextCursorNo

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already carry the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), lowering the burden on the description. The description does add one catalog-scoped behavioral trait: results are 'runnable or registered' examples rather than arbitrary matches. It does not disclose pagination behavior via cursor/limit, the meaning of 'registered' versus 'runnable,' or the legacy 'surface' filter, which would have deepened transparency.

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?

A single front-loaded sentence that leads with the invocation condition ('Use when...') and packs the entire semantic scope into roughly 21 words. There is zero filler, and the ordering is ideal: condition first, resource scope second, filters last. Every element earns its place.

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 9-parameter tool, the description is minimal, but the 100%-covered schema and presence of an output schema mean parameters and return values need no description-level documentation. The real gap is semantic calibration: 'runnable or registered' is left undefined, and the description never positions the tool against search_revogrid_docs or plan_revogrid_implementation, so an agent entering fresh from a different workflow must infer where 'implementation evidence' begins and ends.

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% — all nine parameters have descriptions, including enums, defaults, and constraints — so the schema carries the full parameter burden. The description adds only that results are 'optionally filtered by framework and package,' which mildly foregrounds the two primary filters but contributes no meaning beyond what the schema already states. Baseline 3 applies.

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

Purpose4/5

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

The description clearly identifies the resource (RevoGrid examples) and the scoping qualifiers ('runnable or registered,' 'optionally filtered by framework and package'), which sets it apart from siblings like search_revogrid_docs and list_revogrid_capabilities by implication. However, the differentiation is implicit — it never explicitly names the sibling it is not, so an agent must infer the boundary between 'examples' and 'docs' or 'capabilities.'

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 opens with an explicit 'Use when...' construction and states the precise invocation condition: when implementation evidence should be a runnable or registered RevoGrid example. This is a clear, actionable context. It does not, however, provide when-not guidance or name alternatives such as search_revogrid_docs for documentation needs, leaving the exclusion logic to inference.

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

get_migration_notesGet Migration NotesB
Read-onlyIdempotent
Inspect

Get upgrade notes between RevoGrid versions.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameworkNo
toVersionYes
fromVersionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
frameworkNo
toVersionYes
fromVersionYes
packageChangesYes
renamedSymbolsYes
breakingChangesYes
changedDefaultsYes
recommendedDocsYes
recommendedExamplesYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds no extra behavioral context such as output format, pagination, or side effects beyond what the annotations and output schema already provide. It is consistent with annotations, so no contradiction.

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 a single, front-loaded sentence with no filler. It communicates the core operation and resource efficiently, and every word contributes to the meaning.

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?

With annotations and an output schema present, the description does not need to explain return values or safety. However, it lacks contextual guidance for choosing this tool over sibling documentation tools and does not elaborate on the framework parameter, making it minimally adequate rather than complete.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It clarifies that fromVersion and toVersion are version endpoints, but it does not mention the framework parameter at all. The schema's property names and enum cover some meaning, but the description adds minimal value and leaves the optional framework parameter unexplained in prose.

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

Purpose4/5

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

The description states a clear verb and resource: 'Get upgrade notes between RevoGrid versions.' This distinguishes it from sibling tools like inspect_revogrid_api or search_revogrid_docs by focusing specifically on version-to-version migration notes, though it does not explicitly name any sibling for contrast.

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

Usage Guidelines2/5

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

The description gives no explicit guidance on when to use this tool versus alternatives like search_revogrid_docs or resolve_feature_matrix. The intended use is only implied by the phrase 'upgrade notes between versions,' with no exclusions, prerequisites, or comparison to sibling tools.

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

inspect_revogrid_apiInspect RevoGrid APIA
Read-onlyIdempotent
Inspect

Use after discovery to resolve one exact symbol or capability. Returns ambiguity candidates instead of guessing and includes its supported import and evidence.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesExact capability, symbol, alias, or package#symbol qualified name.
versionNoExact indexed package version.
frameworkNoRequired consumer framework compatibility.
packageNameNoExact package owner used to disambiguate a symbol.
includeInternalNoOpt in to unsupported implementation internals; public exports remain preferred.

Output Schema

ParametersJSON Schema
NameRequiredDescription
matchNo
statusYes
candidatesYes
correctionNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already establish this as a read-only, idempotent, non-destructive operation, so the description does not need to repeat that. The description adds valuable behavioral detail: it returns ambiguity candidates rather than guessing, and includes supported import and evidence. This goes beyond the annotations and helps the agent understand the tool's decision-making behavior.

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 compact and front-loaded with the most important usage constraint, 'Use after discovery.' Every sentence adds value: the first defines the action, the second describes key behavioral guarantees. There is no filler or 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?

Given the output schema, annotations, and fully documented parameters, the description is largely complete for an inspection/resolution tool. It explains when to use it and what behavior to expect. It could slightly improve by explicitly contrasting with search_revogrid_docs or list_revogrid_capabilities, but this is not a significant gap given the context signals.

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 parameters are already well documented in the schema. The description reinforces that the query targets an exact symbol or capability, but does not add substantial meaning beyond the schema. A baseline score of 3 is appropriate since the schema carries the parameter documentation burden.

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 a specific action: resolving one exact symbol or capability, rather than broadly inspecting the API. It also distinguishes itself from sibling discovery/search tools by noting it returns ambiguity candidates instead of guessing. The phrase 'Use after discovery' positions the tool precisely within a workflow.

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 gives clear contextual guidance: use it after discovery and for resolving one exact symbol or capability. It does not explicitly name alternatives or state when not to use it, but the context and sibling tool names make the intended usage reasonably clear. This is strong but not fully explicit about exclusions.

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

list_revogrid_capabilitiesList RevoGrid CapabilitiesA
Read-onlyIdempotent
Inspect

Start here to discover supported public capabilities and package ownership. Returns compact paginated summaries linked to detailed resources.

ParametersJSON Schema
NameRequiredDescriptionDefault
tierNoCore, Pro, or Enterprise package tier.
limitNoMaximum compact capability summaries per page.
cursorNoOpaque cursor returned by the previous page.
productNoRestrict capability ownership to one product.
versionNoExact indexed package version.
frameworkNoConsumer framework the capability must support.
stabilityNoStable, experimental, or deprecated capability status.
packageNameNoExact published npm package name.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsYes
nextCursorNo

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds modest context about returning compact paginated summaries linked to detailed resources, but it does not disclose much beyond that; no contradiction with annotations exists.

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 short sentences with no wasted content. The key entry-point signal 'Start here' is front-loaded, and every phrase adds value.

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 has a fully documented input schema, an output schema, rich annotations, and no required parameters. The description provides sufficient entry-point framing and output expectations without needing to repeat structured information already present.

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 all eight parameters already have descriptions in the schema. The tool description adds no parameter-specific semantics, 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 a specific verb ('discover') and names a concrete resource ('supported public capabilities and package ownership'). It also states the output shape ('compact paginated summaries linked to detailed resources'), making it clearly distinguishable from siblings like search_revogrid_docs or inspect_revogrid_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?

'Start here' gives an explicit entry-point instruction, which is useful for an agent deciding where to begin. However, it does not name alternative sibling tools or state when those alternatives should be preferred, so exclusion guidance is absent.

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

plan_revogrid_implementationPlan RevoGrid ImplementationA
Read-onlyIdempotent
Inspect

Use after resolving capability names to compose a deterministic package, plugin-order, configuration, lifecycle, and compatibility blueprint.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameworkNoConsumer application framework.vanilla
objectiveYesConcrete data-grid behavior to implement.
constraintsNoArchitecture, licensing, performance, or compatibility constraints.
capabilitiesNoCompatibility alias for requiredCapabilities.
targetVersionsNoDesired versions keyed by npm package name.
installedVersionsNoCurrently installed versions keyed by npm package name.
requiredCapabilitiesNoExact capabilities or aliases required by the objective.

Output Schema

ParametersJSON Schema
NameRequiredDescription
eventsYes
importsYes
methodsYes
dataFlowYes
evidenceYes
packagesYes
warningsYes
frameworkYes
lifecycleYes
objectiveYes
unresolvedYes
constraintsYes
pluginOrderYes
configurationYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the 'deterministic' nature of the blueprint, which is mildly useful context, but it does not disclose side effects, permissions, failure modes, or other behavioral traits beyond what annotations provide.

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 a single front-loaded sentence with no wasted words. It states the precondition ('Use after resolving capability names') before the output deliverable, and every phrase contributes to purpose or usage.

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 tool's complexity, the description is minimal, but the rich schema and output schema carry the detailed parameter and return-structure information. The main missing element is an explicit tie to sibling tools for routing, though the precondition 'after resolving capability names' partially compensates by signaling the correct workflow position.

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 schema documents all 7 parameters. The description only gives a high-level sense that parameters feed into 'package, plugin-order, configuration, lifecycle, and compatibility' blueprint categories, but it does not add parameter-level meaning 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 names a specific action ('compose') and a concrete deliverable: 'a deterministic package, plugin-order, configuration, lifecycle, and compatibility blueprint.' This clearly distinguishes the tool from siblings that inspect, search, resolve, or validate. The phrase 'Use after resolving capability names' also anchors its role in the workflow.

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 provides a clear precondition and usage context: use only after capability names have been resolved, which points to resolution-stage sibling tools. However, it does not explicitly name alternatives or state when not to use this tool, so it lacks the full when/when-not routing that would earn a 5.

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

resolve_feature_matrixResolve RevoGrid FeatureB
Read-onlyIdempotent
Inspect

Resolve whether a RevoGrid feature exists, whether it is Pro, and where to learn it.

ParametersJSON Schema
NameRequiredDescriptionDefault
versionNo
frameworkNo
featureNameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
notesYes
bestDocsYes
stabilityNo
supportedYes
featureNameYes
requiresProYes
bestExamplesYes
fallbackApproachNo
supportedFrameworksYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds context by specifying the resolution outputs, but it does not disclose details such as the data source or whether the resolution is static. No contradiction with 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?

The description is a single, front-loaded sentence with no filler. It states the action and the three key outcomes clearly, making every word carry meaning.

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 output schema and annotations cover the return shape and safety profile, which reduces the burden on the description. However, the description does not explain how the optional version and framework parameters influence the lookup, nor does it position the tool against its seven siblings. Adequate but not fully complete.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It implies that featureName is the core parameter, but it gives no explanation of how version or framework affect the feature matrix resolution. The agent is left to infer their meaning from the schema's enum and optionality.

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

Purpose4/5

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

The description uses a specific verb ('Resolve') and names the exact outputs: whether a RevoGrid feature exists, whether it is Pro, and where to learn it. This is clear enough to differentiate it from broader siblings like list_revogrid_capabilities, though it does not explicitly name any alternative.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to use this tool versus alternatives like search_revogrid_docs or validate_revogrid_usage. The intended usage is implied by the action verb, but no prerequisites, exclusions, or routing conditions are provided.

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

search_revogrid_docsSearch RevoGrid DocsA
Read-onlyIdempotent
Inspect

Use for broad RevoGrid questions or when the exact API name is unknown. Searches source-grounded docs and API evidence; defaults to public exports.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results per page.
queryYesRevoGrid concept, API symbol, package, or implementation question.
cursorNoOpaque cursor returned by the previous page.
productNoRestrict results to one RevoGrid product.
surfaceNoLegacy catalog surface filter.
versionNoRestrict results to an indexed package version.
docTypesNoRestrict source kinds such as API, guide, or example.
frameworkNoRestrict results to a consumer framework.
symbolKindNoRestrict exported declaration kind.
visibilityNoDefaults to public; internal requires explicit internal selection.
packageNameNoExact published npm package name.
requiresProNoFilter by descriptive Pro/license requirement.

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryYes
resultsYes
nextCursorNo
appliedFiltersYes
suggestedNextToolNo

TDQS

A4.2/5.0
Behavior4/5

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

The annotations already declare readOnly, idempotent, and non-destructive behavior, so the safety profile is covered. The description adds useful behavioral context by noting that searches are 'source-grounded' and that results 'default to public exports,' going beyond the structured 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, each earning its place: the first gives the primary use case and the second describes the search source and default scope. Information is front-loaded and there is no redundancy or filler.

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 rich input schema, annotations, and output schema, the description is sufficiently complete for selecting and invoking the tool. It covers the core use case and default behavior, though it could name sibling tools to further reduce ambiguity.

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 input schema already documents all 12 parameters. The description adds little semantic value for parameters, though the phrase 'defaults to public exports' does reinforce the visibility parameter's default behavior. Baseline 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: searching RevoGrid documentation and API evidence. It specifies the verb ('search'), the resource ('source-grounded docs and API evidence'), and the intended use case ('broad RevoGrid questions or when the exact API name is unknown'), which distinguishes it from more targeted sibling tools.

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 for when to use the tool: for broad questions or when the exact API name is unknown. It implies that a more precise tool should be used when the exact API is known, but it does not explicitly name sibling alternatives or state when not to use it.

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

validate_revogrid_usageValidate RevoGrid UsageA
Read-onlyIdempotent
Inspect

Use before implementation handoff to statically check structured RevoGrid imports, configuration, dependencies, versions, and optional bounded source. Never executes code.

ParametersJSON Schema
NameRequiredDescriptionDefault
importsNoStructured imports to validate without execution.
featuresNoCapabilities the application intends to use.
frameworkNoConsumer application framework.
configurationNoConfiguration keys grouped by their owning capability.
sourceSnippetNoOptional bounded source used only for static import inspection; never executed.
installedVersionsNoInstalled versions keyed by npm package name.

Output Schema

ParametersJSON Schema
NameRequiredDescription
validYes
diagnosticsYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, and the description reinforces this with 'statically check' and 'Never executes code,' adding a stronger execution guarantee. It also notes the source is 'bounded,' providing input constraints not present in 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 short sentences with the most important usage timing and full scope list front-loaded. The second sentence 'Never executes code' is a critical safety property stated with zero waste.

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 6-parameter tool with an output schema and rich annotations, the description covers the key contextual signals: when to run it, what it validates, and its non-execution guarantee. It omits return-value details, but those are presumably captured in the output schema, and the sibling context makes its role clear.

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 schema already documents each parameter fully. The description adds a high-level grouping of inputs (imports, configuration, dependencies, versions, bounded source) that helps map intent, but it provides no per-parameter details 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 the specific verb 'statically check' against concrete resources: structured RevoGrid imports, configuration, dependencies, versions, and optional bounded source. It clearly aligns with the tool's name and differentiates it from sibling tools like plan_revogrid_implementation or inspect_revogrid_api by framing it as a validation step before handoff.

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 opening phrase 'Use before implementation handoff' provides a clear trigger condition for when to invoke the tool. It doesn't explicitly name alternatives or state when not to use it, but the workflow placement is unambiguous and gives enough context.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 8 tool updates
    • Changedfind_examples12 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Opaque cursor returned by the previous page.",
        +  "type": "string"
        +}
      • addedInput schema / properties / framework / description
        Added value: +"Preferred example framework."
      • addedInput schema / properties / limit / description
        Added value: +"Maximum examples per page."
      • addedInput schema / properties / packageName
        Added value: +{
        +  "description": "Exact published npm package name.",
        +  "type": "string"
        +}
      • addedInput schema / properties / product
        Added value: +{
        +  "description": "RevoGrid product demonstrated by the example.",
        +  "enum": [
        +    "core",
        +    "pro",
        +    "pivot",
        +    "gantt",
        +    "scheduler",
        +    "kanban",
        +    "collaboration",
        +    "enterprise"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / query / description
        Added value: +"Capability or scenario demonstrated by a runnable example."
      • addedInput schema / properties / requiresPro / description
        Added value: +"Filter by descriptive Pro/license requirement."
      • addedInput schema / properties / surface / description
        Added value: +"Legacy catalog surface filter."
      • addedInput schema / properties / version / description
        Added value: +"Indexed package version."
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "nextCursor": {
        +      "type": "string"
        +    },
        +    "results": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "exampleUrl": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "framework": {
        +            "enum": [
        +              "react",
        +              "vue",
        +              "angular",
        +              "svelte",
        +              "vanilla"
        +            ],
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "packages": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "requiresPro": {
        +            "type": "boolean"
        +          },
        +          "score": {
        +            "type": "number"
        +          },
        +          "sourceUrl": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "surface": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "plugin",
        +              "columntype",
        +              "migration",
        +              "changelog",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "version": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "surface",
        +          "requiresPro",
        +          "summary",
        +          "packages",
        +          "score"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "results"
        +  ],
        +  "type": "object"
        +}
    • Changedget_migration_notes3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "breakingChanges": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "changedDefaults": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "framework": {
        +      "enum": [
        +        "react",
        +        "vue",
        +        "angular",
        +        "svelte",
        +        "vanilla"
        +      ],
        +      "type": "string"
        +    },
        +    "fromVersion": {
        +      "type": "string"
        +    },
        +    "packageChanges": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "recommendedDocs": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "authority": {
        +            "type": "number"
        +          },
        +          "docType": {
        +            "enum": [
        +              "guide",
        +              "api",
        +              "example",
        +              "live-demo",
        +              "migration",
        +              "faq"
        +            ],
        +            "type": "string"
        +          },
        +          "exampleUrl": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "framework": {
        +            "enum": [
        +              "react",
        +              "vue",
        +              "angular",
        +              "svelte",
        +              "vanilla"
        +            ],
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "packageName": {
        +            "type": "string"
        +          },
        +          "packageVersion": {
        +            "type": "string"
        +          },
        +          "product": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "gantt",
        +              "scheduler",
        +              "kanban",
        +              "collaboration",
        +              "enterprise"
        +            ],
        +            "type": "string"
        +          },
        +          "requiresPro": {
        +            "type": "boolean"
        +          },
        +          "score": {
        +            "type": "number"
        +          },
        +          "snippet": {
        +            "type": "string"
        +          },
        +          "sourcePath": {
        +            "type": "string"
        +          },
        +          "sourceRevision": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "surface": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "plugin",
        +              "columntype",
        +              "migration",
        +              "changelog",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "symbolKind": {
        +            "enum": [
        +              "class",
        +              "function",
        +              "interface",
        +              "type",
        +              "enum",
        +              "variable",
        +              "event",
        +              "plugin",
        +              "component",
        +              "unknown"
        +            ],
        +            "type": "string"
        +          },
        +          "symbols": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "url": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "version": {
        +            "type": "string"
        +          },
        +          "visibility": {
        +            "enum": [
        +              "public",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "whyMatched": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "summary",
        +          "surface",
        +          "docType",
        +          "requiresPro",
        +          "symbols",
        +          "score",
        +          "snippet",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "recommendedExamples": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "exampleUrl": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "framework": {
        +            "enum": [
        +              "react",
        +              "vue",
        +              "angular",
        +              "svelte",
        +              "vanilla"
        +            ],
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "packages": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "requiresPro": {
        +            "type": "boolean"
        +          },
        +          "score": {
        +            "type": "number"
        +          },
        +          "sourceUrl": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "surface": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "plugin",
        +              "columntype",
        +              "migration",
        +              "changelog",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "version": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "surface",
        +          "requiresPro",
        +          "summary",
        +          "packages",
        +          "score"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "renamedSymbols": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "from": {
        +            "type": "string"
        +          },
        +          "to": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "from",
        +          "to"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "toVersion": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "fromVersion",
        +    "toVersion",
        +    "breakingChanges",
        +    "renamedSymbols",
        +    "changedDefaults",
        +    "packageChanges",
        +    "recommendedDocs",
        +    "recommendedExamples"
        +  ],
        +  "type": "object"
        +}
    • Addedinspect_revogrid_api
    • Addedlist_revogrid_capabilities
    • Addedplan_revogrid_implementation
    • Changedresolve_feature_matrix3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "bestDocs": {
        +      "default": [],
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "authority": {
        +            "type": "number"
        +          },
        +          "docType": {
        +            "enum": [
        +              "guide",
        +              "api",
        +              "example",
        +              "live-demo",
        +              "migration",
        +              "faq"
        +            ],
        +            "type": "string"
        +          },
        +          "exampleUrl": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "framework": {
        +            "enum": [
        +              "react",
        +              "vue",
        +              "angular",
        +              "svelte",
        +              "vanilla"
        +            ],
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "packageName": {
        +            "type": "string"
        +          },
        +          "packageVersion": {
        +            "type": "string"
        +          },
        +          "product": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "gantt",
        +              "scheduler",
        +              "kanban",
        +              "collaboration",
        +              "enterprise"
        +            ],
        +            "type": "string"
        +          },
        +          "requiresPro": {
        +            "type": "boolean"
        +          },
        +          "score": {
        +            "type": "number"
        +          },
        +          "snippet": {
        +            "type": "string"
        +          },
        +          "sourcePath": {
        +            "type": "string"
        +          },
        +          "sourceRevision": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "surface": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "plugin",
        +              "columntype",
        +              "migration",
        +              "changelog",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "symbolKind": {
        +            "enum": [
        +              "class",
        +              "function",
        +              "interface",
        +              "type",
        +              "enum",
        +              "variable",
        +              "event",
        +              "plugin",
        +              "component",
        +              "unknown"
        +            ],
        +            "type": "string"
        +          },
        +          "symbols": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "url": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "version": {
        +            "type": "string"
        +          },
        +          "visibility": {
        +            "enum": [
        +              "public",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "whyMatched": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "summary",
        +          "surface",
        +          "docType",
        +          "requiresPro",
        +          "symbols",
        +          "score",
        +          "snippet",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "bestExamples": {
        +      "default": [],
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "exampleUrl": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "framework": {
        +            "enum": [
        +              "react",
        +              "vue",
        +              "angular",
        +              "svelte",
        +              "vanilla"
        +            ],
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "packages": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "requiresPro": {
        +            "type": "boolean"
        +          },
        +          "score": {
        +            "type": "number"
        +          },
        +          "sourceUrl": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "surface": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "plugin",
        +              "columntype",
        +              "migration",
        +              "changelog",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "version": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "surface",
        +          "requiresPro",
        +          "summary",
        +          "packages",
        +          "score"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "fallbackApproach": {
        +      "type": "string"
        +    },
        +    "featureName": {
        +      "type": "string"
        +    },
        +    "notes": {
        +      "default": [],
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "requiresPro": {
        +      "type": "boolean"
        +    },
        +    "stability": {
        +      "enum": [
        +        "stable",
        +        "experimental",
        +        "deprecated"
        +      ],
        +      "type": "string"
        +    },
        +    "supported": {
        +      "type": "boolean"
        +    },
        +    "supportedFrameworks": {
        +      "items": {
        +        "enum": [
        +          "react",
        +          "vue",
        +          "angular",
        +          "svelte",
        +          "vanilla"
        +        ],
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "featureName",
        +    "supported",
        +    "requiresPro",
        +    "supportedFrameworks",
        +    "notes",
        +    "bestDocs",
        +    "bestExamples"
        +  ],
        +  "type": "object"
        +}
    • Changedsearch_revogrid_docs15 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Opaque cursor returned by the previous page.",
        +  "type": "string"
        +}
      • addedInput schema / properties / docTypes / description
        Added value: +"Restrict source kinds such as API, guide, or example."
      • addedInput schema / properties / framework / description
        Added value: +"Restrict results to a consumer framework."
      • addedInput schema / properties / limit / description
        Added value: +"Maximum results per page."
      • addedInput schema / properties / packageName
        Added value: +{
        +  "description": "Exact published npm package name.",
        +  "type": "string"
        +}
      • addedInput schema / properties / product
        Added value: +{
        +  "description": "Restrict results to one RevoGrid product.",
        +  "enum": [
        +    "core",
        +    "pro",
        +    "pivot",
        +    "gantt",
        +    "scheduler",
        +    "kanban",
        +    "collaboration",
        +    "enterprise"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / query / description
        Added value: +"RevoGrid concept, API symbol, package, or implementation question."
      • addedInput schema / properties / requiresPro / description
        Added value: +"Filter by descriptive Pro/license requirement."
      • addedInput schema / properties / surface / description
        Added value: +"Legacy catalog surface filter."
      • addedInput schema / properties / symbolKind
        Added value: +{
        +  "description": "Restrict exported declaration kind.",
        +  "enum": [
        +    "class",
        +    "function",
        +    "interface",
        +    "type",
        +    "enum",
        +    "variable",
        +    "event",
        +    "plugin",
        +    "component",
        +    "unknown"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / version / description
        Added value: +"Restrict results to an indexed package version."
      • addedInput schema / properties / visibility
        Added value: +{
        +  "description": "Defaults to public; internal requires explicit internal selection.",
        +  "enum": [
        +    "public",
        +    "internal"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "appliedFilters": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "docTypes": {
        +          "items": {
        +            "enum": [
        +              "guide",
        +              "api",
        +              "example",
        +              "live-demo",
        +              "migration",
        +              "faq"
        +            ],
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "framework": {
        +          "enum": [
        +            "react",
        +            "vue",
        +            "angular",
        +            "svelte",
        +            "vanilla"
        +          ],
        +          "type": "string"
        +        },
        +        "limit": {
        +          "maximum": 20,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "packageName": {
        +          "type": "string"
        +        },
        +        "product": {
        +          "enum": [
        +            "core",
        +            "pro",
        +            "pivot",
        +            "gantt",
        +            "scheduler",
        +            "kanban",
        +            "collaboration",
        +            "enterprise"
        +          ],
        +          "type": "string"
        +        },
        +        "requiresPro": {
        +          "type": "boolean"
        +        },
        +        "surface": {
        +          "enum": [
        +            "core",
        +            "pro",
        +            "pivot",
        +            "plugin",
        +            "columntype",
        +            "migration",
        +            "changelog",
        +            "internal"
        +          ],
        +          "type": "string"
        +        },
        +        "symbolKind": {
        +          "enum": [
        +            "class",
        +            "function",
        +            "interface",
        +            "type",
        +            "enum",
        +            "variable",
        +            "event",
        +            "plugin",
        +            "component",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        },
        +        "version": {
        +          "type": "string"
        +        },
        +        "visibility": {
        +          "enum": [
        +            "public",
        +            "internal"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "limit"
        +      ],
        +      "type": "object"
        +    },
        +    "nextCursor": {
        +      "type": "string"
        +    },
        +    "query": {
        +      "type": "string"
        +    },
        +    "results": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "authority": {
        +            "type": "number"
        +          },
        +          "docType": {
        +            "enum": [
        +              "guide",
        +              "api",
        +              "example",
        +              "live-demo",
        +              "migration",
        +              "faq"
        +            ],
        +            "type": "string"
        +          },
        +          "exampleUrl": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "framework": {
        +            "enum": [
        +              "react",
        +              "vue",
        +              "angular",
        +              "svelte",
        +              "vanilla"
        +            ],
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "packageName": {
        +            "type": "string"
        +          },
        +          "packageVersion": {
        +            "type": "string"
        +          },
        +          "product": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "gantt",
        +              "scheduler",
        +              "kanban",
        +              "collaboration",
        +              "enterprise"
        +            ],
        +            "type": "string"
        +          },
        +          "requiresPro": {
        +            "type": "boolean"
        +          },
        +          "score": {
        +            "type": "number"
        +          },
        +          "snippet": {
        +            "type": "string"
        +          },
        +          "sourcePath": {
        +            "type": "string"
        +          },
        +          "sourceRevision": {
        +            "type": "string"
        +          },
        +          "summary": {
        +            "type": "string"
        +          },
        +          "surface": {
        +            "enum": [
        +              "core",
        +              "pro",
        +              "pivot",
        +              "plugin",
        +              "columntype",
        +              "migration",
        +              "changelog",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "symbolKind": {
        +            "enum": [
        +              "class",
        +              "function",
        +              "interface",
        +              "type",
        +              "enum",
        +              "variable",
        +              "event",
        +              "plugin",
        +              "component",
        +              "unknown"
        +            ],
        +            "type": "string"
        +          },
        +          "symbols": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "url": {
        +            "format": "uri",
        +            "type": "string"
        +          },
        +          "version": {
        +            "type": "string"
        +          },
        +          "visibility": {
        +            "enum": [
        +              "public",
        +              "internal"
        +            ],
        +            "type": "string"
        +          },
        +          "whyMatched": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "title",
        +          "summary",
        +          "surface",
        +          "docType",
        +          "requiresPro",
        +          "symbols",
        +          "score",
        +          "snippet",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "suggestedNextTool": {
        +      "enum": [
        +        "search_revogrid_docs",
        +        "find_examples",
        +        "resolve_feature_matrix",
        +        "get_migration_notes",
        +        "inspect_revogrid_api",
        +        "plan_revogrid_implementation"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "query",
        +    "appliedFilters",
        +    "results"
        +  ],
        +  "type": "object"
        +}
    • Addedvalidate_revogrid_usage
  2. 1 tool update
    • Changedfind_examples1 field changed
      • addedInput schema / properties / requiresPro
        Added value: +{
        +  "type": "boolean"
        +}
  3. 4 tool updates
    • First observedfind_examples
    • First observedget_migration_notes
    • First observedresolve_feature_matrix
    • First observedsearch_revogrid_docs

Frequently Asked Questions

Discussions

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

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.9/5.0
Disambiguation4/5

Most tools have clearly distinct purposes, especially the action-oriented workflow tools like plan and validate. The main ambiguity is among the discovery/query tools—list_revogrid_capabilities, resolve_feature_matrix, search_revogrid_docs, and inspect_revogrid_api—though their descriptions provide enough guidance to avoid frequent misselection.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern, such as find_examples, inspect_revogrid_api, and validate_revogrid_usage. The verbs clearly indicate the action, and the naming style is uniform across the entire set.

Tool Count5/5

Eight tools is well-scoped for a RevoGrid implementation-assistance server. Each tool serves a meaningful step in the discovery-to-validation workflow without excessive redundancy or a feeling of missing core functionality.

Completeness5/5

The toolset covers the full knowledge-workflow lifecycle: discover capabilities, resolve feature existence, search docs, inspect exact APIs, find examples, get migration notes, plan implementation, and validate usage. This is a comprehensive surface for the stated purpose, with no obvious dead ends.