hanzo-mcp 0.9.2__tar.gz → 0.9.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of hanzo-mcp might be problematic. Click here for more details.

Files changed (243) hide show
  1. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/PKG-INFO +1 -1
  2. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/agent_tool_v1_deprecated.py +43 -2
  3. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp.egg-info/PKG-INFO +1 -1
  4. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/pyproject.toml +1 -1
  5. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/README.md +0 -0
  6. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/__init__.py +0 -0
  7. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/__main__.py +0 -0
  8. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/analytics/__init__.py +0 -0
  9. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/analytics/posthog_analytics.py +0 -0
  10. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/bridge.py +0 -0
  11. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/cli.py +0 -0
  12. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/cli_enhanced.py +0 -0
  13. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/cli_plugin.py +0 -0
  14. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/compute_nodes.py +0 -0
  15. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/config/__init__.py +0 -0
  16. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/config/settings.py +0 -0
  17. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/config/tool_config.py +0 -0
  18. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/core/base_agent.py +0 -0
  19. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/core/model_registry.py +0 -0
  20. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/dev_server.py +0 -0
  21. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/__init__.py +0 -0
  22. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/compact_conversation.py +0 -0
  23. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/create_release.py +0 -0
  24. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/enhanced_prompts.py +0 -0
  25. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/example_custom_prompt.py +0 -0
  26. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/project_system.py +0 -0
  27. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/project_todo_reminder.py +0 -0
  28. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/tool_explorer.py +0 -0
  29. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/prompts/utils.py +0 -0
  30. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/server.py +0 -0
  31. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/server_enhanced.py +0 -0
  32. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/__init__.py +0 -0
  33. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/__init__.py +0 -0
  34. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/agent.py +0 -0
  35. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/agent_tool.py +0 -0
  36. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/clarification_protocol.py +0 -0
  37. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/clarification_tool.py +0 -0
  38. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/claude_cli_tool.py +0 -0
  39. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/claude_desktop_auth.py +0 -0
  40. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/cli_agent_base.py +0 -0
  41. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/cli_tools.py +0 -0
  42. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/code_auth.py +0 -0
  43. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/code_auth_tool.py +0 -0
  44. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/codex_cli_tool.py +0 -0
  45. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/critic_tool.py +0 -0
  46. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/gemini_cli_tool.py +0 -0
  47. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/grok_cli_tool.py +0 -0
  48. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/iching_tool.py +0 -0
  49. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/network_tool.py +0 -0
  50. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/prompt.py +0 -0
  51. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/review_tool.py +0 -0
  52. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/swarm_alias.py +0 -0
  53. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/swarm_tool.py +0 -0
  54. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/swarm_tool_v1_deprecated.py +0 -0
  55. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/tool_adapter.py +0 -0
  56. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/agent/unified_cli_tools.py +0 -0
  57. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/__init__.py +0 -0
  58. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/auto_timeout.py +0 -0
  59. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/base.py +0 -0
  60. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/batch_tool.py +0 -0
  61. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/config_tool.py +0 -0
  62. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/context.py +0 -0
  63. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/context_fix.py +0 -0
  64. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/critic_tool.py +0 -0
  65. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/decorators.py +0 -0
  66. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/enhanced_base.py +0 -0
  67. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/fastmcp_pagination.py +0 -0
  68. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/forgiving_edit.py +0 -0
  69. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/mode.py +0 -0
  70. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/mode_loader.py +0 -0
  71. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/paginated_base.py +0 -0
  72. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/paginated_response.py +0 -0
  73. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/pagination.py +0 -0
  74. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/permissions.py +0 -0
  75. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/personality.py +0 -0
  76. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/plugin_loader.py +0 -0
  77. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/stats.py +0 -0
  78. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/test_helpers.py +0 -0
  79. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/thinking_tool.py +0 -0
  80. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/timeout_parser.py +0 -0
  81. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/tool_disable.py +0 -0
  82. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/tool_enable.py +0 -0
  83. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/tool_list.py +0 -0
  84. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/truncate.py +0 -0
  85. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/common/validation.py +0 -0
  86. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/config/__init__.py +0 -0
  87. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/config/config_tool.py +0 -0
  88. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/config/index_config.py +0 -0
  89. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/config/mode_tool.py +0 -0
  90. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/__init__.py +0 -0
  91. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/database_manager.py +0 -0
  92. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/graph.py +0 -0
  93. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/graph_add.py +0 -0
  94. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/graph_query.py +0 -0
  95. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/graph_remove.py +0 -0
  96. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/graph_search.py +0 -0
  97. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/graph_stats.py +0 -0
  98. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/sql.py +0 -0
  99. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/sql_query.py +0 -0
  100. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/sql_search.py +0 -0
  101. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/database/sql_stats.py +0 -0
  102. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/editor/__init__.py +0 -0
  103. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/editor/neovim_command.py +0 -0
  104. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/editor/neovim_edit.py +0 -0
  105. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/editor/neovim_session.py +0 -0
  106. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/__init__.py +0 -0
  107. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/ast_multi_edit.py +0 -0
  108. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/ast_tool.py +0 -0
  109. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/base.py +0 -0
  110. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/batch_search.py +0 -0
  111. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/content_replace.py +0 -0
  112. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/diff.py +0 -0
  113. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/directory_tree.py +0 -0
  114. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/directory_tree_paginated.py +0 -0
  115. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/edit.py +0 -0
  116. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/find.py +0 -0
  117. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/find_files.py +0 -0
  118. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/git_search.py +0 -0
  119. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/grep.py +0 -0
  120. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/multi_edit.py +0 -0
  121. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/read.py +0 -0
  122. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/rules_tool.py +0 -0
  123. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/search_tool.py +0 -0
  124. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/symbols_tool.py +0 -0
  125. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/tree.py +0 -0
  126. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/unix_aliases.py +0 -0
  127. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/watch.py +0 -0
  128. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/filesystem/write.py +0 -0
  129. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/jupyter/__init__.py +0 -0
  130. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/jupyter/base.py +0 -0
  131. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/jupyter/jupyter.py +0 -0
  132. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/jupyter/notebook_edit.py +0 -0
  133. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/jupyter/notebook_read.py +0 -0
  134. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/llm/__init__.py +0 -0
  135. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/llm/consensus_tool.py +0 -0
  136. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/llm/llm_manage.py +0 -0
  137. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/llm/llm_tool.py +0 -0
  138. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/llm/llm_unified.py +0 -0
  139. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/llm/provider_tools.py +0 -0
  140. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/lsp/__init__.py +0 -0
  141. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/lsp/lsp_tool.py +0 -0
  142. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/mcp/__init__.py +0 -0
  143. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/mcp/mcp_add.py +0 -0
  144. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/mcp/mcp_remove.py +0 -0
  145. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/mcp/mcp_stats.py +0 -0
  146. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/mcp/mcp_tool.py +0 -0
  147. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/memory/__init__.py +0 -0
  148. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/memory/knowledge_tools.py +0 -0
  149. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/memory/memory_tools.py +0 -0
  150. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/search/__init__.py +0 -0
  151. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/search/find_tool.py +0 -0
  152. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/search/unified_search.py +0 -0
  153. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/__init__.py +0 -0
  154. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/auto_background.py +0 -0
  155. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/base.py +0 -0
  156. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/base_process.py +0 -0
  157. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/bash_session.py +0 -0
  158. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/bash_session_executor.py +0 -0
  159. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/bash_tool.py +0 -0
  160. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/command_executor.py +0 -0
  161. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/logs.py +0 -0
  162. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/npx.py +0 -0
  163. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/npx_background.py +0 -0
  164. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/npx_tool.py +0 -0
  165. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/open.py +0 -0
  166. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/pkill.py +0 -0
  167. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/process_tool.py +0 -0
  168. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/processes.py +0 -0
  169. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/run_background.py +0 -0
  170. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/run_command.py +0 -0
  171. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/run_command_windows.py +0 -0
  172. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/session_manager.py +0 -0
  173. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/session_storage.py +0 -0
  174. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/streaming_command.py +0 -0
  175. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/uvx.py +0 -0
  176. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/uvx_background.py +0 -0
  177. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/uvx_tool.py +0 -0
  178. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/shell/zsh_tool.py +0 -0
  179. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/todo/__init__.py +0 -0
  180. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/todo/base.py +0 -0
  181. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/todo/todo.py +0 -0
  182. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/todo/todo_read.py +0 -0
  183. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/todo/todo_write.py +0 -0
  184. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/__init__.py +0 -0
  185. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/ast_analyzer.py +0 -0
  186. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/git_ingester.py +0 -0
  187. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/index_tool.py +0 -0
  188. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/infinity_store.py +0 -0
  189. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/mock_infinity.py +0 -0
  190. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/project_manager.py +0 -0
  191. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/vector.py +0 -0
  192. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/vector_index.py +0 -0
  193. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/tools/vector/vector_search.py +0 -0
  194. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp/types.py +0 -0
  195. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp.egg-info/SOURCES.txt +0 -0
  196. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp.egg-info/dependency_links.txt +0 -0
  197. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp.egg-info/entry_points.txt +0 -0
  198. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp.egg-info/requires.txt +0 -0
  199. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/hanzo_mcp.egg-info/top_level.txt +0 -0
  200. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/setup.cfg +0 -0
  201. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_agent_tools_ci.py +0 -0
  202. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_async_support.py +0 -0
  203. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_batch_tool_edge_cases.py +0 -0
  204. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_cli.py +0 -0
  205. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_cli_agents_consolidated.py +0 -0
  206. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_cli_tools.py +0 -0
  207. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_e2e_demo.py +0 -0
  208. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_e2e_simple.py +0 -0
  209. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_failure_cases.py +0 -0
  210. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_find_tool_ffind.py +0 -0
  211. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_find_tool_integration.py +0 -0
  212. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_find_tool_registration.py +0 -0
  213. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_git_ingestion.py +0 -0
  214. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_hanzo_agents_integration.py +0 -0
  215. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_hanzo_mcp_integration.py +0 -0
  216. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_hanzo_mcp_local.py +0 -0
  217. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_hanzo_mcp_simple.py +0 -0
  218. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_hanzo_network_integration.py +0 -0
  219. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_litellm_warnings.py +0 -0
  220. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_lsp_tool.py +0 -0
  221. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_manual.py +0 -0
  222. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_memory_base.py +0 -0
  223. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_memory_basic.py +0 -0
  224. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_memory_consolidated.py +0 -0
  225. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_memory_simple.py +0 -0
  226. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_memory_utils.py +0 -0
  227. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_new_tools.py +0 -0
  228. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_no_stubs.py +0 -0
  229. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_performance.py +0 -0
  230. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_search.py +0 -0
  231. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_search_quality.py +0 -0
  232. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_shell_features.py +0 -0
  233. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_shell_tools.py +0 -0
  234. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_simple.py +0 -0
  235. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_stdio_protocol.py +0 -0
  236. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_stdio_simple.py +0 -0
  237. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_streaming_command.py +0 -0
  238. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_swarm_simple.py +0 -0
  239. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_tools_suite.py +0 -0
  240. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_unified_search.py +0 -0
  241. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_utils.py +0 -0
  242. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_vector_store.py +0 -0
  243. {hanzo_mcp-0.9.2 → hanzo_mcp-0.9.3}/tests/test_web3_integration.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hanzo-mcp
3
- Version: 0.9.2
3
+ Version: 0.9.3
4
4
  Summary: The Zen of Hanzo MCP: One server to rule them all. The ultimate MCP that orchestrates all others.
5
5
  Author-email: Hanzo Industries Inc <dev@hanzo.ai>
6
6
  License: MIT
@@ -450,6 +450,9 @@ AGENT RESPONSES:
450
450
  tool_call_count = len(message.tool_calls)
451
451
  await tool_ctx.info(f"Processing {tool_call_count} tool calls")
452
452
 
453
+ # Track which tool calls we've processed to ensure all get results
454
+ tool_results_to_add = []
455
+
453
456
  for tool_call in message.tool_calls:
454
457
  total_tool_use_count += 1
455
458
  function_name = tool_call.function.name
@@ -542,8 +545,8 @@ AGENT RESPONSES:
542
545
  await tool_ctx.info(
543
546
  f"tool {function_name} run with args {function_args} and return {tool_result[: min(100, len(tool_result))]}"
544
547
  )
545
- # Add the tool result to messages
546
- messages.append(
548
+ # Add the tool result to the list
549
+ tool_results_to_add.append(
547
550
  {
548
551
  "role": "tool",
549
552
  "tool_call_id": tool_call.id,
@@ -552,6 +555,9 @@ AGENT RESPONSES:
552
555
  }
553
556
  )
554
557
 
558
+ # Add all tool results to messages atomically
559
+ messages.extend(tool_results_to_add)
560
+
555
561
  # Log progress
556
562
  await tool_ctx.info(f"Processed {len(message.tool_calls)} tool calls. Total: {total_tool_use_count}")
557
563
 
@@ -559,6 +565,41 @@ AGENT RESPONSES:
559
565
  await tool_ctx.error(f"Error in model call: {str(e)}")
560
566
  # Avoid trying to JSON serialize message objects
561
567
  await tool_ctx.error(f"Message count: {len(messages)}")
568
+
569
+ # CRITICAL FIX: Ensure we add tool_result messages for any tool_use blocks that were added
570
+ # Get the last assistant message (which has the tool_calls)
571
+ last_assistant_msg = None
572
+ for msg in reversed(messages):
573
+ if msg.get("role") == "assistant" and hasattr(msg, "tool_calls"):
574
+ last_assistant_msg = msg
575
+ break
576
+
577
+ # If there are orphaned tool calls, add error results for them
578
+ if last_assistant_msg and hasattr(last_assistant_msg, "tool_calls"):
579
+ # Count how many tool results we already have after this message
580
+ tool_results_count = 0
581
+ found_assistant = False
582
+ for msg in reversed(messages):
583
+ if msg == last_assistant_msg:
584
+ found_assistant = True
585
+ break
586
+ if found_assistant and msg.get("role") == "tool":
587
+ tool_results_count += 1
588
+
589
+ # Add error results for any missing tool calls
590
+ expected_results = len(last_assistant_msg.tool_calls)
591
+ if tool_results_count < expected_results:
592
+ for i in range(tool_results_count, expected_results):
593
+ tool_call = last_assistant_msg.tool_calls[i]
594
+ messages.append(
595
+ {
596
+ "role": "tool",
597
+ "tool_call_id": tool_call.id,
598
+ "name": tool_call.function.name,
599
+ "content": f"Error: Tool execution interrupted - {str(e)}",
600
+ }
601
+ )
602
+
562
603
  return f"Error in agent execution: {str(e)}"
563
604
 
564
605
  # If we've reached the limit, add a warning and get final response
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hanzo-mcp
3
- Version: 0.9.2
3
+ Version: 0.9.3
4
4
  Summary: The Zen of Hanzo MCP: One server to rule them all. The ultimate MCP that orchestrates all others.
5
5
  Author-email: Hanzo Industries Inc <dev@hanzo.ai>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "hanzo-mcp"
7
- version = "0.9.2"
7
+ version = "0.9.3"
8
8
  description = "The Zen of Hanzo MCP: One server to rule them all. The ultimate MCP that orchestrates all others."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes