godoc-mcp-server

godoc-mcp-server

Provides Go package documentation from pkg.go.dev to LLMs as an MCP server.

32
Stars
3
Forks
32
Watchers
0
Issues
godoc-mcp-server enables searching Golang packages and obtains their documentation from pkg.go.dev, serving the information to language models via the Model Context Protocol. Communication occurs over standard input/output, supporting efficient retrieval of package information, including support for subpackages and usage instructions. The tool includes local caching and features tailored to LLM integration scenarios.

Key Features

Search Go packages from pkg.go.dev
Retrieve and serve documentation over stdio
Local caching for improved performance
Supports querying subpackage details
Configurable description for client integration
Multi-platform binary releases via GitHub Actions
Standardized context exchange for LLMs
API for retrieving number of importers
Unstable but exportable Go API
Tool efficiency optimization based on user feedback

Use Cases

Supplying Go documentation context to language models
Enabling code completion or explanation tools for Golang
Automating integration of Go package lookups in development assistants
Providing package details for LLM-based code analysis
Enhancing AI tooling with real-time Go package data
Batch retrieval of Go package documentation in LLM pipelines
Customizing documentation formats for downstream consumers
Reducing repeated external lookups with local caching
Supporting conversational agents that answer Go development queries
Educational platforms accessing Go documentation through LLMs

README

godoc-mcp-server

search golang packages and their docs from pkg.go.dev, provide the infomation to llm as mcp server

Install

You can download the compiled binary from the releases page.

Or you can install it from source, compile it by yourself:

shell
go install github.com/yikakia/godoc-mcp-server/cmd/godoc-mcp-server@latest

Usage

just use your client to request. it servers on stdio

Todo

  • localCache
    • use a local cache to avoid search every time(From reddit user)
  • searchPackage
    • imported by how many packages
  • getPackageInfo
    • get examples
  • release
    • use github actions to release for multiple platforms

Develop Experience

The description is very important, when describing the param should tell the client how to use one tool's output and change the format to match another tool's input.

For example, the output of searchPackage contains subpackage's name, but do not contain the package's name. So if want the llm to use getPackageInfo to get the subpackage's info, I wrote the description for param packageName about how to use it to work with searchPackage:

package name for search. if use searchPackages before, and user want to get the subpackage info. you should plus them for example, when user query mcp, and it return packageName: github.com/mark3labs/mcp-go/mcp and subpackage client, then if user want to get the client package info, you should set the packageName to github.com/mark3labs/mcp-go/mcp/client rather than client

When using this detail description, the llm will tell you some subpackage's name after search. You can just tell it which package you want to get info, or which package and the subpackage's name, it will combine them and call getPackageInfo to get the info.

So maybe we should make the description configurable by user, to make the tool more useful and efficiency.

Library Usage

The exported Go API of this module should currently be considered unstable, and subject to breaking changes. In the future, we may offer stability; please file an issue if there is a use case where this would be valuable.

License

This project is licensed under the terms of the MIT open source license. Please refer to MIT for the full terms.

Star History

Star History Chart

Repository Owner

yikakia
yikakia

User

Repository Details

Language Go
Default Branch main
Size 31 KB
Contributors 1
License MIT License
MCP Verified Nov 12, 2025

Programming Languages

Go
100%

Tags

Topics

go mcp mcp-server modelcontextprotocol

Join Our Newsletter

Stay updated with the latest AI tools, news, and offers by subscribing to our weekly newsletter.

We respect your privacy. Unsubscribe at any time.

Related MCPs

Discover similar Model Context Protocol servers

  • godoc-mcp

    godoc-mcp

    Token-efficient Go documentation server for LLMs using Model Context Protocol.

    godoc-mcp is a Model Context Protocol (MCP) server that provides efficient, structured access to Go package documentation for large language models. It enables LLMs to understand Go projects without reading entire source files by supplying essential documentation and source code at varying levels of granularity. The tool supports project navigation, automatic module setup, caching, and works offline for both standard and third-party Go packages.

    • 88
    • MCP
    • mrjoshuak/godoc-mcp
  • PMCP

    PMCP

    Golang Model Context Protocol server for natural language Prometheus queries

    PMCP implements a Model Context Protocol (MCP) server in Go, enabling natural language access and manipulation of Prometheus metrics. It maintains full consistency with the Prometheus HTTP API and supports a robust, type-safe interface for seamless integration with MCP-compatible clients. The server offers complete Prometheus API coverage and supports multiple transport methods, including HTTP and Server-Sent Events. Its modular architecture is designed for performance, extensibility, and effective error handling.

    • 3
    • MCP
    • yshngg/pmcp
  • MCP-Typescribe

    MCP-Typescribe

    An MCP server for serving TypeScript API context to language models.

    MCP-Typescribe is an open-source implementation of the Model Context Protocol (MCP) focused on providing LLMs with contextual, real-time access to TypeScript API documentation. It parses TypeScript (and other) definitions using TypeDoc-generated JSON and serves this information via a queryable server that supports tools used by AI coding assistants. The solution enables AI agents to dynamically explore, search, and understand unknown APIs, accelerating onboarding and supporting agentic behaviors in code generation.

    • 45
    • MCP
    • yWorks/mcp-typescribe
  • mcp-get

    mcp-get

    A command-line tool for discovering, installing, and managing Model Context Protocol servers.

    mcp-get is a CLI tool designed to help users discover, install, and manage Model Context Protocol (MCP) servers. It enables seamless integration of Large Language Models (LLMs) with various external data sources and tools by utilizing a standardized protocol. The tool provides access to a curated registry of MCP servers and supports installation and management across multiple programming languages and environments. Although now archived, mcp-get simplifies environment variable management, package versioning, and server updates to enhance the LLM ecosystem.

    • 497
    • MCP
    • michaellatman/mcp-get
  • RAE Model Context Protocol (MCP) Server

    RAE Model Context Protocol (MCP) Server

    An MCP server enabling LLMs to access RAE’s dictionary and linguistic resources.

    Provides a Model Context Protocol (MCP) server implementation for the Royal Spanish Academy API, facilitating integration with language models. Offers tools such as search and word information retrieval, exposing RAE’s dictionary and linguistic data to LLMs. Supports multiple transports including stdio and SSE, making it suitable for both direct and server-based LLM interactions.

    • 3
    • MCP
    • rae-api-com/rae-mcp
  • Edge Delta MCP Server

    Edge Delta MCP Server

    Seamlessly integrate Edge Delta APIs into the Model Context Protocol ecosystem.

    Edge Delta MCP Server is a Model Context Protocol server enabling advanced integration with Edge Delta APIs. It allows developers and tools to extract, analyze, and automate observability data from Edge Delta through standardized MCP interfaces. The server supports AI-powered applications and automations, and can be deployed via Docker for straightforward operation. The Go API is available for experimental programmatic access.

    • 5
    • MCP
    • edgedelta/edgedelta-mcp-server
  • Didn't find tool you were looking for?

    Be as detailed as possible for better results