Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Support multiple remote toolsets via URL for managed MCP clients without custom headers

Abierto
#3,233 0 comentarios 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
45/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
go

Línea de trabajo

Empieza rastreando el enrutamiento de URL del servidor remoto alojado para /mcp/x/{toolset}, /readonly y /x/all, y compáralo después con la validación y normalización existentes de X-MCP-Toolsets. Define y documenta una forma de URL segura para múltiples toolsets, incluida la precedencia cuando también están presentes las cabeceras. Se considera terminado cuando los clientes administrados pueden seleccionar un paquete acotado y validado sin usar /x/all.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement server
Describe the feature or problem you’d like to solve

The hosted GitHub MCP server currently supports a single toolset by URL (/mcp/x/{toolset}) and multiple toolsets through the X-MCP-Toolsets request header.

That leaves managed MCP clients that expose the server endpoint and OAuth configuration but do not allow arbitrary per-request HTTP headers unable to select a bounded combination of toolsets. One concrete example is a ChatGPT custom/developer MCP app: its current app configuration flow exposes endpoint/metadata/authentication and tool scanning, but not an arbitrary X-MCP-Toolsets header field.

The practical choices are therefore currently:

  1. remain on the default toolset and lose useful optional capabilities;
  2. create several separate MCP app connections, one per /x/{toolset} URL; or
  3. use /x/all, which exposes substantially more tools than needed and works against least-privilege/tool-surface minimization.

My concrete desired bundle is:

default,actions,projects,git,notifications,governance

The use case is an interactive GitHub MCP connection that needs ordinary repository/issue/PR operations plus CI inspection/control, Projects, repository tree access, notifications, and governance, while intentionally not exposing unrelated toolsets.

Proposed solution

Add a URL-addressable way to select multiple toolsets on the hosted remote server, while preserving the existing header behavior. For example, one of:

  • /mcp/x/default,actions,projects,git,notifications,governance
  • /mcp?toolsets=default,actions,projects,git,notifications,governance
  • another documented, URL-safe equivalent.

Requirements I would suggest:

  • use the same validation/normalization as X-MCP-Toolsets;
  • support the default pseudo-toolset plus additional toolsets;
  • reject unknown toolsets rather than silently broadening access;
  • remain composable with /readonly and existing URL-addressable modes where applicable;
  • keep headers authoritative when both mechanisms are present, or document an unambiguous precedence rule;
  • do not make /x/all the required workaround for managed clients.
Example prompts or workflows

A managed ChatGPT MCP app could point to one stable endpoint representing exactly the approved bundle, then scan tools normally. The same pattern would help other hosted/managed MCP clients that cannot inject custom headers.

Why this matters

GitHub already recommends selecting only the toolsets needed because tool-surface size affects model tool selection and security. URL-addressable multi-toolset selection lets managed clients follow that recommendation instead of choosing between missing capabilities, duplicated app connections, or all.

This request is separate from #3231 / PR #3232, which address patch-safe large-file updates.

Lenguaje dominante
Go
Estrellas
33.1k
Forks
5k
Merge medio
2 d 1 h
PR fusionados (30 d)
25

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de github/github-mcp-server

Todos los issues de github/github-mcp-server

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.