BobSong-dev opened a new pull request, #7512: URL: https://github.com/apache/shenyu/pull/7512
### Background Agents need to discover and call tools from multiple MCP servers through one ShenYu entry. This change adds an opt-in remote catalog alongside local providers. Each remote tool is exposed as `server.tool`, while invocation resolves its original upstream name and preserves the native MCP result. ### Changes - Reuse Agent Gateway authorization and plugin configuration synchronization for remote tool discovery, listing and invocation. - Validate secret-free server configuration in Admin saves/imports; resolve target-bound, versioned service credentials on the gateway. - Capture a directory generation for each operation, with bounded configuration updates, leases, cancellation and cleanup. - Use request-owned HTTP calls for the fixed 2025-06-18 outbound handshake, bounded tools pagination and JSON or one final SSE response. - Detach the request's subscriber before cancelling its HTTP future, avoiding dropped late connection errors while preserving active request failures. - Require exact deployment endpoint allowlists and standard TLS validation for fixed IPv4 HTTPS. Loopback HTTP remains available for local MCP servers. ### Verification The independent branch starts at merged master `d462b0079`, containing #7424. Local verification covers only the 31-file aggregation delta on that baseline: - Windows Core/Admin/Starter: 401 targeted cases, zero failures/errors/skips; 48-module Checkstyle and RAT passed. Example: 28 targeted cases, Checkstyle and explicit leaf RAT passed. - RISC-V/QEMU: 346 targeted cases, zero failures/errors/skips; 13-module Checkstyle and RAT passed. All 74 compared Linux source files match Windows byte hashes. - Real Admin/H2 → WebSocket → Bootstrap: 40 entry, 12 legacy MCP/AI Proxy fixture coexistence, 22 aggregation and 6 configuration checks passed. - OpenCode with the configured real model passed three internal-tool and three multi-server modes, including JSON/SSE and CodeMode, with wire correlation. Thirteen key classes loaded from this workspace; owned resources drained and artifact secret checks passed. - Fixed-IP HTTPS: 18 checks passed using separate client/server containers, standard trust-chain/IP validation and process-local test trust anchors. - Admin/Bootstrap: 193-module assembly succeeded with tests explicitly skipped. The independently exported patch reconstructs the audited source tree. Fixture readiness, connection-pool warmup and explicit queue synchronization are test setup; production connection/request budgets are unchanged. Tests are targeted, not full-project coverage. RISC is emulated; the HTTPS network is controlled and is not an external production deployment. Commit `ade09944e` has been pushed to the fork; no new remote CI result is claimed. Prompts/resources, result transformations and statistics are outside this change. Outbound DNS endpoints, OAuth, GET stream recovery, Tasks and nonempty delegated request `_meta` remain outside the first contract. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
