Commit 601043a
committed
feat(meta-tools): consolidate FeatureSet writes into manage_feature_set; bind upsert
Keeps the per-client meta-tool surface flat while giving the agent full
self-service CRUD (it could previously only create, never fix or remove).
- Replace `mcpmux_create_feature_set` with `mcpmux_manage_feature_set`
(`action`: create | update | delete) — one tool covers all of CRUD on
custom FeatureSets. Built-in/Starter sets are not mutable via MCP;
cross-Space, unknown-tool-name, empty-name, and unknown-action inputs are
rejected with actionable errors so the model can self-correct.
- Make `mcpmux_bind_current_workspace` idempotent (upsert): re-binding the
same workspace REBINDS it instead of erroring, and `feature_set_id` is now
optional (omit → bind the folder to no Space tools; built-ins still apply).
No separate unbind — that's just a bind-config change, and deleting a
binding row stays UI-only.
- Update the Tool Optimization built-in descriptor + dev docs to the new name.
- Tests: create / update (add+remove+rename) / delete, reject-builtin,
unknown-action, rebind-on-second-call, bind-to-empty.
Signed-off-by: Mohammod Al Amin Ashik <maa.ashik00@gmail.com>1 parent 0f5b9f8 commit 601043a
7 files changed
Lines changed: 587 additions & 141 deletions
File tree
- apps/desktop
- src-tauri/src/commands
- src/lib/api
- crates
- mcpmux-core/src/domain
- mcpmux-gateway/src/services/meta_tools
- tests/rust/tests/integration
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
112 | 112 | | |
113 | 113 | | |
114 | 114 | | |
115 | | - | |
| 115 | + | |
116 | 116 | | |
117 | 117 | | |
118 | 118 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
| 39 | + | |
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | | - | |
71 | | - | |
| 70 | + | |
| 71 | + | |
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
| 76 | + | |
| 77 | + | |
77 | 78 | | |
78 | 79 | | |
79 | 80 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
119 | 119 | | |
120 | 120 | | |
121 | 121 | | |
122 | | - | |
| 122 | + | |
123 | 123 | | |
124 | 124 | | |
125 | 125 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
83 | 83 | | |
84 | 84 | | |
85 | 85 | | |
86 | | - | |
| 86 | + | |
87 | 87 | | |
88 | 88 | | |
89 | 89 | | |
0 commit comments