Sponsored by Deepsite.site

Linkerd2 MCP

Created By
eli-nomaseca year ago
An MCP server over the Linkerd2 Proxy API
Content

Linkerd2 MCP

⚠️ This project is a Work In Progress (WIP) and is still under active development. Features and APIs may change at any time.

ℹ️ The vast majority of this project has been built with the help of AI agents.

This project aims to expose a Model Context Protocol (MCP) server, enabling you to "talk" to your Linkerd2 service mesh. By building on top of Linkerd and Linkerd-viz, it provides an API for fetching high-level aggregated mesh data and for making changes—such as applying authorization policy updates—directly to your mesh.

A lightweight, fault-tolerant control plane for Linkerd-powered service meshes, exposing a gRPC MCP API for mesh introspection and safe policy mutation.

Project Structure

cmd/
  mcp-server/      → main.go (MCP API server)
  collector/       → main.go (Collector)
proto/             → *.proto + buf.yaml (gRPC contracts)
internal/
  graph/           → in-memory mesh model
  redis/           → Redis helpers (snapshot, delta, election)
docs/              → project docs
helm/              → chart/
Makefile           → convenience commands

Getting Started

Prerequisites

  • Go 1.22+
  • Docker or Podman
  • kubectl 1.30+
  • kind (for local k8s)
  • Linkerd CLI 2.15+
  • Prometheus (comes with Linkerd viz)
  • Buf CLI 1.29+
  • Helm 3.14+

Build

go build -o bin/collector ./cmd/collector
go build -o bin/mcp-server ./cmd/mcp-server

Running End-to-End (local kind cluster)

  1. Start a kind cluster and install Linkerd + Prometheus:

    kind create cluster --name mcp-dev
    linkerd install | kubectl apply -f -
    linkerd viz install | kubectl apply -f -
    linkerd check
    
  2. Deploy Redis (Valkey) and the MCP stack (see helm/ for chart):

    helm install mcp ./helm --namespace mcp --create-namespace --set redis.enabled=true
    
  3. Port-forward MCP server and test the gRPC API:

    kubectl -n mcp port-forward svc/mcp 10900:10900
    grpcurl -plaintext localhost:10900 mcp.v1.MeshContext/GetMeshGraph
    
  4. Apply a policy mutation via gRPC:

    grpcurl -plaintext -d '{"namespace":"default","name":"allow-foo","json_spec":"{\"foo\": \"bar\"}"}' localhost:10900 mcp.v1.MeshContext/ApplyAuthorizationPolicy
    
  5. Verify AuthorizationPolicy CRs in the cluster:

    kubectl get authorizationpolicies.policy.linkerd.io -A
    

Development Workflow

  • Edit proto contracts in proto/, run buf lint
  • Implement business logic in cmd/ and internal/
  • Use kind and helm for local testing
  • Run unit tests: go test ./...
  • See docs/progress.md for current status and next steps

Roadmap

  • Integration testing and error handling
  • Helm chart, CI/CD, documentation
  • E2E tests and further enhancements

License

Apache 2.0

Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
RedisA Model Context Protocol server that provides access to Redis databases. This server enables LLMs to interact with Redis key-value stores through a set of standardized tools.
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
DeepChatYour AI Partner on Desktop
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Serper MCP ServerA Serper MCP Server
WindsurfThe new purpose-built IDE to harness magic
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
Y GuiA web-based graphical interface for AI chat interactions with support for multiple AI models and MCP (Model Context Protocol) servers.
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
Playwright McpPlaywright MCP server
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
ChatWiseThe second fastest AI chatbot™
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
Amap Maps高德地图官方 MCP Server
CursorThe AI Code Editor
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Tavily Mcp
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"