5.2 KiB
5.2 KiB
Feature Parity Between Python MCP and TypeScript Extension
This document tracks the feature parity between the Python MCP implementation (~/work/hanzo/mcp) and the TypeScript extension (~/work/hanzo/extension).
Tool Parity Status
✅ Fully Implemented in Both
| Tool Category | Tool Name | Python MCP | TypeScript Extension | Notes |
|---|---|---|---|---|
| File System | read | ✅ | ✅ | |
| write | ✅ | ✅ | ||
| edit | ✅ | ✅ | ||
| multi_edit | ✅ | ✅ | ||
| directory_tree | ✅ | ✅ | ||
| find_files | ✅ | ✅ | ||
| grep | ✅ | ✅ | ||
| git_search | ✅ | ✅ | Newly added | |
| content_replace | ✅ | ✅ | Newly added | |
| diff | ✅ | ✅ | Newly added | |
| Search | symbols | ✅ | ✅ | |
| search | ✅ | ✅ | Unified search | |
| batch_search | ✅ | ✅ | Newly added | |
| Shell | bash | ✅ | ✅ | Newly added |
| run_command | ✅ | ✅ | ||
| run_background | ✅ | ✅ | Newly added | |
| processes | ✅ | ✅ | Newly added | |
| pkill | ✅ | ✅ | Newly added | |
| logs | ✅ | ✅ | Newly added | |
| npx | ✅ | ✅ | Newly added | |
| uvx | ✅ | ✅ | Newly added | |
| open | ✅ | ✅ | ||
| Development | todo | ✅ | ✅ | Unified |
| think | ✅ | ✅ | ||
| critic | ✅ | ✅ | Newly added | |
| AI/LLM | llm | ✅ | ✅ | Newly added |
| consensus | ✅ | ✅ | Newly added | |
| agent | ✅ | ✅ | Newly added | |
| mode | ✅ | ✅ | Newly added | |
| Database | sql_query | ✅ | ✅ | |
| sql_search | ✅ | ✅ | ||
| sql_stats | ✅ | ✅ | ||
| graph_* | ✅ | ✅ | Graph operations | |
| Vector | vector_index | ✅ | ✅ | |
| vector_search | ✅ | ✅ | ||
| Utility | batch | ✅ | ✅ | Newly added - consolidated tool |
| web_fetch | ✅ | ✅ | ||
| rules | ✅ | ✅ | ||
| config | ✅ | ✅ | ||
| System | stats | ✅ | ✅ | |
| tool_enable | ✅ | ✅ | ||
| tool_disable | ✅ | ✅ | ||
| tool_list | ✅ | ✅ | ||
| MCP | mcp | ✅ | ✅ | Newly added - manage arbitrary MCP servers |
🚧 Python-Only Tools (Not Implemented in TypeScript)
| Tool | Reason | Priority |
|---|---|---|
| watch | File watching in VS Code is limited | Low |
| neovim_* | Editor-specific tools | Low |
| mcp_* | MCP management tools | Medium |
🚧 TypeScript-Only Tools
| Tool | Reason | Priority |
|---|---|---|
| zen | VS Code specific implementation | N/A |
| palette | VS Code command palette integration | N/A |
Test Coverage
New Test Files Added
-
batch-tools.test.ts
- Sequential and parallel batch execution
- Error handling and timeout support
- Batch search with deduplication
- Tool handler registration
-
ai-tools.test.ts
- LLM provider integration (OpenAI, Anthropic, local)
- Consensus mechanism across multiple LLMs
- Agent delegation with different personalities
- Development mode management
-
bash-tools.test.ts
- Command execution with sessions
- Background process management
- Process monitoring and logging
- NPX and UVX package runners
Key Improvements Made
-
Batch Tool Enhancement
- Proper tool handler registration system
- Support for parallel and sequential execution
- Timeout handling per operation
- Detailed execution results
-
AI Tools Integration
- Unified LLM interface for multiple providers
- Consensus mechanism for multi-LLM queries
- Development mode system with 10+ personalities
- Agent delegation for specialized tasks
-
Shell Tools Expansion
- Full bash session support with persistence
- Background process management
- Process monitoring and log streaming
- Package runner integration (npx, uvx)
-
Search Tools Enhancement
- Git history and diff search
- Content replacement across files
- Batch search operations
- File watching (limited implementation)
Authentication & Cloud Features
- ✅ Standalone authentication against iam.hanzo.ai
- ✅ Anonymous mode (--anon) for local-only usage
- ✅ OAuth flow with device ID generation
- ✅ Token refresh mechanism
Platform Support
- ✅ VS Code Extension
- ✅ Cursor IDE
- ✅ Windsurf IDE
- ✅ Claude Desktop
- ✅ Claude Code (via DXT)
- ✅ Standalone CLI via npx
Build System
All build targets are supported:
npm run build- Standard VS Code extensionnpm run build:claude-desktop- Claude Desktop MCP servernpm run build:dxt- Desktop Extension packagenpm run build:all- All targets
GitHub Actions automatically builds and releases all versions on tag push.
Next Steps
-
Performance Optimization
- Implement caching for frequently used tools
- Optimize batch operations for large datasets
- Add streaming support for long-running operations
-
Enhanced Testing
- Add integration tests for cross-tool workflows
- Add performance benchmarks
- Increase test coverage to >90%
-
Documentation
- Complete API documentation for all tools
- Add more usage examples
- Create video tutorials
-
Feature Additions
- Implement remaining Python-only tools if needed
- Add more AI agent personalities
- Enhance consensus mechanism with voting strategies