- Added update_webhook and delete_label tools (58 total Gitea tools) - 97 unit tests (test_gitea_plugin.py) - Gitea now public for all users (DEFAULT_PUBLIC_PLUGINS) - Fixed merge_pull_request optional field handling Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
30 KiB
📝 Changelog
All notable changes to MCP Hub will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[3.6.0] — 2026-04-02
Gitea Plugin — Public Release (Track F.16)
Gitea plugin fully reviewed, tested, and published for public use. Two missing tools added, comprehensive test suite created.
Added
update_webhooktool: Update existing webhook configuration, events, and active status (admin scope)delete_labeltool: Delete labels from repositories (write scope)tests/test_gitea_plugin.py: Comprehensive test suite — 85+ tests covering client init, headers, tool specs, all 5 handler groups, health check, and plugin delegation
Changed
- Gitea plugin now public: Added
giteatoDEFAULT_PUBLIC_PLUGINS— available to all OAuth users - Tool count: 565 → 567 (added update_webhook + delete_label)
- env.example: Updated default
ENABLED_PLUGINSto includegitea
[3.5.0] — 2026-04-02
FastMCP Upgrade & Legacy Cleanup (Track F.15)
Major cleanup release: upgraded to FastMCP 3.x, removed all legacy modules, and simplified the architecture.
Changed
- FastMCP 3.x: Upgraded from
fastmcp>=2.14.0,<3.0.0tofastmcp>=3.0.0,<4.0.0 - HealthMonitor refactored: Removed
ProjectManagerdependency — now usesSiteManagerexclusively for site discovery and health checks - Endpoint introspection: Replaced internal
_tool_manager._toolsaccess with tracked_tool_countsdict inMCPEndpointFactory
Removed
server_multi.py: Legacy multi-endpoint server entry point (replaced by unifiedserver.pysince v3.0)core/project_manager.py: Legacy project manager shell — HealthMonitor no longer depends on it- Legacy exports: Removed
ProjectManagerandget_project_managerfromcore/__init__.py - References from
pyproject.toml(py-modules, ruff per-file-ignores), community build script, and documentation
[3.4.0] — 2026-03-31
OpenPanel Plugin — Public Release (Track F.10)
OpenPanel product analytics plugin fully reviewed, tested, and published for public use. Works with both self-hosted and cloud (openpanel.dev) instances.
Added
- OpenPanel Plugin (42 tools): Complete rewrite using public REST APIs — no tRPC/session dependency
- Track API (11 tools): track_event, page_view, screen_view, identify_user, set_user_properties, increment/decrement_property, create_group, assign_group, track_revenue, track_batch
- Export API (10 tools): export_events, export_events_csv, export_chart_data, get_event_count, get_unique_users, get_page_views, get_top_pages, get_top_referrers, get_geo_data, get_device_data
- Insights API (2 tools): get_overview_report, get_realtime_stats
- Profile API (3 tools): get_profile_events, get_profile_sessions, export_profile_data
- Manage API (10 tools): list/get/create/update/delete projects and clients
- System (6 tools): health_check, get_instance_info, get_usage_stats, get_storage_stats, test_connection, get_rate_limit_status
- Service Page descriptions: Per-plugin description and notes section on service detail pages
- Dynamic URL hints: Add Site form shows per-plugin URL guidance (e.g., OpenPanel API URL vs dashboard URL)
- WordPress plugin download: OpenPanel WordPress plugin bundled at
/static/plugins/openpanel-self-hosted.zip - 62 unit tests for OpenPanel plugin (
tests/test_openpanel_plugin.py)
Changed
ENABLED_PLUGINSdefault:wordpress,woocommerce,supabase,openpanel(was:wordpress,woocommerce,supabase)- OpenPanel health check uses
GET /healthcheck(was: non-existent/api/v1/oauth/token) - OpenPanel credential fields: added Project ID and Organization ID (optional)
Removed
- OpenPanel
alias_usertool (explicitly unsupported by OpenPanel API) - OpenPanel dashboard handler (18 tools) — no public API available, was placeholder stubs
- OpenPanel funnel handler (8 tools) — no public API available, was placeholder stubs
- tRPC client dependency — all tools now use public REST APIs
[3.3.0] — 2026-03-31
Platform Hardening & Admin Unification (Track F.1–F.8)
Major quality release: plugin visibility control, UI/UX polish, unified admin panel, database-backed settings, and security hardening. No breaking API changes.
Added
- Plugin Visibility Control (F.1):
ENABLED_PLUGINSenv var controls which plugins public users see. Default:wordpress,woocommerce,supabase. Admin sees all. New module:core/plugin_visibility.py - MCP Service Pages (F.3): Dedicated
/dashboard/services/{type}pages showing plugin capabilities, tool list, and setup requirements. Services list page with grid of plugin cards - Admin by Email (F.4a):
ADMIN_EMAILSenv var for designating OAuth users as admin (supports multiple emails). OAuth admin users see full admin sidebar - Master Key Scope Control (F.4b):
DISABLE_MASTER_KEY_LOGINto block dashboard login via master key.MASTER_KEY_SCOPE(all/admin) to restrict master key to admin endpoints only - Panel Unification (F.4c): OAuth admin sees both "My Tools" and "Administration" sidebar sections. Master key admin auto-creates user record on first login for unified site management
- Settings from UI (F.4c.3): Database-backed settings with DB > ENV > Default priority. Admin can edit
ENABLED_PLUGINS,MAX_SITES_PER_USER, rate limits, registration toggle from dashboard. New module:core/settings.py - Dashboard Stats (F.3): Admin home page shows Total Users and User Sites stat cards
- Pre-configured OAuth (F.2): Default OAuth redirect URIs for Claude.ai; green tip about optional OAuth
Fixed
- Connect Page (F.2): WordPress/SEO amber info box shown only for WordPress/WooCommerce sites (was shown for all plugin types)
- Sidebar Version (F.2): Fixed "v" displaying when version string is empty
- Auth Page Language (F.2): Auth page defaults to English regardless of Accept-Language header
- Donation Link (F.2): Moved from home page to sidebar for consistent visibility
- Test Connection (F.3): Fixed 504/HTML error handling; status badge auto-updates without page refresh; added
last_tested_attimestamp (DB schema v4) - Admin Auth (F.4): Fixed
_require_admin_session()to recognize OAuth admin sessions; hide "Admin Login with API Key" button whenDISABLE_MASTER_KEY_LOGIN=true - Starlette API (F.2): Updated
TemplateResponseto new API (request as first arg)
Security
- exec() Removal (F.8): Replaced
exec()incore/tool_generator.pywith closure-based tool generation - Shell Injection Fix (F.8): Replaced
create_subprocess_shellwithcreate_subprocess_execin WP-CLI handler - bcrypt Migration (F.8): Admin API key hashing upgraded from unsalted SHA-256 to bcrypt
Tests
- New test suites:
test_plugin_visibility.py,test_admin_system.py,test_f3_admin_stats.py,test_f3_last_tested.py,test_f3_service_pages.py
[3.2.0] — 2026-02-25
Fixed
- Bug A: OAuth consent redirect loop — after GitHub/Google login, page now returns to consent screen instead of
/dashboard - Bug B:
/u/{user_id}/{alias}/mcpendpoint now accepts OAuth JWT tokens (issued after social login) in addition tomhu_API keys - Bug C: OAuth users can now create, list, and delete their own OAuth clients via the new
/dashboard/connect/oauth-clientspage - D-1: Dashboard sidebar border uses Tailwind class instead of inline style; version shown in footer
- D-2: Removed broken
setIntervalin dashboard that targeted non-existent#stats-container - D-3: 404 page uses purple primary colors and respects system dark mode preference
- D-4: Fixed invisible buttons (
bg-gray-200+text-whitein light mode) across api-keys, health, projects pages - D-5: Pinned Alpine.js to 3.14.8; removed duplicate CSRF meta tag from
head_assets.html - D-6: Fixed invisible language toggle button in settings (dark mode)
Added
OAuthClient.owner_user_idfield for per-user OAuth client isolationdashboard_connect_pagenow includes Claude.ai connection guide with endpoint URL and link to OAuth Clients- New route:
GET /dashboard/connect/oauth-clients— user's OAuth clients list - New API:
POST /api/dashboard/user-oauth-clients/create— create OAuth client for logged-in user - New API:
DELETE /api/dashboard/user-oauth-clients/{client_id}— delete own OAuth client
[3.1.0] - 2026-02-23
Live Platform Foundation (Track E.1 - E.3)
Major release introducing the Live Platform architecture — SQLite database, OAuth social login, site management, and per-user MCP endpoints. All features are included in the Community Edition.
Added
- SQLite Database Backend (E.1): Async SQLite via aiosqlite, WAL mode, schema versioning with migrations framework, CRUD for users/sites/API keys/connection tokens
- Credential Encryption (E.1): AES-256-GCM with HKDF per-site key derivation, versioned wire format for future migration support
- OAuth Social Login (E.2): GitHub + Google OAuth 2.0, CSRF state tokens, JWT session management, dual session types (admin + oauth_user)
- Site Management API (E.3): Plugin credential definitions for all 9 plugins, connection validation, encrypted site CRUD, MAX_SITES_PER_USER=10
- User API Keys (E.3): bcrypt-hashed keys with
mhu_prefix, 8-char prefix for indexed lookup, 5-minute validation cache - Per-User MCP Endpoints (E.3): Direct JSON-RPC handler at
/u/{user_id}/{alias}/mcp, per-user rate limiting (30/min, 500/hr) - Config Snippets (E.3): Auto-generated config for Claude Desktop, Claude Code, Cursor, VS Code, and ChatGPT
- Dashboard Pages: My Sites (list/add/test/delete), Connect (API keys + config snippets), Profile, OAuth Login
- Dark/Light Mode Toggle: Theme switcher across all dashboard pages
- RBAC: Role-based access control for dashboard
- Active Health Checks: Background health monitoring for connected services
Fixed
- CSRF middleware body consumption bug
- OAuth log noise and DCR crash on startup
- WordPress site connection validation (uses aiohttp to match plugin client)
- Tenant isolation enforced on all site queries
Security
- All bare
except:replaced withexcept Exception:across 12 files - Network error differentiation (DNS, SSL, timeout, connection refused)
- Retry with exponential backoff for transient errors only
- Auth/config errors never retried
Tests
- 452 total tests (up from 303), all passing
- New test suites: database (37), encryption (27), user_auth (32), site_api (17), user_keys (14), user_endpoints (12), config_snippets (10)
[2.9.0] - 2026-02-14
Project Revival - Dependency Updates & Documentation Sync
After 2-month hiatus (Dec 2025 - Feb 2026), updated all dependencies and verified compatibility.
Updated
- FastMCP: 2.12.4 → 2.14.5 (zero breaking changes for our codebase)
- MCP Protocol: 1.16.0 → 1.26.0
- cryptography: 46.0.2 → 46.0.5 (security patches)
- starlette: 0.48.0 → 0.52.1
- authlib: 1.6.5 → 1.6.7
- pydantic: 2.12.0 → 2.12.5
- PyJWT: installed (was missing from environment)
Fixed
- OAuth token timestamps: replaced
datetime.utcnow()withdatetime.now(timezone.utc)andtime.time()for correct UTC timestamps in non-UTC timezones - OAuth schemas:
is_expired()now handles both naive and timezone-aware datetimes - OAuth token reuse detection:
get_refresh_token()now supportsinclude_revokedparameter for proper reuse detection - OAuth audit logging: fixed
AuditLogger.log_event()call to use existinglog_system_event()method - All 54 tests now pass (previously 5 were failing)
Verified
- All 596 tools generate correctly
- Middleware API stable (Middleware, MiddlewareContext, get_http_headers)
- 30+ custom routes operational (dashboard + OAuth)
- Multi-endpoint architecture functional
Documentation
- Aligned version to 2.9.0 across all files (pyproject.toml was 1.3.0)
- Synchronized pyproject.toml dependencies with requirements.txt
- Updated ROADMAP.md and MASTER_CONTEXT.md dates
[1.3.0] - 2025-11-21
🎉 Phase E: Custom OAuth Authorization Page with Multi-language Support
Major Feature: Beautiful web-based OAuth authorization with English & Farsi support!
✨ Added
Web-Based Authorization UI:
- Beautiful HTML templates with Tailwind CSS and dark mode support
- Responsive design (mobile-friendly)
- User-friendly API Key input form with validation
- Smooth animations and transitions
Multi-language Support (i18n):
- Complete English (EN) & Persian/Farsi (FA) translations
- Automatic language detection from Accept-Language header
- RTL (Right-to-Left) layout support for Farsi
- 30+ translation keys covering all UI elements
Security Enhancements:
- CSRF Protection (
core/oauth/csrf.py):- Cryptographically secure token generation (64 chars)
- 10-minute token lifetime with automatic cleanup
- One-time use tokens (consumed after validation)
- API Key validation at authorization time
- Permission inheritance from API Key to OAuth token
- Rate limiting infrastructure ready
Files Added:
core/i18n.py- Internationalization utilities (200+ lines)core/oauth/csrf.py- CSRF token manager (150+ lines)templates/base.html- Base template with Tailwind CSStemplates/oauth/authorize.html- Authorization form (170 lines)templates/oauth/error.html- Error page (90 lines)
Commits: c851c78, 7ec3b9d, b9b7dda, c60dd43
[1.2.0] - 2025-11-18
🎉 Phase D: WordPress Advanced Plugin Split
Plugin Separation: Advanced WordPress features moved to dedicated plugin!
Changed
Plugin Structure:
- Split WordPress plugin into two modules:
plugins/wordpress/- Core features (92 tools)plugins/wordpress_advanced/- Advanced features (22 tools)
WordPress Advanced Plugin (plugins/wordpress_advanced/):
- Database Operations (7 tools): export, import, size, tables, search, query, repair
- Bulk Operations (8 tools): parallel batch processing with semaphore control
- System Operations (7 tools): system info, cron, cache, error logs
Benefits:
- Better tool visibility (basic users see only 92 tools)
- Improved security (sensitive features in separate plugin)
- Granular access control (separate API keys per plugin)
- Reduced complexity for regular users
Documentation:
- Complete README.md in
plugins/wordpress_advanced/ - Environment configuration examples
- Conditional initialization guide
Tool Count: Remains 114 total (92 core + 22 advanced split)
Commits: 2df7f31, fc97c85, 475dd73
[1.1.0] - 2025-11-19
🎉 Phase C: Gitea Plugin Implementation
New Plugin: Complete Gitea repository management with 55 tools!
✨ Added
Gitea Plugin (plugins/gitea/):
Features:
- Repository Management (15 tools): CRUD, branches, tags, files
- Issue Tracking (12 tools): issues, labels, milestones, comments
- Pull Requests (15 tools): PRs, reviews, merges, comments
- User & Organization (8 tools): users, orgs, teams, search
- Webhooks (5 tools): webhook management
Architecture (Option B Clean Architecture):
- Pydantic Schemas (6 files, ~1,100 lines):
common.py- Site, Pagination, User modelsrepository.py- Repository, Branch, Tag, File modelsissue.py- Issue, Label, Milestone, Comment modelspull_request.py- PR, Review, Commit, File modelsuser.py- User, Organization, Team modelswebhook.py- Webhook configuration models
- Gitea API Client (
client.py- 406 lines):- OAuth 2.1 integration
- Full REST API methods
- Error handling and logging
- Handler Modules (5 files, ~2,900 lines):
repositories.py,issues.py,pull_requests.pyusers.py,webhooks.py
- Main Plugin (
plugin.py- 177 lines):- Dynamic method delegation with
__getattr__ get_tool_specifications()static method- Health check integration
- Dynamic method delegation with
Bug Fixes:
- Plugin registration integration (a30b444)
- Tool registration enabled (61b8280)
- Dynamic method delegation fix (bb251c0)
- Pydantic V2 compatibility (8bc4eb6)
- Schema validation - JSON strings (dbd3234)
Documentation:
- Complete usage guide (
docs/GITEA_GUIDE.md- 724 lines) - Environment configuration in
.env.example
Tool Count: 136 → 191 tools (+55 Gitea tools)
Commits: a30b444, 61b8280, bb251c0, 8bc4eb6, dbd3234
1.0.0 - 2025-11-18
🎉 Phase B: OAuth 2.1 Infrastructure
Major Feature: Production-ready OAuth 2.1 server with RFC compliance!
✨ Added
OAuth 2.1 Server (core/oauth/server.py - ~450 lines):
- RFC 8414: Authorization Server Metadata
- RFC 7591: Dynamic Client Registration (Protected)
- RFC 7636: PKCE (S256 mandatory)
- RFC 8705: Protected Resource Metadata
Core Components:
core/oauth/schemas.py- Pydantic models (OAuthClient, tokens)core/oauth/pkce.py- PKCE implementation (S256)core/oauth/storage.py- JSON-based token storage with auto-cleanupcore/oauth/client_registry.py- OAuth client managementcore/oauth/token_manager.py- JWT generation/validation
OAuth Endpoints (4 endpoints):
GET /.well-known/oauth-authorization-server(discovery)GET /.well-known/oauth-protected-resource(RFC 8705)POST /oauth/register(protected - Master API Key required)GET /oauth/authorize- Authorization endpoint (API Key required)POST /oauth/token- Token exchange (all grant types)
Security Features:
- Protected client registration (Master API Key required)
- API Key authorization mode (OAUTH_AUTH_MODE=required)
- Refresh token rotation (prevents reuse)
- Authorization code single-use (prevents replay)
- PKCE mandatory (prevents CSRF)
- API Key permission inheritance
OAuth Tools (3 new tools):
oauth_register_client- Register new OAuth clientsoauth_list_clients- List all registered clientsoauth_revoke_client- Revoke client access
ChatGPT Integration:
- OAuth (manual) mode support
- Admin registers client with Master API Key
- Users authorize with their own API Keys
- Enhanced security - no open registration
Documentation:
- Complete OAuth guide (
docs/OAUTH_GUIDE.md- ~650 lines) - Environment configuration examples
- Security model documentation
Tool Count: 133 → 136 tools (+3 OAuth tools)
Commits: Multiple commits (2025-11-18, updated 2025-11-19)
Unreleased - 2025-11-11
🔄 Architecture Refactoring (Option A)
BREAKING CHANGE: Removed per-site tools to prevent tool explosion.
Changed
- Architecture: Migrated from Hybrid to Unified-Only architecture
- Tool Count: Reduced from 390 to ~105 tools (constant regardless of site count)
- Scalability: Now supports unlimited sites without tool explosion
- 1 site: 105 tools (was 200)
- 10 sites: 105 tools (was 1055)
- 100 sites: 105 tools (was 9600+)
Technical Details
- Per-site tools (e.g.,
wordpress_site1_get_post) are no longer registered - Only unified tools (e.g.,
wordpress_get_post(site="site1")) are exposed - Plugin infrastructure remains intact for internal use
- Site aliases continue to work seamlessly
Migration
- Non-breaking for new users: Use unified tools from the start
- For existing integrations: Update tool calls to use
siteparameter- Before:
wordpress_site1_get_post(post_id=123) - After:
wordpress_get_post(site="site1", post_id=123)
- Before:
Files Modified:
server.py: Removed per-site tool registrationMASTER_CONTEXT.md: Updated architecture documentationREADME.md: Updated tool count and features
Next Steps: Option B (complete architectural cleanup) planned for separate branch.
1.0.0 - 2025-11-11 (Planned)
🎉 Initial Public Release
This will be the first stable release of MCP Hub, featuring comprehensive WordPress and WooCommerce management through MCP protocol.
✨ Added
Core Features
- ~105 MCP Tools with unified architecture (constant tool count!)
- Unified Architecture: Context-based tools for efficient scaling
- Site Registry: Friendly aliases for projects (e.g., "plantup" → site2)
- Multi-language Support: Full bilingual documentation (English/Persian)
WordPress Management (Phase 1-3)
- Posts Management: Create, read, update, delete posts
- Pages Management: Full CRUD operations for pages
- Media Library: Upload, manage, and delete media files
- Comments: Moderate and manage comments
- Categories & Tags: Taxonomy management
- Users: User information and authentication
- Plugins & Themes: List and inspect installed plugins/themes
- Site Settings: Read WordPress configuration
- Site Health: Check WordPress accessibility
Commits:
9881838: feat(wordpress): implement core WordPress tools (Phase 1)ad26cdc: feat(wordpress): add media, comments, and taxonomy tools (Phase 2)e7ac72d: feat(wordpress): complete users, plugins, themes, and settings (Phase 3)
WooCommerce Integration (Phase 4-5)
- Products: Full product lifecycle management
- Product Variations: Variable product support
- Product Categories & Tags: Product taxonomy management
- Product Attributes: Global attributes for variations
- Coupons: Discount code management
- Orders: Order processing and status updates
- Customers: Customer data management
- Reports: Sales, top sellers, and customer analytics
Commits:
cda10fb: feat(woocommerce): implement products, categories, and coupons (Phase 4)0ffe5ad: feat(woocommerce): add orders, customers, and reports (Phase 5)
WP-CLI & SEO Tools (Phase 6)
- Cache Management: Flush object cache, check cache type
- Transients: List and delete transients
- Database: Health checks, optimization, export
- Plugin Management: List, verify checksums, update plugins
- Theme Management: List, verify, update themes
- Core Management: Verify and update WordPress core
- Search & Replace: Dry-run database migrations
- SEO Metadata: Rank Math & Yoast SEO integration
- Navigation Menus: Menu and menu item management
- Custom Post Types: List and manage custom post types
- Custom Taxonomies: Taxonomy term management
Commits:
e5aaa97: feat(wp-cli): implement WP-CLI integration (Phase 6)e5aaa97: feat(seo): add SEO metadata management tools (Phase 6)
Hybrid Architecture (Phase 7.0)
- Site Registry System: Central site configuration management
- Unified Tool Generator: Context-based tools with site parameter
- Per-Site Tools: Backward-compatible legacy tools
- Tool Aliases: Support for friendly project names
- Plugin Architecture: Extensible plugin system
Commit: b638d4a: feat(architecture): implement hybrid dual-tool architecture (Phase 7.0)
Security & Monitoring (Phase 7.1-7.3)
-
Audit Logging (Phase 7.1):
- GDPR-compliant structured logging
- Sensitive data filtering (passwords, API keys)
- JSON format for easy parsing
- Automatic log rotation
-
Health Monitoring (Phase 7.2):
- Real-time system metrics
- Response time tracking
- Error rate monitoring
- Historical metrics (1-24 hours)
- Alert thresholds
- Export functionality
-
Rate Limiting (Phase 7.3):
- Token bucket algorithm
- 60 req/min, 1000 req/hour, 10000 req/day
- Per-client tracking
- Automatic throttling
- Statistics and monitoring
Commits:
003ee0f: feat(audit): implement GDPR-compliant audit logging (Phase 7.1)796c8e0: feat(health): implement enhanced health monitoring (Phase 7.2)9297f20: feat(rate-limiting): implement rate limiting & throttling (Phase 7.3)
Documentation
- README.md: Bilingual project introduction
- CONTRIBUTING.md: Simplified contribution guide
- SECURITY.md: Security policy with OWASP compliance
- MASTER_CONTEXT.md: Comprehensive project reference
- Development Documentation: Architecture and deployment guides
🔒 Security
- API key authentication for WordPress and WooCommerce
- Password filtering in logs
- Input validation and schema checking
- Docker security hardening
- OWASP Top 10 2025 compliance
- Regular dependency updates
🏗️ Infrastructure
- Docker Support: Production-ready Docker Compose setup
- Coolify Integration: One-click deployment support
- Environment Variables: Secure configuration management
- Health Checks: Automated container health monitoring
- Log Management: Structured logging with rotation
🧪 Testing
- 40 Tests: Comprehensive test suite
- 75%+ Coverage: Unit, integration, and E2E tests
- pytest Framework: Modern Python testing
- Mock Support: Isolated testing with pytest-mock
- Async Testing: Full async/await test support
📊 Statistics
- 390 Total Tools: 285 per-site + 95 unified + 10 system
- 3 WordPress Sites: Configured and tested
- 8 Development Phases: From inception to production
- 19 Commits: Clean development history
🔧 Technical Details
- Python 3.11+: Modern async/await support
- FastMCP Framework: MCP protocol implementation
- httpx: Async HTTP client
- Docker Compose: Container orchestration
- pytest: Testing framework
Development History
Phase 7.3 - Rate Limiting & Throttling
Date: 2025-11-11 Status: ✅ Complete
Added rate limiting system with token bucket algorithm to prevent API abuse.
Changes:
- Implemented
RateLimiterclass with token bucket algorithm - Added per-client request tracking
- Configurable limits (per-minute, per-hour, per-day)
- Rate limit statistics endpoint
- Rate limit reset functionality
- Integration with all tool handlers
- Comprehensive testing
Tools Added: 2 (get_rate_limit_stats, reset_rate_limit)
Phase 7.2 - Enhanced Health Monitoring
Date: 2025-11-10 Status: ✅ Complete
Enhanced health monitoring system with detailed metrics and historical tracking.
Changes:
- Response time tracking per project
- Error rate calculation
- Historical metrics storage (up to 24 hours)
- Alert threshold system
- Health metrics export
- System-wide statistics
- Project-specific health endpoints
Tools Added: 5 (check_all_projects_health, get_project_health, get_system_metrics, get_system_uptime, get_project_metrics, export_health_metrics)
Phase 7.1 - Audit Logging
Date: 2025-11-09 Status: ✅ Complete
Implemented GDPR-compliant audit logging system with sensitive data filtering.
Changes:
- Structured JSON logging
- GDPR compliance (PII filtering)
- Password and API key filtering
- Log rotation configuration
- User action tracking
- Security event logging
- Timezone-aware timestamps
Phase 7.0 - Hybrid Architecture
Date: 2025-11-08 Status: ✅ Complete
Major architectural refactor introducing dual tool system.
Changes:
- Site Registry system
- Unified tool generator
- Plugin architecture
- Per-site tool preservation (backward compatibility)
- Site alias support
- Dynamic tool registration
Tools Added: 95 unified tools (matching per-site tools)
Phase 6 - WP-CLI & Advanced Features
Date: 2025-11-05 Status: ✅ Complete
Added WP-CLI integration and advanced WordPress features.
Changes:
- Cache management (flush, type)
- Transient management
- Database operations (check, optimize, export)
- Plugin checksums verification
- Core file verification
- Search & replace (dry-run only)
- Plugin/theme/core updates (with dry-run mode)
- SEO metadata management (Rank Math & Yoast)
- Navigation menu management
- Custom post types support
- Custom taxonomies support
Tools Added per Site: 19
Phase 5 - WooCommerce Orders & Customers
Date: 2025-11-03 Status: ✅ Complete
Extended WooCommerce support with order and customer management.
Changes:
- Order listing with filters
- Order details retrieval
- Order status updates
- Order creation
- Order deletion
- Customer listing
- Customer details
- Customer creation/updates
Tools Added per Site: 8
Phase 4 - WooCommerce Products & Reports
Date: 2025-11-02 Status: ✅ Complete
Added comprehensive WooCommerce product management and reporting.
Changes:
- Product CRUD operations
- Product categories and tags
- Product attributes
- Product variations
- Coupon management
- Sales reports
- Top sellers analytics
- Customer statistics
Tools Added per Site: 20
Phase 3 - WordPress Extended Features
Date: 2025-11-01 Status: ✅ Complete
Completed core WordPress functionality.
Changes:
- User management
- Plugin listing
- Theme management
- Site settings access
- Site health checks
Tools Added per Site: 5
Phase 2 - WordPress Media & Taxonomy
Date: 2025-10-31 Status: ✅ Complete
Extended WordPress tools with media and taxonomy support.
Changes:
- Media library management
- Media upload from URL
- Media metadata updates
- Comment moderation
- Category management
- Tag management
Tools Added per Site: 6
Phase 1 - Core WordPress Tools
Date: 2025-10-30 Status: ✅ Complete
Initial implementation of WordPress management tools.
Changes:
- Post management (CRUD)
- Page management (CRUD)
- Basic MCP server setup
- Environment configuration
- Docker Compose setup
Tools Added per Site: 6
Unreleased
🔮 Planned for Phase 2
Gitea Integration (Priority)
- Repository management
- Issue tracking
- Pull request operations
- Webhook management
- User and team management
Supabase Integration
- Database operations
- Authentication management
- Storage management
- Real-time subscriptions
- Edge functions
Migration Tools
- WordPress to Supabase migration
- Data export/import utilities
- Schema generation