Sign inSign up

martoc/mcp-karpenter-documentation

By martoc

•Updated 1 day ago

MCP server for AWS Karpenter documentation

Image
0

3.9K

martoc/mcp-karpenter-documentation repository overview

License: MIT Python 3.12 MCP Docker Build Docker Hub

⁠MCP Karpenter Documentation Server

An MCP (Model Context Protocol) server that provides search and retrieval tools for AWS Karpenter⁠ documentation. This server enables AI assistants like Claude to search and read Karpenter documentation directly.

⁠Features

  • Full-text search using SQLite FTS5 with BM25 ranking and Porter stemming
  • Section filtering to narrow search results by documentation category
  • Sparse checkout for efficient cloning of only the website directory from aws/karpenter-provider-aws
  • Docker support for portable deployment across projects
  • STDIO transport for seamless MCP client integration

⁠Quick Start

# Pull from Docker Hub (easiest)
docker pull martoc/mcp-karpenter-documentation:latest

# Or build locally (includes pre-indexed documentation)
make docker-build

# Test the server
make docker-run
⁠Using uv (Local Development)
# Initialise the environment
make init

# Build the documentation index
make index

# Run the server
make run

⁠Configuration

⁠Claude Code / Claude Desktop

Add to your .mcp.json or global settings:

{
  "mcpServers": {
    "karpenter-documentation": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "martoc/mcp-karpenter-documentation:latest"]
    }
  }
}

For a locally built Docker image:

{
  "mcpServers": {
    "karpenter-documentation": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "martoc/mcp-karpenter-documentation"]
    }
  }
}

For local development without Docker:

{
  "mcpServers": {
    "karpenter-documentation": {
      "command": "uv",
      "args": ["run", "mcp-karpenter-documentation"],
      "cwd": "/Users/martoc/Developer/github.com/martoc/mcp-karpenter-documentation"
    }
  }
}

⁠MCP Tools

ToolDescription
search_documentationSearch Karpenter documentation by keyword query with optional section filtering
read_documentationRetrieve the full content of a specific documentation page
⁠search_documentation

Search AWS Karpenter documentation using full-text search with stemming support.

ParameterTypeRequiredDefaultDescription
querystringYes-Search terms (supports stemming)
sectionstringNoNoneFilter by section (e.g., docs, guides, concepts)
limitintegerNo10Maximum results (1-50)

Common Sections: docs, guides, concepts, reference, troubleshooting, faq

⁠read_documentation

Retrieve the full content of a documentation page.

ParameterTypeRequiredDescription
pathstringYesRelative path to document (from search results)

⁠CLI Commands

# Build/rebuild the documentation index
uv run karpenter-docs-index index
uv run karpenter-docs-index index --rebuild
uv run karpenter-docs-index index --branch main

# Show index statistics
uv run karpenter-docs-index stats

⁠Development

make init         # Initialise development environment
make build        # Run full build (lint, typecheck, test)
make test         # Run tests with coverage
make format       # Format code
make lint         # Run linter
make typecheck    # Run type checker
make docker-build # Build Docker image
make docker-tag   # Tag for Docker Hub
make docker-push  # Push to Docker Hub

⁠Docker Hub

The official Docker image is available at:

  • martoc/mcp-karpenter-documentation:latest - Latest stable release
  • martoc/mcp-karpenter-documentation:v0.1.0 - Specific version

The image includes pre-indexed Karpenter documentation (~181 documents) and is ready to use immediately.

⁠Documentation

⁠Licence

This project is licensed under the MIT Licence - see the LICENSE⁠ file for details.

Tag summary

Content type

Image

Digest

sha256:308037fee…

Size

118.7 MB

Last updated

1 day ago

docker pull martoc/mcp-karpenter-documentation