test-case: :mcp tools and :mcp tool <alias.name> #29

Closed
opened 2026-05-12 15:50:33 +00:00 by claude-noether · 1 comment
Collaborator

Steps

With boltzmann MCP connected (per prior test case):

  1. Run :mcp tools
  2. Run :mcp tool boltzmann.list_dir
  3. Run :mcp tool boltzmann.no_such_tool (should error gracefully)
  4. Run :mcp tool list_dir (no alias prefix — should error)

Expected

:mcp tools prints a flat list across all connected servers, indented:

  boltzmann.read_file          Read a file.
  boltzmann.write_file         Write content to a file.
  boltzmann.edit_file          Replace exact text in a file (literal match)...
  boltzmann.search_files       Search for files by pattern.
  boltzmann.shell_bg           Fire-and-forget shell command (Linux-only)...
  boltzmann.list_dir           List directory contents.
  boltzmann.shell              Execute a shell command.

:mcp tool boltzmann.list_dir prints the name, description, and the inputSchema as indented JSON.

:mcp tool boltzmann.no_such_tool[aish] unknown tool: boltzmann.no_such_tool.
:mcp tool list_dir[aish] unknown alias: list_dir (no dot in name → no alias parsed).

What this exercises

  • Cached tools/list lookup
  • inputSchema rendering via dkjson encode with indent
  • Error paths for unknown alias / unknown tool

Likely failure modes

  • inputSchema renders as [] instead of {} → dkjson empty-table-as-array issue (annoying but not load-bearing)
  • unknown alias: list_dir doesn't fire → the ^([^.]+)%.(.+)$ pattern silently matched something it shouldn't
## Steps With boltzmann MCP connected (per prior test case): 1. Run `:mcp tools` 2. Run `:mcp tool boltzmann.list_dir` 3. Run `:mcp tool boltzmann.no_such_tool` (should error gracefully) 4. Run `:mcp tool list_dir` (no alias prefix — should error) ## Expected `:mcp tools` prints a flat list across all connected servers, indented: ``` boltzmann.read_file Read a file. boltzmann.write_file Write content to a file. boltzmann.edit_file Replace exact text in a file (literal match)... boltzmann.search_files Search for files by pattern. boltzmann.shell_bg Fire-and-forget shell command (Linux-only)... boltzmann.list_dir List directory contents. boltzmann.shell Execute a shell command. ``` `:mcp tool boltzmann.list_dir` prints the name, description, and the inputSchema as indented JSON. `:mcp tool boltzmann.no_such_tool` → `[aish] unknown tool: boltzmann.no_such_tool`. `:mcp tool list_dir` → `[aish] unknown alias: list_dir` (no dot in name → no alias parsed). ## What this exercises - Cached `tools/list` lookup - inputSchema rendering via dkjson encode with indent - Error paths for unknown alias / unknown tool ## Likely failure modes - inputSchema renders as `[]` instead of `{}` → dkjson empty-table-as-array issue (annoying but not load-bearing) - `unknown alias: list_dir` doesn't fire → the `^([^.]+)%.(.+)$` pattern silently matched something it shouldn't
claude-noether added the test-case label 2026-05-12 15:50:33 +00:00
Author
Collaborator

PASS (executed 2026-05-12, fix folded in commit 3fa6279).

:mcp tools and :mcp tool boltzmann.list_dir rendered the expected list + inputSchema. Two error-path checks:

  • :mcp tool boltzmann.no_such_tool[aish] unknown tool: boltzmann.no_such_tool
  • :mcp tool list_dir (no dot) → originally printed unknown alias: nil (the expected text in the test case said unknown alias: list_dir). Surfaced as a regression; fixed in 3fa6279: now prints tool name missing alias prefix: list_dir, which is more informative than the test's expected and unambiguous.

Closing.

**PASS** (executed 2026-05-12, fix folded in commit 3fa6279). `:mcp tools` and `:mcp tool boltzmann.list_dir` rendered the expected list + inputSchema. Two error-path checks: - `:mcp tool boltzmann.no_such_tool` → `[aish] unknown tool: boltzmann.no_such_tool` ✓ - `:mcp tool list_dir` (no dot) → originally printed `unknown alias: nil` (the expected text in the test case said `unknown alias: list_dir`). Surfaced as a regression; fixed in `3fa6279`: now prints `tool name missing alias prefix: list_dir`, which is more informative than the test's expected and unambiguous. Closing.
Sign in to join this conversation.