- Fix tool wrappers to call vultr_client methods directly instead of resource functions
- Resolve "FunctionResource object is not callable" error in Claude Desktop
- Tool wrappers now properly call vultr_client.list_domains(), vultr_client.get_domain(), etc.
- Maintains hybrid approach while fixing the execution error
- Bump version to 1.0.4
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add tool wrappers for all resource endpoints to ensure Claude Desktop can access them
- Implement hybrid approach: resources for MCP spec compliance, tools for practical usage
- Add 5 new tool wrappers: list_domains_tool, get_domain_tool, list_records_tool, get_record_tool, analyze_domain_tool
- Update documentation to reflect the hybrid approach
- Bump version to 1.0.3
This ensures compatibility with Claude Desktop while maintaining MCP best practices.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Convert all read/list operations from tools to resources following MCP best practices
- Add @mcp.resource decorators for domains, records, and analysis endpoints
- Update version to 1.0.2
- Add uvx support documentation for Claude Desktop integration
- Fix CLI asyncio usage for FastMCP synchronous run() method
- Add vultr-mcp-server console script entry point
This improves alignment with MCP patterns where resources represent
readable data and tools perform actions that modify state.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>