CARVIEW |
Select Language
HTTP/2 200
date: Wed, 23 Jul 2025 23:39:12 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-repository-download: git clone https://github.com/co-browser/agent-browser.git
etag: W/"2b29d0803edeb01cd3c0a258729a358e"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=Es495b73N7UOyE9fv1yJtIqqcqAhtwKZP1WyDZZ5fW6F0Ggff7CrNf7nf85m9L1b0aaDXIbjwQ1Necr64xEPzAqZnQNgJm2Blt9U3HIPicEERPh5iqHPauHldOmNMeSN0pzwv9rDvvAPG%2FJtD8XX16rUcINUqjs2Eb4f11Bx%2FEaKp8Z%2FybgmbbNndXjd9x%2FB6%2Fh%2B2GSjFLYg4%2FC73WuksR1JBk6wJyjKFkSssHbD5KmQSNBG7eGN4D7j2UT9dQZBWpIyI08QcmBcjWpVYSsPAg%3D%3D--LGe5a9E2sRsyIpMk--bEY9GCvMxcgMNbTMosadYQ%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1601091912.1753313951; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:39:11 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:39:11 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: 8EAA:0A62:5B8DF:8F530:6881729F
feat(mcp): implement tool aggregation proxy and fix SSE stability · co-browser/agent-browser@9ead95c · GitHub
Copy file name to clipboardExpand all lines: internal/mcp/client/client.go
Copy file name to clipboardExpand all lines: internal/mcp/client/client_test.go
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit 9ead95c
committed
feat(mcp): implement tool aggregation proxy and fix SSE stability
- Add MCP server proxy that aggregates tools from remote servers
- Implement transparent proxying of tool calls to remote servers
- Copy tool schemas and parameters correctly from remote tools
- Set SSE read timeout to 1200 seconds for long-running operations
- Remove complex reconnection logic in favor of native SSE persistence
The MCP server now acts as a proxy that:
1. Connects to configured remote MCP servers
2. Aggregates their available tools
3. Exposes these tools locally with proper parameter schemas
4. Proxies tool calls to the appropriate remote server
Additionally, fixes SSE connection stability by properly configuring
timeouts and trusting the protocol's built-in persistence, rather than
implementing custom reconnection logic.1 parent 603603a commit 9ead95cCopy full SHA for 9ead95c
Expand file treeCollapse file tree
6 files changed
+474
-45
lines changed+6Lines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
| 10 | + | |
10 | 11 |
| |
11 | 12 |
| |
12 | 13 |
| |
13 | 14 |
| |
| 15 | + | |
| 16 | + | |
14 | 17 |
| |
15 | 18 |
| |
| 19 | + | |
| 20 | + | |
16 | 21 |
| |
17 | 22 |
| |
18 | 23 |
| |
19 | 24 |
| |
20 | 25 |
| |
21 | 26 |
| |
| 27 | + | |
22 | 28 |
|
+2Lines changed: 2 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
45 | 45 |
| |
46 | 46 |
| |
47 | 47 |
| |
| 48 | + | |
| 49 | + | |
48 | 50 |
| |
49 | 51 |
|
+3-4Lines changed: 3 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
86 | 86 |
| |
87 | 87 |
| |
88 | 88 |
| |
89 |
| - | |
| 89 | + | |
| 90 | + | |
90 | 91 |
| |
91 |
| - | |
92 |
| - | |
93 |
| - | |
| 92 | + | |
94 | 93 |
| |
95 | 94 |
| |
96 | 95 |
| |
|
internal/mcp/client/client.go
Copy file name to clipboardExpand all lines: internal/mcp/client/client.go+8-2Lines changed: 8 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| 5 | + | |
| 6 | + | |
5 | 7 |
| |
6 | 8 |
| |
7 | 9 |
| |
8 | 10 |
| |
9 | 11 |
| |
10 | 12 |
| |
11 |
| - | |
12 |
| - | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + |
internal/mcp/client/client_test.go
Copy file name to clipboardExpand all lines: internal/mcp/client/client_test.go+143-3Lines changed: 143 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| 5 | + | |
| 6 | + | |
| 7 | + | |
5 | 8 |
| |
6 | 9 |
| |
7 | 10 |
| |
| |||
21 | 24 |
| |
22 | 25 |
| |
23 | 26 |
| |
| 27 | + | |
24 | 28 |
| |
25 | 29 |
| |
26 | 30 |
| |
27 | 31 |
| |
28 | 32 |
| |
29 | 33 |
| |
| 34 | + | |
30 | 35 |
| |
31 | 36 |
| |
32 | 37 |
| |
| |||
40 | 45 |
| |
41 | 46 |
| |
42 | 47 |
| |
| 48 | + | |
43 | 49 |
| |
44 | 50 |
| |
45 | 51 |
| |
46 | 52 |
| |
47 | 53 |
| |
48 |
| - | |
| 54 | + | |
49 | 55 |
| |
50 | 56 |
| |
51 | 57 |
| |
| |||
55 | 61 |
| |
56 | 62 |
| |
57 | 63 |
| |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
58 | 81 |
| |
59 | 82 |
| |
60 | 83 |
| |
61 |
| - | |
62 |
| - | |
| 84 | + | |
63 | 85 |
| |
64 | 86 |
| |
65 | 87 |
| |
| |||
105 | 127 |
| |
106 | 128 |
| |
107 | 129 |
| |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + |
You can’t perform that action at this time.
0 commit comments