Skip to content

Add fmsg-mcp: HTTP-mode integration test and optional compose service - #20

Merged
markmnl merged 1 commit into
mainfrom
fmsg-mcp-http-test
Sep 3, 2026
Merged

Add fmsg-mcp: HTTP-mode integration test and optional compose service#20
markmnl merged 1 commit into
mainfrom
fmsg-mcp-http-test

Conversation

@markmnl

@markmnl markmnl commented Sep 3, 2026

Copy link
Copy Markdown
Owner

Summary

  • Test 014 (test/tests/014-fmsg-mcp-http.sh): runs the published @markmnl/fmsg-mcp with npx in Streamable HTTP mode for the hairpin host and drives it with curl over JSON-RPC. Asserts the bearer-key auth gate (401), whoami, cross-host send_message to Bob, wait_for_message returning Bob's fmsg-cli reply pushed over the WebSocket, get_thread, react and delivery_status. FMSG_MCP_NPM_SPEC pins the version (default @markmnl/fmsg-mcp@latest). Needs Node.js 22+ on the runner (present on GitHub's Ubuntu images).
  • Optional fmsg-mcp compose service under profile mcp (docker compose --profile mcp up -d), built from the npm package (docker/fmsg-mcp/Dockerfile, FMSG_MCP_REF), bound to 127.0.0.1:8765 by default so a TLS-terminating reverse proxy can front it; FMSG_MCP_ALLOWED_HOSTS / FMSG_MCP_API_URL / FMSG_MCP_HOST_PORT are the knobs. README documents it.

Test plan

  • Integration Test workflow green (runs the whole suite including 014)
  • python -c yaml.safe_load on the compose file; bash -n on the test

🤖 Generated with Claude Code

https://claude.ai/code/session_01QWT1dXov2XxPzKWjeTT33b

Test 014 starts the published @markmnl/fmsg-mcp with npx in Streamable HTTP
mode for the hairpin host and drives it with curl over JSON-RPC: rejects
unauthenticated calls, whoami, cross-host send_message to Bob,
wait_for_message returning Bob's fmsg-cli reply over the WebSocket,
get_thread, react and delivery_status.

Also adds an opt-in `fmsg-mcp` compose service (profile `mcp`, built from the
npm package, bound to 127.0.0.1:8765 by default) for deployments that want a
hosted MCP endpoint behind a reverse proxy, with README notes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QWT1dXov2XxPzKWjeTT33b
@markmnl
markmnl merged commit 5c82b8c into main Sep 3, 2026
1 check passed
@markmnl
markmnl deleted the fmsg-mcp-http-test branch September 3, 2026 08:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant