-
Notifications
You must be signed in to change notification settings - Fork 30
Description
Is your feature request related to a problem? Please describe.
APM currently supports simple MCP server references in apm.yml:
dependencies:
mcp:
- github
- nx-mcpHowever, this doesn't align with the MCP specification which requires additional configuration for enterprise deployments:
- Authorization (spec): Bearer tokens, custom headers, authentication methods
- Connection types: HTTP vs stdio transports with different parameters
- Input parameters: Runtime prompts for credentials and configuration
- Environment variables: Server-specific environment configuration
This forces users to maintain MCP configuration separately (e.g., .vscode/mcp.json), creating duplication and preventing APM packages from fully encapsulating their MCP requirements.
Describe the solution you'd like
Extend apm.yml to support MCP specification-compliant configuration:
dependencies:
mcp:
# Simple form (backward compatible)
- nx-mcp
# Extended form (new)
- name: github-enterprise
type: http
url: https://copilot-api.company.ghe.com/mcp
auth:
type: bearer
token_env: GITHUB_MCP_PAT
inputs:
- id: github_mcp_pat
type: promptString
description: "GitHub Enterprise PAT"
password: trueKey capabilities needed:
- HTTP and stdio transport configuration
- Authorization headers and tokens per MCP spec
- Input parameter definitions
- Environment variable mapping
- Export to runtime-specific formats:
apm mcp export --runtime vscode
This would enable APM packages to fully specify MCP dependencies and allow users to generate runtime configs from a single source.
Describe alternatives you've considered
- Status quo: Keep MCP config separate - but this prevents portability and creates maintenance burden
- Template generation:
apm mcp init --template enterprise- doesn't solve package portability - External config files: Reference
.apm/mcp-config.json- adds file management overhead
All alternatives require manual per-project setup, whereas inline configuration in apm.yml enables true package-based distribution.
Additional context
Enterprise scenario: Platform teams need to distribute standardized MCP configurations (GitHub Enterprise endpoints, internal tools) across multiple repositories. Currently requires maintaining configs in multiple places (APM, VS Code, scaffolding tools).
MCP Spec alignment:
- Authorization
- Capability negotiation
- VS Code implementation: .vscode/mcp.json format
Backward compatibility: Simple string references would continue working; extended config is opt-in.
Impact: Enables APM packages to fully specify MCP requirements per the MCP specification, improving enterprise adoption and reducing configuration management overhead.