[codex] add MCP tools visibility management (#1170)
* feat(mcp): add tools visibility management ## Features - Tools visibility modal with 3 modes: All, Include, Exclude - 'Manage Tools' button on McpServerCard (enabled only when connected) - 'Fetch Tools List' button to refresh available tools (raw mode) - Responsive design for mobile (480px), tablet (768px), desktop (1280px) - i18n translations for 9 languages (zh/en/zh-TW/ja/ko/de/es/fr/pt) ## Technical Details - Add raw parameter to fetchMcpTools API for unfiltered tools - Pass raw parameter through controller → bridgeMcpAction → client - Backend _mcp_tools_list supports raw_mode to skip include/exclude filter - 28 MCP unit tests pass (23 controller + 5 bridge action) ## Files Changed - McpManagerView.vue: Tools visibility modal with mode selector - McpServerCard.vue: Add manage tools button - mcp.ts (client): Add raw parameter to fetchMcpTools - mcp.ts (controller): Pass raw parameter to bridge - mcp.ts (services): Pass raw parameter to client.mcpTools - client.ts: Add raw parameter to mcpTools - hermes_bridge.py: Support raw_mode in _mcp_tools_list - 9 locale files: Add 14 translation keys each - mcp-controller.test.ts: Add 3 new test cases - bridge-mcp-action.test.ts: New test file for parameter passing * Delete projects directory chore: remove accidentally committed projects/ directory * fix MCP tools visibility edge cases * remove MCP docs screenshots --------- Co-authored-by: Crafter-feng <succeed_happu@163.com> Co-authored-by: Crafter-feng <37255449+Crafter-feng@users.noreply.github.com>
This commit is contained in:
co-authored by
Crafter-feng
Crafter-feng
parent
9df79c33be
commit
c998a53566
@@ -157,6 +157,24 @@ export default {
|
||||
invalidConfig: 'Invalid configuration',
|
||||
invalidServerConfig: 'Invalid server configuration',
|
||||
missingCommandOrUrl: 'Must have command or url',
|
||||
manageTools: 'Manage Tools',
|
||||
toolsVisibilityTitle: 'Tools Visibility Management',
|
||||
fetchTools: 'Fetch Tools List',
|
||||
fetchToolsFailed: 'Failed to fetch tools list',
|
||||
toolsMode: 'Mode:',
|
||||
toolsModeAll: 'All',
|
||||
toolsModeInclude: 'Include',
|
||||
toolsModeExclude: 'Exclude',
|
||||
toolsListHeader: 'Tool Name',
|
||||
toolsEmpty: 'No tools available, please fetch tools list first',
|
||||
toolsSummaryAll: '{count} tools total, all enabled',
|
||||
toolsSummaryInclude: '{total} tools total, {count} selected',
|
||||
toolsSummaryExclude: '{total} tools total, {count} excluded',
|
||||
toolsVisibilitySaved: 'Tools visibility saved',
|
||||
toolsSelectAll: 'Select all',
|
||||
toolsClearSelection: 'Clear selection',
|
||||
toolsExcludeAll: 'Exclude all',
|
||||
toolsClearExcluded: 'Clear excluded',
|
||||
},
|
||||
|
||||
// Sidebar
|
||||
|
||||
Reference in New Issue
Block a user