Support MCP resources/read primitive
- Ngôn ngữ chính
- Shell
- Star
- 11.2k
- Fork
- 1.9k
- Merge trung bình
- 14 giờ 16 phút
- Pull request đã merge (30 ngày)
- 6
Mô tả
### Describe the feature or problem you'd like to solve
MCP servers can expose data through the `resources` primitive (`resources/list`, `resources/read`). This is one of the three core MCP primitives alongside tools and prompts.
Currently, Copilot CLI only supports MCP **tools**. When an MCP tool returns a resource URI (e.g. `knowledge://domain/version/topic`), the agent has no way to read it and falls back to `web_fetch`, which fails on custom URI schemes:
```
✓ search_topics: pekko kafka consumer actor ordering sharding entity
└ Found 5 results for "pekko kafka consumer actor ordering sharding entity":
✗ Fetching web content: knowledge://hyraco/2.2.2/support/pekko
TypeError: fetch failed
✗ Fetching web content: knowledge://hyraco/2.2.2/support/kafka
TypeError: fetch failed
```
### Proposed solution
Implement MCP `resources/list` and `resources/read` support so the agent can:
1. Discover available resources from connected MCP servers
2. Read resource content by URI when tools return resource references
This would bring Copilot CLI's MCP support in line with Claude Code, which already supports all three MCP primitives.
### Additional context
- MCP spec: https://modelcontextprotocol.io/docs/concepts/resources
- The workaround for MCP server authors is to inline content in tool responses, but this increases token usage and loses the two-step search-then-read pattern that resources enable.
Hướng dẫn đóng góp
Đánh giá
Issue này chưa được đánh giá.