Skip to main content
Glama
MCP Docs Server

MCP Docs Server

MCP Docs Server

A small Python project that exposes a FastMCP tool for fetching documentation from supported libraries and returning clean, readable text. The project includes a sample client that connects to the server, calls the tool, and uses Groq to answer the user's question using the retrieved documentation as context.

What this project does

  • Runs an MCP server with the get_docs tool

  • Searches the web through the Serper API

  • Fetches documentation pages and strips HTML into readable text

  • Supports these libraries:

    • langchain

    • llama-index

    • openai

    • uv

  • Provides a sample client for interacting with the server

Related MCP server: DOC-Intelligence-MCP-SERVER

Project structure

  • mcp_server.py — MCP server and documentation-fetching tool

  • client.py — example client that connects to the MCP server

  • utils.py — HTML cleanup and LLM response helpers

  • pyproject.toml — Python dependencies and project metadata

  • .env — local environment variables for API keys

  • README.md — project documentation

Requirements

  • Python 3.13+

  • uv package manager

Setup

  1. Install dependencies:

    uv sync
  2. Create a .env file in the project root and add your API keys:

    SERPER_API_KEY=your_serper_api_key_here
    GROQ_API_KEY=your_groq_api_key_here
  3. Run the MCP server:

    uv run mcp_server.py
  4. Run the example client:

    uv run client.py

Example usage

The client currently asks:

  • How to use publish a package with uv on gitlab?

  • Library: uv

The server will search documentation for the selected library, collect sources, and return the extracted content for the client to use as context.

Notes

  • The .env file is meant for local development only and should not be committed to GitHub.

  • The project uses the FastMCP library, httpx, python-dotenv, trafilatura, and groq.

Available Tools

1 tool
get_docsGet DocsD

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

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    D1.8/5.0

    Scored across 1 tool

    Disambiguation5/5

    With only one tool, there is no possibility of ambiguity or overlapping purposes. The single tool is trivially distinct.

    Naming Consistency5/5

    The only tool name 'get_docs' follows a clear verb_noun convention. Consistency is trivially maintained with a single tool.

    Tool Count3/5

    A single tool feels thin for a documentation server, but it is at the low end of borderline. The count is not egregious but likely insufficient for a full-featured docs experience.

    Completeness2/5

    The tool name suggests retrieving documentation, but there is no listing, searching, or other navigation capability. This creates significant gaps for a docs server, and the lack of a description makes the surface even more unclear.

    Related MCP Connectors

    Related MCP Servers