Feature request
Is your feature request related to a problem?
I am building a multi-agent system where each agent has a different specialization. Agents already support per-agent MCP server configs via mcp-servers in the YAML frontmatter, which is excellent — each agent only sees the external tools it needs.
However, LSP servers are configured globally (user-level ~/.copilot/lsp-config.json or repo-level .github/lsp.json). There is no way to scope LSP servers to a specific agent.
This matters because different agents work with different languages and file types:
- A morning-command-center agent works primarily with Markdown and YAML (agent definitions, skill files, documentation). It needs
yaml-language-server but has no use for typescript-language-server.
- A deep-work-planner agent investigates codebases and would benefit from TypeScript, Python, and SQL LSP servers for code navigation.
- A communication-triage agent classifies messages and drafts responses — it has no need for any LSP server at all.
With global-only LSP config, every agent loads every configured LSP server regardless of whether it will use them. This wastes resources and increases startup time, especially when you have 7+ agents and 9+ LSP servers configured globally.
Describe the solution you would like
Allow agents to declare LSP servers in their .agent.md frontmatter, similar to mcp-servers:
---
name: deep-work-planner
lsp-servers:
typescript:
command: npx
args: ["--yes", "typescript-language-server", "--stdio"]
fileExtensions:
.ts: typescript
.tsx: typescript
python-typecheck:
command: npx
args: ["--yes", "pyright-langserver", "--stdio"]
fileExtensions:
.py: python
---
When an agent declares lsp-servers, only those LSP servers would be started for that agent session. If no lsp-servers block is present, fall back to the existing global/repo config.
Describe alternatives you have considered
- Maintaining separate repo-level
.github/lsp.json files per project — but this does not solve per-agent isolation within the same repo.
- Not configuring LSP servers globally and relying only on agents that need them — but this breaks the default CLI experience outside of agents.
Additional context
This would bring LSP config parity with MCP config, which already supports per-agent scoping. The pattern is already established in the agent frontmatter format — this would extend it to LSP.
Feature request
Is your feature request related to a problem?
I am building a multi-agent system where each agent has a different specialization. Agents already support per-agent MCP server configs via
mcp-serversin the YAML frontmatter, which is excellent — each agent only sees the external tools it needs.However, LSP servers are configured globally (user-level
~/.copilot/lsp-config.jsonor repo-level.github/lsp.json). There is no way to scope LSP servers to a specific agent.This matters because different agents work with different languages and file types:
yaml-language-serverbut has no use fortypescript-language-server.With global-only LSP config, every agent loads every configured LSP server regardless of whether it will use them. This wastes resources and increases startup time, especially when you have 7+ agents and 9+ LSP servers configured globally.
Describe the solution you would like
Allow agents to declare LSP servers in their
.agent.mdfrontmatter, similar tomcp-servers:When an agent declares
lsp-servers, only those LSP servers would be started for that agent session. If nolsp-serversblock is present, fall back to the existing global/repo config.Describe alternatives you have considered
.github/lsp.jsonfiles per project — but this does not solve per-agent isolation within the same repo.Additional context
This would bring LSP config parity with MCP config, which already supports per-agent scoping. The pattern is already established in the agent frontmatter format — this would extend it to LSP.