feat: add scoped MCP destinations and composable CLI help - #490
Merged
Merged
Conversation
Deploying allagents with
|
| Latest commit: |
d1bcc09
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://c767eebb.allagents.pages.dev |
| Branch Preview URL: | https://feat-tradingview-mcp.allagents.pages.dev |
christso
force-pushed
the
feat/tradingview-mcp
branch
from
September 19, 2026 04:02
48e1968 to
dd00719
Compare
christso
marked this pull request as ready for review
September 19, 2026 04:03
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
MCP servers can now be managed consistently across project, user, and named-profile destinations from both the command line and the interactive TUI. OAuth guidance uses the correct presentation channel for each adapter, while the internal stdio proxy keeps stdout reserved for JSON-RPC.
--scope project,--scope user, and--profile <name>destination selection tomcp add,remove,list,get,reauth, andupdate.--clientselectors and strict destination/profile validation.--help --jsonoutput.--help --jsonlinks. Root and group responses stay concise; leaf responses expose the complete execution contract, including expected output, interaction, schema, and JSON field allowlists.This extends the TradingView and client-managed OAuth work on this branch. The HTTP-to-stdio bridge remains internal; users manage one server declaration through either public interface.
Design decisions
--scopeand--profileare mutually exclusive.$HOMEpreserves the legacy user-workspace behavior. Explicit--scope projectfrom$HOMEfails because that path aliases the user workspace.${ENV_VAR}references. Generated bridge configs retain only the header-to-variable binding; the value resolves at the connection boundary.trackedServersremains an ownership record, not a report of the latest successful operation. Non-authoritative client failures retain prior entries.Validation
Automated checks:
Results:
bun run checkremains red on 143 pre-existing repository formatting/import-order findings; no fix was applied outside this change.Manual E2E with the built CLI:
marketsprofile../dist/index.js mcp add,list,get,update, andremoveagainst the default project destination,--scope user, and--profile markets.-h,--jq, trailing positionals, help-shaped option values, and human help remain correct.agent-tuiin an isolated workspace containing HTTP and stdio servers.+ Add serverandBack, and no permanent maintenance action is shown.Review notes
Start with
src/core/mcp-management.tsfor the shared orchestration boundary. Then reviewsrc/cli/commands/mcp.tsandsrc/cli/tui/actions/mcp.tsas presentation adapters. OAuth channel selection and transactional credential reset live insrc/core/mcp-http-stdio-proxy.ts.Residual operational constraint: removing a profile does not terminate an already-running external MCP proxy process. The CLI does not own client process lifetimes; removal prevents future launches and deletes profile-owned persisted state.
Post-Deploy Monitoring & Validation
This is client-side CLI behavior; there is no central service deployment.
Update Error,MCP sync was incomplete,Could not acquire MCP destination lock, OAuth callback failures, repeated authorization prompts, generated bridge launch failures, and stale callback prompts.