Meta Provider Setup and Muse Spark Model Configuration

Learn how to configure the Meta provider in OpenClaw, including authentication and model selection. This guide is for developers integrating Muse Spark reasoning models via the Responses API.

Read this when

  • You want to use Meta with OpenClaw
  • You need the MODEL_API_KEY env var or CLI auth choice

The Meta API relies on the OpenAI-compatible Responses API (POST /v1/responses) to serve the Muse Spark reasoning models. As an official external plugin, OpenClaw ships with Meta support built in.

PropertyValue
Provider idmeta
Plugin@openclaw/meta-provider
Auth env varMODEL_API_KEY
Onboarding flag--auth-choice meta-api-key
Direct CLI flag--meta-api-key <key>
APIResponses API (openai-responses)
Base URLhttps://api.meta.ai/v1
Default modelmeta/muse-spark-1.1
OpenClaw reasoning defaulthigh (reasoning.effort)

Getting started

Install the plugin

openclaw plugins install @openclaw/meta-provider
openclaw gateway restart

Set the API key

openclaw onboard --auth-choice meta-api-key
openclaw onboard --non-interactive --accept-risk --skip-health \
  --auth-choice meta-api-key \
  --meta-api-key "$MODEL_API_KEY"
export MODEL_API_KEY=<key>

Verify models are available

openclaw models list --provider meta

The static Muse Spark catalog entries are enumerated here. When MODEL_API_KEY cannot be resolved, openclaw models status --json flags the absent credential under auth.unusableProfiles.

Non-interactive setup

openclaw onboard --non-interactive --accept-risk --skip-health \
  --mode local \
  --auth-choice meta-api-key \
  --meta-api-key "$MODEL_API_KEY"

Built-in catalog

Pricing and data-usage details come from Meta's pricing and rate limits page.

Model refNameOpenClaw inputReasoningContext windowInput / cached input / output per 1M tokens
meta/muse-spark-1.1Muse Spark 1.1text, imageyes1,048,576$1.25 / $0.15 / $4.25
meta/muse-spark-1.2Muse Spark 1.2text, imageyes1,048,576$1.25 / $0.15 / $4.25
meta/muse-spark-1.2-contributorMuse Spark 1.2 Contributortext, imageyes1,048,576$0.10 / $0.002 / $0.20

Warning

Meta's pricing documentation and Terms of Service draw a line between Standard Services and Contributor/Discounted Services:

  • Standard Services apply by default. According to Meta, prompts and completions sent to Standard Services are not used for training Meta models.
  • Choosing Contributor/Discounted Services grants Meta permission to use Content submitted to and generated by those services, as spelled out in the Terms. Under those Terms, using Discounted Services counts as acknowledging that permission. Sensitive, confidential, or personal information must not be sent to the Discounted Services.

Availability is governed by Meta's Geographic Use Policy. API access is restricted in certain jurisdictions, and products built with the Contributor/Discounted model face extra end-user deployment constraints; those added constraints do not apply to your own usage or to products built with Standard Services.

Capabilities:

  • OpenClaw accepts text and image input
  • Tool calling and streaming are supported
  • Reasoning effort: minimal, low, medium, high, xhigh (OpenClaw default: high)
  • Stateless encrypted reasoning replay (store: false, include: ["reasoning.encrypted_content"])

Meta's model catalog shows text, image, video, audio, and PDF input for these models. OpenClaw's catalog only represents text and image input directly; the other upstream modalities do not appear as model-manifest input values.

When no thinking level is configured, OpenClaw explicitly picks high. That choice is an OpenClaw default, not Meta's behavior when a parameter is absent: Meta's reasoning documentation states that omitting reasoning.effort lets the model reason at a level it determines itself.

Warning

Muse Spark rejects reasoning.effort: "none". For this provider, OpenClaw translates --thinking off into minimal.

Manual config

{
  env: { vars: { MODEL_API_KEY: "<key>" } },
  agents: {
    defaults: {
      model: { primary: "meta/muse-spark-1.1" },
      models: {
        "meta/muse-spark-1.1": { alias: "Muse Spark 1.1" },
      },
    },
  },
}

Note

When the Gateway runs as a daemon (launchd, systemd, Docker), confirm that MODEL_API_KEY is reachable by that process, for instance via ~/.openclaw/.env or through env.shellEnv. A key exported only in an interactive shell will not assist a managed service unless the env is imported separately.

Smoke test

export MODEL_API_KEY=<key>
pnpm test:live -- extensions/meta/meta.live.test.ts

Enabled Meta cases from the live suite are exercised against POST /v1/responses.

723 words · updated Aug 17, 2026