modelcontextprotocol / modelcontextprotocol/registry

Support for Go modules (go install) as a package type

Open
#1,307 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Go
Stars
7.3k
Forks
994
Avg merge
4d 12h
Merged PRs (30d)
19

Description

Is your feature request related to a problem? Please describe.
I'm trying to publish io.github.P4ST4S/mcp-audit, a Go MCP proxy server installable via go install github.com/P4ST4S/mcp-audit/cmd/mcp-audit@latest. The registry currently returns "unsupported registry type: go", making it impossible to publish Go-based MCP servers.

Describe the solution you'd like
Add support for "registryType": "go" in server.json, using the Go module proxy (proxy.golang.org) as the package source. Ownership verification could check that the module path matches the repository URL in server.json, since Go modules are naturally scoped to their VCS host.

Describe alternatives you've considered
Publishing as OCI/Docker adds unnecessary complexity for a CLI tool distributed via go install. Wrapping in an npm package is not idiomatic for Go projects.

Additional context
Reference server: https://github.com/P4ST4S/mcp-audit Go module: github.com/P4ST4S/mcp-audit
Installable today via: go install github.com/P4ST4S/mcp-audit/cmd/mcp-audit@latest

Go is increasingly used for MCP infrastructure tooling (proxies, gateways, audit layers) due to its performance characteristics. Native Go module support would meaningfully expand the registry's coverage of this category.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by tracing existing registryType handling and ownership verification, then inspect how package sources are resolved for current types. Done means server.json accepts "go", uses proxy.golang.org, and verifies the module path against the repository URL with coverage for the new behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.