Skip to content

feat(tools): add symbol_workspace search tool #14

@CalvinAllen

Description

@CalvinAllen

Summary

Add a new MCP tool symbol_workspace that searches for symbols across all projects in the solution.

Details

  • Iterates through all projects and their items
  • Extracts symbols using FileCodeModel
  • Filters by query string (case-insensitive contains)
  • Returns matching symbols with file locations
  • Supports maxResults parameter for performance

Implementation Tasks

  • Add SearchWorkspaceSymbolsAsync(string query, int maxResults) to IVisualStudioRpc in RpcContracts.cs
  • Add SearchWorkspaceSymbolsAsync to IVisualStudioService.cs
  • Implement SearchWorkspaceSymbolsAsync in VisualStudioService.cs
  • Add helper method to recursively iterate ProjectItems
  • Add forwarding method in RpcServer.cs
  • Add proxy method in RpcClient.cs
  • Add symbol_workspace tool method to NavigationTools.cs
  • Build and verify no errors

Dependencies

Notes

This is Phase 2 of the LSP-style navigation tools feature. Builds on the symbol extraction pattern from Phase 1.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions