Odel
Bilt

Bilt

@buildingapplications1Updated 5 days ago

AI agents autonomously build and deploy mobile apps through natural language workflows

Server endpointSSEProbe failed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

Bilt MCP Server

Connect an MCP-compatible AI client to Bilt to create and manage mobile app projects.

Connection details

SettingValue
URLhttps://mcp.bilt.me/mcp
TransportStreamable HTTP
AuthenticationAuthorization: Bearer <Bilt API token>

Create an API token at Bilt API keys. The legacy /mcp/sse endpoint is no longer available.

Client setup

Claude Desktop

Claude Desktop launches local MCP commands from claude_desktop_config.json. Use mcp-remote to bridge stdio to Bilt and attach the API-key header:

{
  "mcpServers": {
    "bilt": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.bilt.me/mcp",
        "--transport",
        "http-only",
        "--body-timeout",
        "0",
        "--header",
        "Authorization:${BILT_AUTH_HEADER}"
      ],
      "env": {
        "BILT_AUTH_HEADER": "Bearer bilt_live_YOUR_TOKEN_HERE"
      }
    }
  }
}

Keep Authorization:${BILT_AUTH_HEADER} as one argument, without a space after the colon. On Windows, if Claude resolves npx through a broken Program Files path, set command to the absolute npx.cmd path or its 8.3 short-path equivalent.

Do not add Bilt through Claude's custom connector UI unless it supports a static Authorization header. Without that header, it may attempt OAuth, which Bilt does not currently support.

Cursor

Add this to .cursor/mcp.json:

{
  "mcpServers": {
    "bilt": {
      "url": "https://mcp.bilt.me/mcp",
      "headers": {
        "Authorization": "Bearer bilt_live_YOUR_TOKEN_HERE"
      }
    }
  }
}

OpenClaw

Add this to ~/.openclaw/openclaw.json:

{
  "mcp": {
    "servers": {
      "bilt": {
        "url": "https://mcp.bilt.me/mcp",
        "transport": "streamable-http",
        "headers": {
          "Authorization": "Bearer bilt_live_YOUR_TOKEN_HERE"
        }
      }
    }
  }
}

Restart the OpenClaw gateway after changing the configuration.

For another client, use native Streamable HTTP only if the client supports custom Authorization headers. Otherwise, use the same mcp-remote stdio bridge shown for Claude Desktop. Client configuration field names are not universal.

Available tools

Bilt exposes seven tools:

ToolPurpose
bilt_list_projectsList projects owned by the authenticated user
bilt_get_projectGet one project by projectId
bilt_create_projectCreate a project from a name and optional description
bilt_get_sessionGet session and workflow state for a projectId
bilt_send_messageSend build instructions or answer paused workflow questions
bilt_cancel_workflowCancel the active workflow for a projectId
bilt_get_messagesGet conversation history for a projectId

All public input fields use camelCase. bilt_send_message accepts a projectId and either a message or structured question answers. Question answers are passed as a JSON string and require the paused response's workflowId:

{
  "projectId": "project-id",
  "workflowId": "workflow-id",
  "answers": "[{\"questionIndex\":0,\"selectedOptions\":[\"Option A\"]}]"
}

There is no separate resume tool. If a workflow pauses for questions, answer them with bilt_send_message. If it pauses for secrets or a Supabase connection, open the returned projectUrl, complete the requested action there, and the workflow will resume automatically.

Queued workflows count as active. Before sending unrelated work, call bilt_get_session and wait until hasActiveWorkflows is false.

Raw HTTP

MCP clients must send Accept: application/json, text/event-stream:

curl -N https://mcp.bilt.me/mcp \
  -H 'Authorization: Bearer bilt_live_YOUR_TOKEN_HERE' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'Content-Type: application/json' \
  -H 'Mcp-Protocol-Version: 2025-03-26' \
  --data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"curl","version":"1.0.0"}}}'

Use an MCP client for normal operation; the raw request is only a transport check.

Migration from legacy SSE

Existing configurations must:

  1. Change https://mcp.bilt.me/mcp/sse to https://mcp.bilt.me/mcp.
  2. Select Streamable HTTP and disable SSE fallback.
  3. Keep the Bearer token in the Authorization header.
  4. Update stale tool calls to the seven-tool camelCase contract above.

Documentation and support

The hosted Bilt MCP server is proprietary. This repository contains documentation, examples, and agent skill metadata under the terms in LICENSE.