Commit 4bff3ba
authored
Expand TUI MCP catalog and discovery (#14500)
## Description
Follows corrective PR #14499, which has merged. Expands the TUI `/mcp`
experience so users can discover and explicitly enable MCP servers from
the same sources represented by Warp's broader MCP catalog.
- Shows TUI-local installations, synced templates, gallery entries,
Warp-global definitions, third-party global definitions, and
current-repository definitions in one searchable list.
- Labels entries with source and scope, preserves same-named file
definitions from distinct providers, and reports diagnostics for
multiple config files.
- Represents uninstalled synced and gallery entries as `available`;
catalog refresh never installs, starts, or initiates OAuth for them.
- Adds a TUI-native enable flow for template variables and final
confirmation. Installation and startup happen only after confirmation,
and cancellation leaves catalog/runtime state unchanged.
- Detects Claude, Codex, `.agents`, and current-repository MCP configs
in place without copying them into Warp's global config.
- Keeps third-party and repository definitions offline by default in TUI
while preserving existing Warp-global activation and GUI auto-start
behavior.
## Linked Issue
N/A
## Testing
- [x] I have manually tested my changes locally with `./script/run-tui`
- [x] Live `/mcp` verification in a real terminal:
- Confirmed synced entries render as `available` with `Enter to enable`.
- Confirmed enabling opens a separate `Enable and start` confirmation
screen.
- Canceled the flow and verified counts remained `2 connected · 1 failed
· 1 offline · 26 available`.
- Confirmed a current-repository Claude MCP appears as offline and is
not auto-started.
- [x] `cargo nextest run -p warp_tui` (823 passed)
- [x] Focused `warp` MCP tests (29 passed; 6016 skipped)
- [x] `cargo check -p warp_tui`
- [x] Verified this child reapplies the exact parent-revert delta and
its tip is tree-identical to `origin/master`.
- [x] `./script/format --check`
- [x] `cargo clippy --workspace --exclude warp_completer --all-targets
--tests -- -D warnings`
- [x] `cargo clippy -p warp --all-targets --tests -- -D warnings`
- [x] `cargo clippy -p warp_completer --all-targets --tests -- -D
warnings`
- [x] `git diff --check`
The full workspace test suite was not rerun for this stack
reconstruction.
### Screenshots / Videos
N/A — the interaction was validated directly in the terminal with
`./script/run-tui`.
## Agent Mode
- [x] Warp Agent Mode - This PR was created via Warp's AI Agent Mode
- [Agent
conversation](https://staging.warp.dev/conversation/1592c723-6dbc-49fa-a6c8-1b0cf9699f1d)
CHANGELOG-IMPROVEMENT: Expanded TUI `/mcp` discovery and added explicit
opt-in installation for synced and gallery MCP servers.1 parent ddadcee commit 4bff3ba
28 files changed
Lines changed: 2342 additions & 330 deletions
File tree
- app/src
- ai/mcp
- persistence
- tui
- crates/warp_tui/src
- input
- terminal_session_view
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
298 | 298 | | |
299 | 299 | | |
300 | 300 | | |
301 | | - | |
302 | 301 | | |
303 | 302 | | |
304 | 303 | | |
305 | 304 | | |
306 | | - | |
307 | | - | |
308 | | - | |
309 | | - | |
310 | | - | |
311 | | - | |
312 | | - | |
313 | | - | |
314 | | - | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
315 | 308 | | |
316 | 309 | | |
317 | 310 | | |
| |||
332 | 325 | | |
333 | 326 | | |
334 | 327 | | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
335 | 350 | | |
336 | 351 | | |
337 | 352 | | |
| |||
342 | 357 | | |
343 | 358 | | |
344 | 359 | | |
345 | | - | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
346 | 363 | | |
347 | 364 | | |
348 | 365 | | |
| |||
460 | 477 | | |
461 | 478 | | |
462 | 479 | | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
463 | 486 | | |
464 | 487 | | |
465 | 488 | | |
| |||
497 | 520 | | |
498 | 521 | | |
499 | 522 | | |
| 523 | + | |
500 | 524 | | |
501 | | - | |
502 | | - | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
503 | 535 | | |
504 | 536 | | |
505 | | - | |
| 537 | + | |
506 | 538 | | |
507 | 539 | | |
508 | 540 | | |
| |||
511 | 543 | | |
512 | 544 | | |
513 | 545 | | |
514 | | - | |
515 | | - | |
516 | | - | |
517 | | - | |
518 | | - | |
519 | | - | |
520 | | - | |
521 | | - | |
522 | | - | |
523 | | - | |
524 | | - | |
| 546 | + | |
525 | 547 | | |
526 | 548 | | |
527 | 549 | | |
| |||
541 | 563 | | |
542 | 564 | | |
543 | 565 | | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
| 579 | + | |
| 580 | + | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
| 605 | + | |
544 | 606 | | |
545 | 607 | | |
546 | 608 | | |
| |||
608 | 670 | | |
609 | 671 | | |
610 | 672 | | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
611 | 703 | | |
612 | 704 | | |
613 | 705 | | |
| |||
0 commit comments