Expose HTTP proxy endpoints on Designer app bridge#122
Open
sergiistanchev wants to merge 1 commit intowebflow:hackathon-2026--campaignsfrom
Open
Expose HTTP proxy endpoints on Designer app bridge#122sergiistanchev wants to merge 1 commit intowebflow:hackathon-2026--campaignsfrom
sergiistanchev wants to merge 1 commit intowebflow:hackathon-2026--campaignsfrom
Conversation
Adds three HTTP endpoints to the Designer app bridge so external apps
(e.g. the Webflow Designer extension) can call MCP functionality over
HTTP instead of stdio:
- POST /api/tool-call — forwards { toolName, args } to the Designer
RPC bridge (same contract as the MCP tool call).
- GET /api/status — bridge health check.
- POST /api/upload-asset — uploads an image from a URL to the site
via the Webflow Data API. Uses a new shared uploadAssetFromUrl()
helper that the `upload_asset_from_url` MCP tool also calls.
initDesignerAppBridge now accepts an optional BridgeOptions { getClient }
so the upload endpoint can use the Data API without re-authenticating.
The tool-call and status endpoints work without getClient.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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
POST /api/tool-call,GET /api/status, andPOST /api/upload-assetHTTP endpoints on the Designer app bridge so external apps (e.g. the Webflow Designer extension) can call MCP functionality over HTTP instead of stdio.POST /api/upload-assettakes{ siteId, url, fileName?, altText? }and returns{ assetId, fileName, hostedUrl?, assetUrl? }. Built on a newuploadAssetFromUrl()helper that the existingupload_asset_from_urlMCP tool now also calls — single source of truth.initDesignerAppBridge()now acceptsBridgeOptions { getClient? }so the upload endpoint can use the Data API./api/tool-calland/api/statuswork withoutgetClient.Why
The campaign-agent extension was calling
http://localhost:1338/api/tool-callagainst a locally-patched bridge; the endpoints were never upstreamed. This PR ports them to the branch everyone on the hackathon is running.Test plan
WEBFLOW_TOKEN=<token> node dist/index.js→ server startscurl http://localhost:1338/api/status→{ "status": "ok", "port": 1338 }/api/tool-callwith a Designer connected → forwards to extension RPC as before/api/upload-assetwith an Unsplash URL + valid siteId → asset appears in site asset panel, assetId returnedupload_asset_from_urlMCP tool still works identically to before (refactored to share the helper)🤖 Generated with Claude Code