Get started

Connect your software

Configure named software installations with scoped tokens and MCP settings.

Last updated October 21, 2026

Fughetta speaks the Model Context Protocol over Streamable HTTP. There is one endpoint, /mcp on the gateway, and every tool works on the workspace and project named in its arguments.

The endpoint

POST https://<your-gateway>/mcp

The endpoint accepts JSON-RPC 2.0 requests with POST only. It offers no server-initiated GET stream; a GET gets 405 Method Not Allowed.

On a self-hosted gateway, the address is server.http_bind and server.http_port from its configuration (by default 127.0.0.1:8080). To reach it from another device, such as a tablet on your LAN, bind to 0.0.0.0 or the machine's LAN address.

Authentication

Every protected request to the gateway requires a bearer credential:

Authorization: Bearer sk_<64 hex characters>

Open Account settings → Software clients and add an entry for each software installation. Name the software and where it runs, such as Cursor · Home laptop, Claude Code · Server, or CI · Release pipeline. Each entry has its own token, workspace scope, and expiry. A token carries its owner's rights in the workspaces they belong to, narrowed to one workspace if selected at creation.

Copy the new token and connection settings from the setup dialog. The raw token is shown once; reopening Setup uses a <token> placeholder. You can rename an entry or revoke its token individually. Scope and expiry are chosen at creation. The gateway stores a token's SHA-256 hash; credential changes take effect after its accounts snapshot refreshes (scheduled every 30 seconds by default). The console requests a refresh after saving and reports a failed refresh request separately from the saved change.

A request for a workspace the token can't reach fails as if the workspace did not exist, so names of other teams' workspaces are not disclosed.

Client setup

Claude Code

claude mcp add --transport http gateway https://<your-gateway>/mcp \
  --header "Authorization: Bearer sk_…"

Any MCP client

Clients configured with JSON usually take a URL and headers:

{
    "mcpServers": {
        "gateway": {
            "type": "http",
            "url": "https://<your-gateway>/mcp",
            "headers": { "Authorization": "Bearer sk_…" }
        }
    }
}

The exact keys differ between clients; look for "Streamable HTTP" or "remote HTTP server" in your client's documentation.

Browser-based agents

A web app calling the gateway directly from a browser must have its origin listed in the gateway's server.allowed_origins. Agents running as local programs need nothing extra.

Canceling

Send notifications/cancelled with the request's id to stop a call. A change whose outcome is uncertain after a lost connection is never retried automatically: ask for its receipt with the same operation_id, and send it again only if it was not accepted. File-level changes need the :: lock first; see Worldlines.

Telling the agent what to use

Agents pick tools from their descriptions, but they still need the names. A line in your agent's instructions such as "Use the Fughetta MCP server with workspace acme and project app; give every change an operation_id" is usually enough.