Skip to content

Commit f7f84cc

Browse files
committed
feat: ux changes for mcp http/sse support
1 parent 3da5efb commit f7f84cc

File tree

6 files changed

+325
-169
lines changed

6 files changed

+325
-169
lines changed

chat-client/src/client/mcpMynahUi.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export const MCP_IDS = {
2929
EDIT: 'edit-mcp',
3030
SAVE: 'save-mcp',
3131
CANCEL: 'cancel-mcp',
32+
CHANGE_TRANSPORT: 'change-transport',
3233

3334
// Permission actions
3435
PERMISSION_CHANGE: 'mcp-permission-change',
@@ -448,12 +449,25 @@ export class McpMynahUi {
448449
const typedParams = params as McpServerParams
449450
if (params.id === MCP_IDS.ADD_NEW || params.id === MCP_IDS.EDIT || params.id === MCP_IDS.FIX_SERVER) {
450451
this.mynahUi.toggleSplashLoader(false)
452+
453+
const uiFilters = (typedParams.filterOptions ?? []) as McpFilterOption[]
454+
const initial = uiFilters.find(f => f.id === 'transport')
455+
let _lastTransport = initial?.value as unknown as string
456+
451457
const detailedList = this.createAddMcpServerDetailedList(typedParams)
452458

453459
const events = {
454460
onBackClick: () => {
455461
this.messager.onListMcpServers()
456462
},
463+
onFilterValueChange: (filterValues: Record<string, any>) => {
464+
const newTransport = filterValues.transport
465+
// only fire when transport actually changes
466+
if (newTransport !== _lastTransport) {
467+
_lastTransport = newTransport
468+
this.messager.onMcpServerClick(MCP_IDS.CHANGE_TRANSPORT, filterValues.name, filterValues)
469+
}
470+
},
457471
onFilterActionClick: (
458472
actionParams: McpServerClickResult,
459473
filterValues?: Record<string, string>,

server/aws-lsp-codewhisperer/src/language-server/agenticChat/tools/executeBash.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ describe('ExecuteBash Tool', () => {
158158
assert.equal((execBash as any).isLikelyCredentialFile('/path/to/data.csv'), false)
159159
})
160160

161-
it('should equire acceptance for network commands like ping', async () => {
161+
it('should require acceptance for network commands like ping', async () => {
162162
const execBash = new ExecuteBash(features)
163163
const validation = await execBash.requiresAcceptance({ command: 'ping example.com' })
164164
assert.equal(validation.requiresAcceptance, true, 'Ping should not require acceptance')

0 commit comments

Comments
 (0)