trackmcp
Back to directory
vexxvakan

mcp-docsrs

View on GitHub
9 stars TypeScriptOthers Updated Oct 15, 2025

Documentation

Docs.rs MCP Server

License: Apache 2.0

>A Model Context Protocol (MCP) server for fetching Rust crate documentation from docs.rs

FeaturesGetting StartedToolsContributingAcknowledgmentsLicense

Features

  • Find New Crates - Search crates by exact name, partial match, or fuzzy query to discover relevant libraries
  • Inspect Crate Symbols - Inspect structs, traits, functions, and any other symbol inside a crate
  • Review Crate Summaries - Get a crate overview with its structure and public API surface
  • Read Full Documentation - Read crate-level documentation

Getting Started

Using Pre-built Executables

Download the latest release for your platform from the Releases page:

Linux

  • x64/AMD64 (GLIBC): `mcp-docsrs-linux-x64` - For Ubuntu, Debian, Fedora, etc.
  • ARM64 (GLIBC): `mcp-docsrs-linux-arm64` - For ARM64 systems, AWS Graviton
  • x64/AMD64 (MUSL): `mcp-docsrs-linux-x64-musl` - For Alpine Linux, Docker containers (requires libstdc++)
  • ARM64 (MUSL): `mcp-docsrs-linux-arm64-musl` - For Alpine on ARM64, minimal containers (requires libstdc++)

macOS

  • Intel: `mcp-docsrs-darwin-x64` - For Intel-based Macs
  • Apple Silicon: `mcp-docsrs-darwin-arm64` - For M-series Macs

Windows

  • x64: `mcp-docsrs-windows-x64.exe` - For 64-bit Windows

Using Docker

Pull and run the latest multi-arch image (supports both x64 and ARM64):

bash
# Pull the latest image
docker pull ghcr.io/vexxvakan/mcp-docsrs:latest

# Run the server
docker run --rm -i ghcr.io/vexxvakan/mcp-docsrs:latest

# Run with custom configuration
docker run --rm -i ghcr.io/vexxvakan/mcp-docsrs:latest \
  --cache-ttl 7200000 --max-cache-size 200

Available tags:

  • `latest` - Latest stable release (multi-arch)
  • `v1.0.0` - Specific version (multi-arch)

MCP Setup

ClientCommand
Codex`codex mcp add docsrs -- path/to/mcp-docsrs`
Claude Code`claude mcp add --transport stdio docsrs -- path/to/mcp-docsrs`
Gemini CLI`gemini mcp add -s user docsrs path/to/mcp-docsrs`
OpenCodeRun `opencode mcp add`, choose a local MCP server, then point it at `path/to/mcp-docsrs`.
VS CodeOpen Command Palette (`Cmd/Ctrl+Shift+P`) → `MCP: Add Server` → choose `Workspace` or `User` → `Command (stdio)` → enter `path/to/mcp-docsrs`.
CursorOpen Settings (`Cmd/Ctrl+Shift+J`) → `Tools & Integrations` → `New MCP Server` → choose a local/stdio server → enter `path/to/mcp-docsrs`.

After adding the server, restart the client if it does not discover the tools immediately.

Configuration

Configure the server using environment variables or command-line arguments:

VariableCLI FlagDefaultDescription
`CACHE_TTL``--cache-ttl`3600000Cache time-to-live in milliseconds
`MAX_CACHE_SIZE``--max-cache-size`100Maximum number of cached entries
`REQUEST_TIMEOUT``--request-timeout`30000HTTP request timeout in milliseconds
`DB_PATH``--db-path`:memory:Path to SQLite database file

Tools

The server exposes four MCP tools:

Crate

`crate_lookup`

Retrieves a crate overview with its structure and public API surface from docs.rs.

ParameterTypeRequiredDescription
`crateName`stringYesName of the Rust crate to inspect
`version`stringNoSpecific version or semver range, for example `"1.0.0"` or `"~4"`
`target`stringNoTarget platform, for example `"i686-pc-windows-msvc"`
`formatVersion`numberNoRustdoc JSON format version
json
{
  "tool": "crate_lookup",
  "arguments": {
    "crateName": "tokio",
    "version": "1.48.0"
  }
}

`crate_docs`

Retrieves the crate-level documentation page from docs.rs.

ParameterTypeRequiredDescription
`crateName`stringYesName of the Rust crate to inspect
`version`stringNoSpecific version or semver range, for example `"1.0.0"` or `"~4"`
`target`stringNoTarget platform, for example `"i686-pc-windows-msvc"`
`formatVersion`numberNoRustdoc JSON format version
json
{
  "tool": "crate_docs",
  "arguments": {
    "crateName": "serde"
  }
}

`crate_find`

Searches crates.io for matching crates and returns ranked results using fuzzy and partial name matching.

ParameterTypeRequiredDescription
`query`stringYesSearch query for crate names
`limit`numberNoMaximum number of results to return. Defaults to `10`
json
{
  "tool": "crate_find",
  "arguments": {
    "query": "rustdoc json",
    "limit": 5
  }
}

Symbol

`symbol_lookup`

Retrieves structured symbol metadata for one symbol inside a crate.

ParameterTypeRequiredDescription
`crateName`stringYesName of the Rust crate
`symbolType`stringYesRustdoc symbol type, for example `"struct"`, `"function"`, or `"trait"`
`symbolname`stringYesSymbol name or path, for example `"runtime::Runtime"` or `"spawn"`
`version`stringNoSpecific version or semver range
`target`stringNoTarget platform
json
{
  "tool": "symbol_lookup",
  "arguments": {
    "crateName": "tokio",
    "symbolType": "struct",
    "symbolname": "runtime::Runtime"
  }
}

`symbol_docs`

Retrieves the full documentation body for one symbol inside a crate.

ParameterTypeRequiredDescription
`crateName`stringYesName of the Rust crate
`symbolType`stringYesRustdoc symbol type, for example `"struct"`, `"function"`, or `"trait"`
`symbolname`stringYesSymbol name or path, for example `"runtime::Runtime"` or `"spawn"`
`version`stringNoSpecific version or semver range
`target`stringNoTarget platform
json
{
  "tool": "symbol_docs",
  "arguments": {
    "crateName": "tokio",
    "symbolType": "struct",
    "symbolname": "runtime::Runtime"
  }
}

Contributing

Acknowledgments

  • docs.rs for providing the Rust documentation API
  • Model Context Protocol for the MCP specification
  • The Rust community for excellent documentation standards

License

This project is licensed under the Apache License 2.0. See LICENSE for the license text and NOTICE for attribution details.


Made with ❤️ for the Rust community

Report BugRequest Feature

Frequently asked questions

What is mcp-docsrs?

mcp-docsrs is a Model Context Protocol (MCP) server listed in the TrackMCP directory.

How do I install mcp-docsrs?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is mcp-docsrs open source?

Yes — it is hosted on GitHub at https://github.com/vexxvakan/mcp-docsrs and has 9 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP