🌐 US-Proxy
class="logged-out env-production page-responsive" style="word-wrap: break-word;" >
Skip to content

feat: publish Coder MCP server to official MCP Registry - #21673

Merged
bpmct merged 14 commits into
mainfrom
mux/publish-mcp-registry
Jun 26, 2026
Merged

feat: publish Coder MCP server to official MCP Registry#21673
bpmct merged 14 commits into
mainfrom
mux/publish-mcp-registry

Conversation

@matifali

@matifali matifali commented Jan 25, 2026

Copy link
Copy Markdown
Member

Summary

This adds the necessary configuration to publish Coder's remote MCP server to the official MCP Registry at registry.modelcontextprotocol.io.

Changes

  • server.json: MCP server metadata for registry discovery
  • .github/workflows/publish-mcp-registry.yaml: GitHub Actions workflow to automatically publish on release

How it works

  1. When a new Coder release is published, the workflow automatically publishes to the MCP Registry
  2. MCP clients (Claude, ChatGPT, VS Code, etc.) can discover Coder via the registry
  3. Users just need to provide their Coder deployment URL - OAuth handles authentication automatically via RFC 7591 Dynamic Client Registration

MCP Registry Entry

The server will be listed as io.github.coder/coder with:

  • Transport: streamable-http
  • Endpoint: {coder_url}/api/experimental/mcp/http
  • Auth: OAuth2 (automatic via /.well-known/oauth-authorization-server)

Testing

After merge and next release, verify at:

curl "https://registry.modelcontextprotocol.io/v0.1/servers?q=io.github.coder"

Closes #21275


Generated with mux • Model: anthropic:claude-opus-4-5 • Thinking: medium

@github-actions

github-actions Bot commented Jan 25, 2026

Copy link
Copy Markdown

This adds the necessary configuration to publish Coder's remote MCP
server to the official MCP Registry at registry.modelcontextprotocol.io.

Changes:
- Add server.json with MCP server metadata for registry discovery
- Add GitHub Actions workflow to automatically publish on release

The MCP server is accessible at /api/experimental/mcp/http and provides
workspace and template management tools for AI agents.

Closes #21275
@matifali
matifali force-pushed the mux/publish-mcp-registry branch from a5a0340 to 877efd8 Compare January 25, 2026 07:07
@coder-tasks

coder-tasks Bot commented Jan 25, 2026

Copy link
Copy Markdown
Contributor

Documentation Check

Updates Needed

  • docs/ai-coder/mcp-server.md - Add section explaining the MCP Registry integration. Users can now discover Coder in MCP-compatible AI tools via the official registry at registry.modelcontextprotocol.io. Document that:
    • Coder is published to the official MCP Registry starting with release v2.30.0
    • Users can discover and install the Coder MCP server through MCP-compatible tools
    • The registry entry points to {coder_url}/api/experimental/mcp/http (the same remote endpoint already documented)
    • Authentication still uses Coder-Session-Token (as already documented)
    • Users still need to provide their self-hosted Coder deployment URL

This addition bridges the gap between the existing "Remote MCP server" section and how users will discover Coder through the registry. Consider adding this as a new section after "Remote MCP server" explaining registry-based discovery as an alternative to manual configuration.

No Changes Needed for:

  • The remote MCP server HTTP endpoint is already documented at line 52
  • Authentication mechanism (OAuth2/session tokens) is already documented at line 58
  • The workflow and server.json are internal automation - users don't interact with them directly

Automated review via Coder Tasks

@matifali
matifali marked this pull request as draft January 25, 2026 07:09
The version is dynamically set from the git tag during the
publish workflow. Using "0.0.0-dev" makes it clear this value
is not manually maintained.
The version is dynamically set from the git tag during the
GitHub Actions publish workflow. Using 0.0.0-dev makes it clear
this value is replaced at publish time.
@matifali
matifali marked this pull request as ready for review January 25, 2026 07:31
Addresses documentation feedback from PR review.
@matifali
matifali marked this pull request as draft January 25, 2026 08:03
The specific server URL will 404 until first publish after merge.
Link to the registry root instead.

---
_Generated with `mux` • Model: `claude-sonnet-4-20250514` • Thinking: `none`_
- Remove broken registry link (registry has no browsable UI)
- Update VS Code instructions to clarify registry discovery
- Add comprehensive list of all 30+ available MCP tools
- Fix Claude Desktop config to use OAuth2 instead of headers
Maintains the distinction between:
- Local MCP server (CLI, stdio transport)
- Remote MCP server (HTTP transport, MCP Registry)

The MCP Registry publishing only applies to the remote server.
@matifali
matifali marked this pull request as ready for review January 25, 2026 08:42
Keep the document title as "MCP Server" per maintainer preference.
@coder-tasks

coder-tasks Bot commented Jan 25, 2026

Copy link
Copy Markdown
Contributor

Documentation Check

Previous Feedback

Fully Addressed - The documentation has been completely rewritten and now comprehensively covers MCP Registry integration.

Updated Documentation Includes

The PR updates with:

  • MCP Registry section with installation instructions for VS Code/GitHub Copilot and Claude Desktop
  • Clear distinction between local and remote MCP server modes
  • OAuth2 authentication details with RFC 9728 reference
  • Complete tool reference documenting all available MCP tools
  • Setup instructions for both registry-based and manual configuration
  • Troubleshooting section for common issues

The documentation now provides a complete guide from discovery through configuration, addressing all points from the previous review.

No Further Changes Needed

The documentation is comprehensive and ready for users to discover and use Coder through the MCP Registry.


Automated review via Coder Tasks

@matifali
matifali marked this pull request as draft January 26, 2026 02:50
@github-actions github-actions Bot added the stale This issue is like stale bread. label Feb 10, 2026
@github-actions github-actions Bot closed this Feb 14, 2026
@bpmct bpmct reopened this Jun 25, 2026
@github-actions

Copy link
Copy Markdown

Docs preview

📖 View docs preview for docs/ai-coder/mcp-server.md

Add workflow_dispatch with a manual semver version input and an opt-in
publish flag. Manual runs default to validate-only (mcp-publisher
validate) and never authenticate or publish unless explicitly requested.
Version is derived from the tag on release events or the input on manual
runs, and rejected unless it is valid semver so branch refs can never be
published as a version.

Generated with Coder Agents.
@github-actions github-actions Bot removed the stale This issue is like stale bread. label Jun 26, 2026
@matifali
matifali requested a review from bpmct June 26, 2026 13:25
@matifali
matifali marked this pull request as ready for review June 26, 2026 13:25
@coder-tasks

coder-tasks Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Documentation Check

Updates Needed

  • server.json - Documentation URL points to https://coder.com/docs/admin/mcp but the actual page lives at docs/ai-coder/mcp-server.md, which resolves to https://coder.com/docs/ai-coder/mcp-server
  • docs/ai-coder/mcp-server.md - Prerequisites section only lists the mcp-server-http experiment, but coderd/coderd.go (line ~1398) requires both oauth2 and mcp-server-http experiments for the remote MCP HTTP endpoint. The old docs correctly noted both. The oauth2 requirement is mentioned later in the Authentication section as a side note, but should also appear in Prerequisites where users first configure the feature.
  • docs/ai-coder/mcp-server.md - Available Tools table is missing coder_get_template (present in codersdk/toolsdk/toolsdk.go). Hardcoded tool tables also risk drifting from code over time; consider linking to the toolsdk reference instead, which the previous version of this page did.

Automated review via Coder Agents

bpmct added 3 commits June 26, 2026 15:41
Move workflow_dispatch inputs into step env vars so they are not expanded
inside run blocks (zizmor template-injection), and set
persist-credentials: false on checkout (artipacked). Also run the markdown
table formatter on docs/ai-coder/mcp-server.md to satisfy fmt and
lint-docs.

Generated with Coder Agents.
Point server.json documentation at the real page
(/docs/ai-coder/mcp-server). List both the oauth2 and mcp-server-http
experiments in Prerequisites, matching the remote MCP HTTP endpoint gate in
coderd.go. Add the missing coder_get_template tool and link the tool tables
to the authoritative toolsdk package to reduce drift.

Generated with Coder Agents.
The per-category tool tables drift from the code over time. Replace them
with a short overview of tool areas and a link to the authoritative toolsdk
package, matching the previous version of this page.

Generated with Coder Agents.
@bpmct
bpmct merged commit 18efcb6 into main Jun 26, 2026
36 of 37 checks passed
@bpmct
bpmct deleted the mux/publish-mcp-registry branch June 26, 2026 16:20
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 26, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Publish Coder remote MCP server to MCP registry

2 participants