From creating the canal to creating an app (connector) in ChatGPT's developer mode, granting approval, and verifying it works. A careful step-by-step walkthrough with screenshots of the actual screens.
We will make the MCP server running on your local (in-house) machine usable from ChatGPT — without opening any inbound ports. The flow has 4 parts: create a canal in WireCanal → start the Agent → create an app in ChatGPT → approve the connection.
http://localhost:9310/mcp)On the dashboard, click "Create a new canal", choose MCP as the type, and click "Next".

Just pick the AI you will use, and the connection settings for that AI are prepared automatically. Here, check ChatGPT.

For the public address (hostname), the "auto-assigned subdomain" is fine. You can also reserve a name of your choice or use a custom domain.

For the forwarding target, enter the address of the MCP server running on your machine (e.g. localhost:9310).


Right after creation, the "MCP connection" tab shows client credentials — but for ChatGPT, you connect by simply pasting the canal URL (the necessary settings are configured automatically). The client credentials are only for cases where you want to configure things manually.
Download the configuration file wirecanal.json from the "Setup" tab, and list only the tool names you are willing to show to the outside AI in tools.allow (the default is deny-all). For the syntax and all options, see the wirecanal.json configuration reference.

{
"access_key": "ck_...",
"forward_target": "localhost:9310",
"mode": "mcp",
"tools": { "default": "deny", "allow": ["get_time", "echo"] }
}Start the Agent on the same machine. No inbound ports need to be opened. If you have not installed the Agent yet, or want to keep it running as a service (auto-start), see the OS-specific setup guides.
wirecanal.exe -config wirecanal.jsonWhen the startup log shows a line saying that canal <ID> will deliver access to https://<hostname> to your local forwarding target, the connection is established.
On chatgpt.com, open Settings → Security & login and turn on the "Developer mode" switch. This setting is required to add your own connectors.

Open "Plugins" in the sidebar, switch to the "Personal" tab, and click the "+" (Create app) button.

/mcp (e.g. https://<hostname>/mcp)Once you enter the URL, auto-detection runs and client registration and the choice of authentication method are all configured automatically. Only if you want to configure them manually, open "Advanced OAuth settings" and paste the client ID / secret from the canal's "MCP connection" tab (the token endpoint authentication method is client_secret_post).

After creation, an "Add to ChatGPT" dialog appears. Click "Sign in with ..." and WireCanal's connection-consent screen opens in a new tab.

Review the details and simply click "Approve". Only the canal owner can grant approval.
Log in to both ChatGPT and WireCanal in the same browser (same profile). If they are split across profiles, a login screen will open instead of the consent screen.

Just mention the connector by name in a chat and call the tool. For example, ask "Use get_time to tell me the current time in Japan" — and the real data returned by your local MCP server is used in ChatGPT's answer.

If a tool is not in tools.allow, the local Agent refuses it on the spot even when the AI tries to call it. The decision about which tools to show always stays on your side (two-key).
Sign-up is free. No credit card required — create your first canal right now.
Sign up free and get started