Skip to main content
Glama

meta_ads_lead_forms_update

Update a Meta Ads lead form's lifecycle status to ACTIVE or ARCHIVED. ACTIVE accepts new submissions; ARCHIVED stops them but preserves existing leads. Reversible by re-calling with opposite status.

Instructions

Changes a lead form's lifecycle status. This tool updates only the status field — other form fields (questions, privacy_policy_url, name, follow_up_action_url, locale, advanced layout) are intentionally out of scope; Meta's post-creation mutability has shifted between versions, so mureo stays conservative. Pass status=ARCHIVED to retire a form (existing leads stay queryable; the form stops accepting new submissions). Pass status=ACTIVE to undo an archive. Mutating, reversible (re-call with the opposite value).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
statusYesTarget status. ACTIVE accepts submissions; ARCHIVED stops them. Other values (DRAFT, DELETED, DELETION_PENDING) appear in read paths but cannot be set by an operator.
form_idYesLead form ID to update.
account_idNoMeta Ads account ID in the format 'act_XXXXXXXXXX' (e.g. 'act_1234567890'). Optional — falls back to META_ADS_ACCOUNT_ID from the configured credentials. The leading 'act_' prefix is required.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full transparency burden and does so thoroughly. It discloses the tool is 'Mutating, reversible' and explains the effects of each status value: ARCHIVED stops new submissions but keeps existing leads queryable, ACTIVE undoes an archive. It also warns about Meta's version-dependent mutability, which is a valuable caveat.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each with a clear role: purpose, scope/rationale, and usage instructions. Front-loaded and efficient with no filler. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple mutation tool with 100% schema coverage, the description is comprehensive. It covers purpose, scope, side effects, reversibility, and provides specific status instructions. No output schema exists, but this is acceptable given the simplicity of the operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with rich descriptions for all parameters, so the baseline is 3. The description adds minor behavioral nuance (e.g., 'existing leads stay queryable' for ARCHIVED) but does not significantly expand on form_id or account_id, which are already well-documented in the schema. The added value is marginal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource: 'Changes a lead form's lifecycle status.' It clearly distinguishes this from sibling lead form tools by stating it updates only the status field and names the other out-of-scope fields, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit usage direction: 'Pass status=ARCHIVED to retire a form... Pass status=ACTIVE to undo an archive.' It also states which fields are intentionally out of scope, effectively telling the agent when not to use this tool (for any non-status updates). The explanation of Meta's mutability limitations adds context without being verbose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/logly/mureo'

If you have feedback or need assistance with the MCP directory API, please join our Discord server