-
v0.3.0 Stable
released this
2026-05-02 22:32:30 +00:00 | 656 commits to master since this releaseChatbot v0.3.0
What is new in plain terms
- A completely new worker module has been added to handle MCP tool execution, running as a separate process that communicates with the server via WebSocket.
- Workers now have full authentication with JWT-based registration and login, including service tokens and challenge-response security.
- MCP tool execution has been moved from client to server worker — the client no longer executes MCP tools directly.
- A new worker management UI lets you view, update, and delete registered workers from settings.
- The settings screen has been redesigned with a collapsible sidebar and organized pages.
- Workers can now be deployed via Docker with auto-start support after initial setup.
User-facing improvements
New worker module for MCP tool execution
- Added a new
worker/module that runs as a standalone process handling all MCP tool calls. - Workers connect to the server via WebSocket for bidirectional communication.
- Each worker has a public UID for external identification.
- Workers support layered configuration (defaults → secrets → runtime).
Worker authentication system
- Workers can now register with the server and receive authentication credentials.
- JWT-based authentication with separate audiences for users and workers.
- Service token authentication with challenge-response security.
- Workers must complete a session handshake before becoming operational.
Worker management UI
- Added a worker management section in settings to view all registered workers.
- Workers can be updated (display name, configuration) and deleted from the UI.
- Added a worker selection dropdown in the MCP server dialog to choose which worker handles tool execution.
- Display name resolution is now delegated to the worker setup flow.
Settings screen redesign
- Complete overhaul of the settings UI with a collapsible sidebar navigation.
- Settings are organized into pages for better structure.
- Added generation-based content control in the topbar for better streaming behavior.
MCP runtime improvements
- MCP runtime status is now refreshed automatically after server operations.
- Client runtime has auto-stop functionality when not in use.
- Worker runtime properly closes and cleans up MCP resources on shutdown.
Self-hosting and deployment improvements
- Added Docker support for the worker module.
- Workers can be configured to auto-start after initial setup.
- Added server URL resolution logic for worker setup.
- Worker configuration is now secured with layered approach (secrets separated from defaults).
Security and reliability
- JWT authentication now uses separate audiences for users and workers.
- Worker configuration is restructured and secured with proper separation of sensitive data.
- Session handshake completion is now enforced before workers can process requests.
- Local MCP server API resources have been removed (client-side execution deprecated).
Build and packaging
- Worker module has its own Gradle build configuration.
- Build and application defaults are properly configured for the worker.
- All tests continue to pass across the application.
Docs and project housekeeping
- Expanded onboarding and project documentation.
- Reorganized documentation files for better structure.
- Cleaned up local IDE configuration files.
Commit-backed changelog (checked from commit descriptions)
Feature commits
1c31178cfeat(deploy): add docker support for worker822c2a0dfeat(worker): support auto-start after setup254feb0bfeat(worker-management): add worker management ui and logicb0836afefeat(worker): add worker update and delete endpoints351c9371feat(settings): add collapsible sidebarc79f2a2bfeat(settings): redesign ui with sidebar and pages6533614bfeat(mcp): refresh runtime status after server opscec04feafeat(worker-setup): delegate display name resolution9cd6d857feat(worker): add display name to identity config78b7f744feat(worker-selection-ui): add worker selection dropdown to mcp server dialog2cca1d1frefactor(worker config): restructure and secure configurationdf0062fbfix(worker): enforce session handshake completion89a33ac9feat(mcp): move local mcp tool execution to server worker601dfc7cfeat(worker): add MCP server configuration sync commands546e766cfeat(worker): bootstrap assigned mcp server configurations14c61f1bfeat(worker): consolidate mcp tool calls in runtime service60340ff6feat(worker): add worker runtime close and mcp cleanupbd4d24b3feat(mcp): add client runtime control and auto-stop8feca0fefeat(mcp-runtime-control): implement worker-local mcp runtime controlafafe40afeat(mcp-runtime): implement worker local mcp runtime tool discovery631bbfc8feat(mcp): implement local mcp runtime control8c175f51feat(worker): implement mcp server control commandscc4a78a9feat(mcp): implement worker-backed runtime control10aa4788feat(mcp): add local mcp runtime control architecturece4aa308feat(mcp-server): migrate config to server-side persistence961630fbfeat(mcp): migrate local mcp server config to server62016ecbfeat(worker): add server-side websocket message processing8ebfe11bfeat(auth): add worker uid to service jwt and context91e5453efeat(worker-protocol): implement worker-side message processingd65602cefeat(worker-protocol): add worker websocket protocol definitionsa579cb46feat: add worker setup flow and layered configuration872df1cdfeat(worker): add initial worker setup flow250260d6feat(worker-setup): add initial worker setup flow7e84f775feat(worker-config): implement layered configuration systemf5b3ec87feat(worker): add public uid for external identificationa807c1f5feat(worker): add main process and auth setup3e1312cefeat(worker): add runtime for token lifecycle managemente29d28adfeat(worker-cli): add command-line argument parsing63e112f5feat(worker): add runtime configuration loading191ca918feat(worker-auth): add worker authentication manager32a76b53feat(auth): add worker authentication api client2f95cac9feat(worker-auth): add service token storea9067b0bfeat(auth): add worker challenge signer613be9a6feat(worker): add worker service authenticationf4386214feat(auth): add worker registration and authentication74fdf85dfeat(worker-registration): add api endpoint8f4253e3feat(auth): add worker service token authenticationd10b156afeat(auth): implement worker jwt authentication8c05a72ffeat(worker-auth): add worker registration and authenticationbb278d8dfeat(worker-auth): add worker identity and auth dao548fd6b7feat(worker): add worker registration and authentication tables47557c1bfeat(worker-auth): add challenge data modelb500bfd5feat(worker): add worker registration models and database table051a3ff8feat(auth): introduce separate jwt audiences for users and workers
Fixes
cbed5f95fix(topbar): add generation-based content control67209814chore(git): clean up local ide configd20cb0abrefactor(worker): migrate session registration to connection start2c86ae83fix(test): close test container after each testb934191efix(auth): use correct access token expiration
Build/docs/chore
e3b5cddadocs(readme): expand onboarding and project docs10e707a1docs(structure): reorganize documentation filesfb39f071chore(worker): configure build and application defaults72f2e980chore: add log4j2 configuration for workere84d2dbdrefactor(worker): improve unique constraint error handling1a2a2854refactor(worker): separate entity and dto models
Refactoring (architectural changes)
9932f37erefactor: remove deprecated local mcp server api resources55f15fd5refactor(mcp): remove local server execution logicedcd7412refactor(mcp-runtime): move local mcp tool execution to server worker30f4e66crefactor: remove local mcp tool execution86a6c2c0refactor: remove local mcp tool call mediationc8ae0043refactor(worker-protocol): split mcp runtime command mappings7f17e843refactor(mcp): rename worker-prefixed mcp componentsf7de5eferefactor(local mcp server): remove local database persistence4f78f827refactor(worker): use string uid and secrets json config
Merged pull requests in this range
#208Merge pull request #208 (a5459cdc)#207Merge pull request #207 (0e8f0c0e)#206Merge pull request #206 (2e603f23)#205Merge pull request #205 (9ece432b)#204Merge pull request #204 (afddd8dd)#203Merge pull request #203 (4beacf52)#202Merge pull request #202 (219b7b27)#201Merge pull request #201 (ccf2447a)#200Merge pull request #200 (6f719866)#199Merge pull request #199 (597b2aa9)#198Merge pull request #198 (7900ab55)#197Merge pull request #197 (0fec65ec)#196Add local MCP runtime control architecture (b9da7ef5)#195Merge pull request #195 (b71f7965)#194Merge pull request #194 (77ec0ca9)#193Add server-side message processing (d3344b71)#192Merge pull request #192 (7ba1b97f)#191Add worker side message processing (cab80c3b)#190Merge pull request #190 (693a438b)#189Merge pull request #189 (3944a148)#188Add worker registration and authentication (b091aa2e)
Compare link
https://github.com/Torvian-eu/chatbot/compare/v0.2.0...v0.3.0- If the tag is not created yet:
https://github.com/Torvian-eu/chatbot/compare/v0.2.0...main
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads