Commit Graph

19 Commits

Author SHA1 Message Date
3ebe88708e Add dynamic agent discovery tools
All checks were successful
build / test (push) Successful in 20s
publish / npm (push) Successful in 22s
v0.1.11
2026-06-05 20:07:37 -03:00
80261e5224 Coordinate a2amcp credential refresh
All checks were successful
build / test (push) Successful in 19s
publish / npm (push) Successful in 22s
v0.1.10
2026-06-01 09:51:45 -03:00
f0b2d9ead8 Fix a2amcp login error reporting
All checks were successful
build / test (push) Successful in 20s
publish / npm (push) Successful in 22s
v0.1.9
2026-05-31 21:03:15 -03:00
2814112ab3 Use Keycloak OAuth for a2amcp login
All checks were successful
build / test (push) Successful in 19s
publish / npm (push) Successful in 22s
v0.1.8
2026-05-31 20:46:17 -03:00
1e034412ca Bump a2amcp to 0.1.7
All checks were successful
build / test (push) Successful in 19s
publish / npm (push) Successful in 22s
v0.1.7
2026-05-31 19:56:29 -03:00
bbc7f593b1 Document hosted OAuth MCP connectors
All checks were successful
build / test (push) Successful in 19s
2026-05-31 19:26:02 -03:00
b0dd1fa28d Commit pending workspace updates
All checks were successful
build / test (push) Successful in 31s
2026-05-28 20:25:06 -03:00
91c7bf9c57 WIP a2a-mcp updates
All checks were successful
build / test (push) Successful in 30s
2026-05-23 14:33:03 -04:00
4ff51157c0 Relay upstream MCP elicitation
All checks were successful
build / test (push) Successful in 31s
2026-05-23 13:32:25 -04:00
2fd97d8d09 Handle upstream stream drops
All checks were successful
build / test (push) Successful in 29s
2026-05-23 12:20:22 -04:00
45e12324df release: 0.1.6 — relay notifications/progress to MCP client
All checks were successful
build / test (push) Successful in 30s
publish / npm (push) Successful in 33s
Long-running upstream skills emit MCP notifications/progress on the SSE
stream. Without forwarding, the gateway swallows them and the MCP
client (Claude Code, Cursor) aborts the tools/call on its idle timer
after ~60s — even though the HTTP stream stays warm.

Gateway now passes the SDK's extra.sendNotification through to
UpstreamAgent.callTool. Any non-response frame with a method but no id
becomes a notification on the client side. Each tools/call carries a
progressToken (client-supplied or request-id fallback) so the client
can correlate.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
v0.1.6
2026-05-15 21:37:58 -03:00
09b588326c release: 0.1.5 — SSE-stream tools/call to dodge ingress timeout
All checks were successful
build / test (push) Successful in 28s
publish / npm (push) Successful in 32s
agent-builder.build (and any long-running skill) takes minutes — LLM
loop + sandbox tests + deploy + wait-for-live-card. A plain JSON POST
to /mcp gets killed by ingress idle timeouts (~60s on traefik) and the
gateway sees "fetch failed" while the upstream is still running.

UpstreamAgent.callTool now negotiates ``Accept: text/event-stream`` on
tools/call. We drain SSE frames, return the final tools/call result,
and fall back to plain JSON if the upstream doesn't speak SSE (older
a2a-pack). Elicit relaying isn't wired yet; for now any
elicitation/create frame is ignored.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
v0.1.5
2026-05-15 21:12:53 -03:00
024f14000e release: 0.1.4 — forward cp_jwt + bucket via params._meta
All checks were successful
build / test (push) Successful in 29s
publish / npm (push) Successful in 30s
On login the gateway now captures user.id from /v1/auth/login, derives
the user's MinIO bucket (user-<id>-files), and persists both in
~/.a2a/credentials.json. UpstreamAgent.callTool injects
``params._meta = { cp_jwt, cp_url, bucket }`` on every tools/call so
upstream agents see the same caller context the platform orchestrator
provides. Unauthenticated clients omit _meta — back-compat preserved.

Requires a2a-pack with the matching _meta handler in
``a2a_pack/mcp/server.py`` (companion change in apps/a2a).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
v0.1.4
2026-05-15 20:53:07 -03:00
633ca5dad6 release: 0.1.3 — add a2amcp bin, sync server/cli version from package.json
All checks were successful
build / test (push) Successful in 29s
publish / npm (push) Successful in 31s
Adds an "a2amcp" bin (alongside the existing "a2a-mcp" for back-compat)
so that npx -y a2amcp resolves the binary by package name. Without it
npx fell back unreliably when no bin matched.

Also rips the hardcoded "0.1.0" out of cli.ts and gateway.ts and reads
the version from package.json — that was why serverInfo lagged behind
the published tag. Renames the user-facing command in help / error
strings / README from a2a-mcp to a2amcp; the legacy bin stays for
existing scripts.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
v0.1.3
2026-05-15 20:39:23 -03:00
fd71a528e9 release: rename to unscoped a2amcp, bump 0.1.2
All checks were successful
build / test (push) Successful in 29s
publish / npm (push) Successful in 33s
Drops the @a2amcp/mcp scope so the npx invocation collapses to
`npx -y a2amcp` — one token instead of two, no scope to register or
remember.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
v0.1.2
2026-05-15 20:26:09 -03:00
f0f6fe9672 release: rename package @a2a/mcp → @a2amcp/mcp, bump to 0.1.1
All checks were successful
build / test (push) Successful in 29s
publish / npm (push) Successful in 32s
The @a2a scope on npm is owned by a different account, so PUT against
the registry 404'd. Move to @a2amcp/mcp (scope we control) and bump the
version so the publish workflow has a fresh tag to push.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
v0.1.1
2026-05-15 20:19:54 -03:00
f68c74a42c ci: authenticate npm publish
Some checks failed
build / test (push) Successful in 28s
publish / npm (push) Failing after 31s
v0.1.0
2026-05-15 20:06:57 -03:00
f1ccc3bb91 ci: publish mcp package to npm
Some checks failed
build / test (push) Successful in 27s
publish / npm (push) Failing after 31s
2026-05-15 19:59:43 -03:00
9c5d8172dc initial: @a2a/mcp gateway for a2acloud agents
Local MCP server that exposes any number of deployed A2A agents to
Claude Code, Cursor, Windsurf, and other MCP clients. Reuses the
~/.a2a/credentials.json token written by the Python a2a CLI. Adding
or removing agents is a single ~/.a2a/mcp.json edit.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 20:33:54 -03:00