Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Generated by https://smithery.ai. See: https://smithery.ai/docs/build/project-config
# Use Bun official image for building and running
FROM oven/bun:latest AS builder

WORKDIR /app

# Copy project files
COPY package.json bun.lock biome.json tsconfig.json ./
COPY src ./src

# Install dependencies and build
RUN bun install
RUN bun build ./src/index.ts --outdir ./build --target node

# Runtime image (reuse builder as it is already optimized)
FROM oven/bun:latest
WORKDIR /app
COPY --from=builder /app/build ./build
COPY --from=builder /app/node_modules ./node_modules

# Expose entrypoint
ENTRYPOINT ["node", "./build/index.js"]
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Rust Docs MCP Server
[![smithery badge](https://smithery.ai/badge/@laptou/rust-docs-mcp-server)](https://smithery.ai/server/@laptou/rust-docs-mcp-server)

An MCP (Model Context Protocol) server that provides access to Rust documentation from docs.rs. This server allows AI tools to search for documentation, type information, feature flags, version numbers, and symbol definitions/source code.

Expand All @@ -14,6 +15,15 @@ An MCP (Model Context Protocol) server that provides access to Rust documentatio

## Installation

### Installing via Smithery

To install Rust Docs Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@laptou/rust-docs-mcp-server):

```bash
npx -y @smithery/cli install @laptou/rust-docs-mcp-server --client claude
```

### Manual Installation
This project uses Bun for development, but the built server can run with Node.js.

```bash
Expand Down
14 changes: 14 additions & 0 deletions smithery.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Smithery configuration file: https://smithery.ai/docs/build/project-config

startCommand:
type: stdio
configSchema:
# JSON Schema defining the configuration options for the MCP.
type: object
properties: {}
description: No configuration needed
commandFunction:
# A JS function that produces the CLI command based on the given config to start the MCP on stdio.
|-
(config) => ({ command: 'node', args: ['./build/index.js'], env: {} })
exampleConfig: {}