Skip to content

v0.10.19: Switch MCP server to AITools.BinlogMcp#9

Merged
YuliiaKovalova merged 1 commit into
mainfrom
switch-to-aitools-binlogmcp-v2
May 19, 2026
Merged

v0.10.19: Switch MCP server to AITools.BinlogMcp#9
YuliiaKovalova merged 1 commit into
mainfrom
switch-to-aitools-binlogmcp-v2

Conversation

@YuliiaKovalova
Copy link
Copy Markdown
Contributor

@YuliiaKovalova YuliiaKovalova commented May 19, 2026

Summary

Replaces BinlogInsights.Mcp (nuget.org) with AITools.BinlogMcp from the dotnet-eng feed as the underlying MCP server. Version bumped to 0.10.19.

Customer transition

Scenario Behavior
Has BinlogInsights.Mcp installed Auto-installs AITools.BinlogMcp, prompts to uninstall old tool
Has AITools.BinlogMcp installed Uses it directly
Has neither installed Auto-installs from dotnet-eng feed (--prerelease --add-source)
Custom mcpServerPath set No change — uses custom path as-is
Has mcp.json with old server Detected — serverMatchesBinlogMcp() recognizes both old and new

Package & executable changes

Old New
Package ID BinlogInsights.Mcp AITools.BinlogMcp
Executable binlog-insights-mcp binlog-mcp
Feed nuget.org pkgs.dev.azure.com/dnceng/public/.../dotnet-eng
Install flags (none) --prerelease --add-source <feed>

Format compatibility

AITools.BinlogMcp returns different response formats. All are handled with backward compat:

Tool Old format New format Fix
binlog_overview JSON object Human-readable text Parse both
binlog_search JSON array Human-readable text parseSearchResults() helper
binlog_projects fullPath property projectFile property Read both
binlog_evaluations JSON array Text [id=N] path (Nms) Parse text lines
binlog_tasks_in_target target_name param target param Fixed
binlog_task_details task_name param task_id (int) param Store + pass task ID

Other fixes

  • Multi-binlog removal — always inject binlog_file in tree MCP calls to prevent stale state errors
  • Consistent project countbinlog_lm_overview appends deduplicated count from binlog_projects
  • Unknown tools — graceful "not available" message instead of red error for unregistered tools
  • Version detection — checks both aitools.binlogmcp and binloginsights.mcp store paths

Files changed (10 files, +317 -164)

  • extension.ts — MCP package switch, migration logic, search parsing, binlog_file injection
  • binlogTreeView.ts — format compat for evaluations/search/analyzers, taskId storage, binlog_file injection
  • binlogDocumentProvider.ts — text overview parsing, projectFile property support
  • languageModelTools.ts — enrich overview with deduplicated project count
  • mcpClient.ts, chatParticipant.ts — package name references
  • package.json — version bump, updated descriptions and prompts
  • README.md — updated install instructions and feed references
  • CHANGELOG.md — 0.10.19 entry
  • resources/playbooks/core.md — updated tool references

All 208 tests pass.

….19)

Replace BinlogInsights.Mcp (nuget.org) with AITools.BinlogMcp from the
dotnet-eng Azure DevOps feed as the underlying MCP server.

Package & executable:
- Package: BinlogInsights.Mcp → AITools.BinlogMcp
- Executable: binlog-insights-mcp → binlog-mcp
- Feed: nuget.org → pkgs.dev.azure.com/dnceng/public/.../dotnet-eng
- Install commands now use --prerelease --add-source flags

Format compatibility (AITools.BinlogMcp uses different response formats):
- binlog_overview: text instead of JSON → parse both formats
- binlog_search: text instead of JSON → parseSearchResults() helper
- binlog_projects: projectFile instead of fullPath → handle both
- binlog_evaluations: text format → parse [id=N] lines
- binlog_tasks_in_target: parameter 'target' not 'target_name'
- binlog_task_details: uses task_id (int) not task_name

Smooth customer transition:
- findMcpTool() detects both binlog-mcp and binlog-insights-mcp
- Auto-migrates: installs new tool when old one is detected
- Shows migration prompt with command to uninstall old tool
- Version detection checks both tool store paths
- serverMatchesBinlogMcp() recognizes old and new server configs
- Graceful 'not available' message for unregistered tools

Other improvements:
- Always inject binlog_file in tree MCP calls (fixes stale state after
  binlog removal)
- Consistent unique project count in overview (dedup via binlog_projects)
- Store taskId on tree items for task detail lookups

All 208 tests pass. Version bumped to 0.10.19.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@YuliiaKovalova YuliiaKovalova force-pushed the switch-to-aitools-binlogmcp-v2 branch from 237603b to 3193889 Compare May 19, 2026 18:35
@YuliiaKovalova YuliiaKovalova merged commit caca8aa into main May 19, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants