Skip to main content
Glama

RevoGrid DataGrid MCP Pro

Search RevoGrid Docs

search_revogrid_docs
Read-onlyIdempotent

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

Input Schema

TableJSON 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

TableJSON Schema
NameRequiredDescriptionDefault
queryYes
resultsYes
nextCursorNo
appliedFiltersYes
suggestedNextToolNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed15 schema 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"
      +}
  2. First observed

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.

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.