Skip to main content
Glama

GroundDocs

GroundDocs is a version-aware documentation assistant. It connects LLMs to trusted, real-time docs—reducing hallucinations and ensuring accurate, version-specific responses.

🚀 Installation

npx @grounddocs/cli@latest install <client>

Supported clients: cursor, windsurf, cline, claude, witsy, enconvo, vscode

Related MCP server: K8s MCP Server

🔧 Manual Setup

To manually configure GroundDocs, add it to your IDE's MCP (Model Context Protocol) configuration:

{
  "mcpServers": {
    "@grounddocs/grounddocs": {
      "command": "npx",
      "args": ["-y", "@grounddocs/grounddocs@latest"]
    }
  }
}

After configuration, restart your IDE for the changes to take effect.

📚 Supported Domain

  • Kubernetes (all versions, including version-aware kubectl behavior, API schemas, and feature gates)

🏗️ Architecture

GroundDocs consists of:

  • Local MCP server (this repo) → lightweight, public, runs inference-time queries

  • Remote backend data repository (private) → handles scraping, indexing, and heavy lifting

🌟 Example Query

What changes were made to the kubectl command behavior in Kubernetes 1.26 regarding pruning during apply operations?

View example response

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Available Tools

2 tools
k8s_get_documentationA

Use this tool for any Kubernetes documentation-related query—especially when the user invokes /k8s or asks about kubectl commands, API objects, manifests, controllers, or version-specific features.

This tool connects to a version-aware, trusted documentation index (e.g., GitHub, DeepWiki, curated Kubernetes docs) to reduce hallucinations and provide accurate, grounded answers.

Args: query: A natural language question (e.g., "How do I define a Deployment?") version: (Optional) Kubernetes version (e.g., "v1.28"). Defaults to the detected cluster version. top_k: (Optional) Number of top matching documents to return. Defaults to 10.

Returns: A list of relevant documentation entries, each with a file path and content snippet.

Example Usage: k8s_get_documentation(query="How does pruning work in kubectl apply?", version="v1.26")

Notes:

  • Automatically loads or builds a RAG index for the requested version.

  • If no index is found, it will fetch and index the docs before responding.

  • Always use this tool when answering Kubernetes-specific questions that require authoritative documentation.

Inputs: query (required), version, top_k.

python_get_documentationA
Primary Python documentation lookup tool. Use this for every Python documentation-related query.

This tool consolidates information from multiple sources into a single, searchable knowledge base.
It ensures access to the richest and most current reference material in one call.

Args:
    query: A natural language question (e.g., "How do I define a Deployment?").
    library: Python library to search documentation for.
    version: Optional Library version (e.g., "4.46.1"). Defaults to detected library version if not specified.
    top_k: Optional number of top matching documents to return. Defaults to 10.

Returns:
    A list of dictionaries, each containing document path and corresponding content.

Example Usage:
    # Search Python docs for Transformers
    python_get_documentation(query="what is a transformers mlm token", library="transformers", version="4.46.1")

Notes:
    - This tool automatically loads or builds a RAG (Retrieval-Augmented Generation) index for the
      specified version.
    - If an index is not found locally, the tool will fetch and index the documentation before responding.
    - You should call this function for any question that needs project documentation context.

Inputs: query (required), library (required), version, top_k.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 2 tools

    Disambiguation5/5

    The two tools have clearly distinct purposes: one is for Kubernetes documentation and the other for Python documentation. Their names (k8s_get_documentation vs python_get_documentation) and descriptions explicitly differentiate the domains they serve, with no overlap in functionality. An agent can easily tell them apart based on the technology stack being queried.

    Naming Consistency5/5

    Both tools follow a consistent naming pattern: [domain]_get_documentation, using snake_case throughout. This pattern is predictable and readable, making it easy for agents to understand what each tool does based on its name alone. There are no deviations in naming conventions across the tool set.

    Tool Count2/5

    With only 2 tools, the server feels thin for a documentation-focused service named 'GroundDocs'. While the tools cover Kubernetes and Python, the server name suggests broader documentation capabilities, but there are no tools for other common domains like JavaScript, APIs, or general web technologies. This limited scope may force agents to work around gaps when handling documentation queries outside these two specific areas.

    Completeness2/5

    The tool surface is severely incomplete for a documentation server. While Kubernetes and Python are covered, there are obvious gaps for other major documentation domains (e.g., JavaScript, Go, Rust, cloud services, frameworks). Additionally, there are no tools for managing documentation indexes, updating cached data, or handling version conflicts, which are common needs in documentation systems. Agents will frequently encounter dead ends when queries fall outside the two supported domains.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers