The Elements MCP (Model Context Protocol) server gives your AI assistant a set of tools for working with Elements. This article lists every Elements MCP tool, what it does, and whether it only reads data or also writes to Elements.
You don't need to call these tools by name: the Elements skills pick the right tool for your question automatically. Use this list when you want to know exactly what your assistant can do.
No Elements MCP tool changes your Salesforce org. Every tool works on the metadata Elements has already synced, and there is no delete tool. Write tools only create or change things inside Elements.
Prerequisites
Elements has enabled MCP access for the Space you want to use. MCP access is a licensed feature, available to customers on Advanced Metadata Management plan
A Salesforce Org is connected and synced to that Space.
An AI assistant that supports remote MCP servers with the MCP standard's secure sign-in (OAuth 2.1 with PKCE). Elements has been tested with Claude (CLI and Cowork), Codex CLI, ChatGPT (Work) and Cursor.
Permission to add a custom connector or MCP server in that assistant. In many companies only an IT administrator can do this.
Your Elements sign-in. You sign in with your existing Elements account, the same way you do in the browser.
Which tools your assistant can see
Every Elements MCP tool respects your existing Elements permissions: a tool never returns more than you could already see in the Elements app.
A tool that none of your authorized Spaces makes available, through its plan, licences and your role, doesn't appear in your assistant's tool list at all. If you use a visible tool in a Space that doesn't qualify, or without rights to the specific item, your assistant tells you. After a licensing change, start a new conversation so your assistant picks up the updated tool list.Spaces
Account / Space context
Tool | What it does | Read/Write |
get_active_space | Shows which Space your assistant is currently using, even when a different Space id is passed. | Read |
list_authorized_spaces | Lists every Space you're authorized to use. | Read |
set_active_space | Switches your assistant to a different Space. Changes only your own session, not Org data. | Read |
create_space | Creates a new Elements Space. | Write |
revoke_access | Revokes this client's access to Elements. Also the way to re-authorize with a different Space selection: the next request restarts the consent flow. | Write |
Metadata Intelligence
Tool | What it does | Read/Write |
list_reference_models | Lists the Salesforce Orgs available to search. | Read |
metadata_search | Finds Salesforce metadata (objects, fields, flows and more) by keyword. | Read |
get_metadata_node | Shows full detail for one metadata item, including its fields and relationships. | Read |
get_dependencies | Shows what a metadata item depends on, and what depends on it. | Read |
get_inbound_relationship_population | Lists inbound relationship fields for up to 25 objects and ranks them by population percentage. A null percentage means the population is unknown, not zero. | Read |
explain_metadata_item | Explains in plain language what a metadata item does: what an automation does, how a field or object gets its value, or the order things run in when a record is saved. Uses AI. | Read |
code_search | Searches Apex code and other metadata source for an exact text, such as an API name or a hardcoded ID. | Read |
get_node_change_history | Shows who changed a metadata item, when, and what changed. | Read |
get_access | Shows which Profiles, Permission Sets, Permission Set Groups and Groups can access a metadata item, and how many users each one reaches. | Read |
list_supported_metadata_types | Lists the Salesforce metadata types Elements can sync and analyze. | Read |
list_metadata_columns | Lists the attributes you can filter on for a metadata type. | Read |
query_metadata | Builds a filtered list of metadata matching specific criteria. | Read |
save_metadata_view | Saves a filtered metadata list as a named, reusable view. | Write |
run_quick_cleanup_view | Returns one of Elements' ready-made cleanup lists, such as inactive automations or unused fields. | Read |
create_proposed_node | Registers a proposed metadata item (a planned object, field, Flow or Prompt Template) in a reference model, so intended metadata can be tracked and attached to diagrams. | Write |
list_managed_packages | Lists the Salesforce managed packages installed in a reference model, with each one's namespace prefix and component count per metadata type. | Read |
plan_package_uninstall | Plans the removal of a managed package: inventories its components, finds incoming dependencies, separates real uninstall blockers from references that clear with the package, flags automations to deactivate, and returns a sequenced removal plan. It never uninstalls anything. | Read |
MetaFields
MetaFields are custom fields your Space defines on Salesforce metadata in Elements, for example to classify objects by retention priority.
MetaField tools can remove values. update_metafield permanently removes MetaField values held in Elements when you narrow a MetaField's applicability or remove options, and set_metafield_values can clear values. Follow the count-before-you-change steps in the elements-metafields skill before making those changes.
Tool | What it does | Read/Write |
list_metafields | Lists your Space's MetaFields, including their options, applicability and remaining capacity. | Read |
create_metafield | Creates one MetaField on Salesforce metadata in Elements. | Write |
update_metafield | Updates a MetaField definition. Narrowing its applicability or removing options also removes affected values. | Write |
set_metafield_values | Sets or clears MetaField values on many metadata items in bulk, including dependent picklists. | Write |
list_metafield_dependencies | Lists dependent-picklist matrices between MetaFields, with their field and option labels. | Read |
create_metafield_dependency | Creates a dependent-picklist matrix between two MetaFields. | Write |
update_metafield_dependency | Replaces a MetaField dependency matrix without changing the paired fields. | Write |
Org health
Tool | What it does | Read/Write |
get_org_structure | Summarizes the structural shape of your org: automation counts, data-holding objects and integration technologies. | Read |
get_automation_health | Summarizes the health of your org's flows, triggers and rules. | Read |
get_tech_debt_summary | Summarizes technical debt across your org, such as inactive or unused metadata. | Read |
get_compliance_summary | Summarizes your org's security and permissions posture across Profiles, Permission Sets, Roles and Groups. | Read |
get_governance_summary | Summarizes recent change velocity and description coverage across your org. | Read |
get_field_population | Ranks objects by how well their fields are populated with data. | Read |
get_object_dependency_analysis | Ranks objects by how many other components depend on them. | Read |
get_object_dependency_drill_down | Lists the specific components behind an object's dependency count. | Read |
get_analytic_drill_down | Lists the specific metadata items behind any health or governance chart slice. | Read |
Usage, data loads and agent opportunities
These tools use usage telemetry as well as metadata. Apex execution telemetry comes from Salesforce Event Monitoring daily Apex event logs. Having no telemetry for an item doesn't prove the item is unused. The Apex tools exist for the Remove Unused Apex playbook.
Tool | What it does | Read/Write |
has_event_monitoring | Checks whether the connected org has daily Apex event logs and reports the coverage seen in the last 30 days. Finding none is a valid result and doesn't prove nothing is used. | Read |
get_unused_apex_candidates | Ranks Apex classes and triggers that may be unused, from synced metadata and execution evidence. It may return a disqualified result when there isn't enough evidence. Download links for the results expire after 120 seconds. | Read |
run_data_load_impact | Shows which automations, validation rules and record locks a planned Salesforce data load into one to five objects may trigger, before the load runs. Download links for the full evidence expire after 120 seconds. | Read |
scan_agentic_opportunities | Scans your whole Org and ranks each object as a candidate for an AI agent, using signals such as volume, free-text ratio, automation density, growth and engagement, with the factors behind each score. | Read |
get_object_usage | Returns the full usage profile for one object (record counts, daily changes, last-activity dates and engagement). | Read |
Diagrams and stories
Tool | What it does | Read/Write |
list_diagrams | Lists the process-map diagrams in your Space, with your role and edit rights on each. | Read |
get_process_map | Reads an existing diagram as structured data, and checks whether a diagram being generated is finished. | Read |
generate_process_map | Generates a UPN (Universal Process Notation) process map from a text description, transcript or uploaded images. Uses AI. | Write |
upload_process_map_image | Uploads an image to use as input for process-map generation. | Write |
export_diagram | Exports a diagram as a ZIP file for editing, with download and upload links. | Read |
import_diagram | Imports an edited diagram ZIP back into Elements, replacing the current draft. Releasing an approved version stays a person's job in the Elements app. | Write |
generate_org_to_process | Generates process diagrams for a Salesforce lifecycle object (such as Opportunity, Case or Lead) from the org's actual record types, lifecycle fields and synced automations. | Write |
list_stories | Lists user stories in your Space, 20 per page by default and up to 100. | Read |
generate_stories_from_diagram | Generates user stories from selected diagram activities, each with a headline, description and acceptance criteria. Uses AI. | Write |
Decision Engine
The Decision Engine tools plan a Salesforce automation or schema change before you build it. All of them use AI. Each analysis runs in the background, and your assistant checks get_analysis_result before starting the next step. Elements keeps the analysis; any requirements and stories it produces stay drafts. Choosing to create new schema goes straight to the backlog draft, while reusing or extending existing schema adds dependency, impact and risk analysis first.
Tool | What it does | Read/Write |
run_automation_inventory | Inventories the existing Salesforce automations related to an automation request. | Read |
run_automation_recommendation | Recommends implementation options (update existing or create new) and records the one you pick. | Read |
run_schema_inventory | Inventories the objects, fields and record types relevant to a schema request, and clarifies ambiguous parent objects. | Read |
run_schema_recommendation | Recommends reusing, extending or creating schema, and records the approach you pick. | Read |
get_analysis_result | Checks the current analysis run and returns its finished result or failure. | Read |
run_dependency_scan | Finds the target metadata and scans its direct dependencies. | Read |
run_change_impact_analysis | Analyzes the impact of the change and produces a change plan, including a capped deletion cascade when requested. | Read |
run_architecture_risk_analysis | Analyzes the change for architecture risks, and asks for confirmation on high-complexity changes. | Read |
run_backlog_draft | Drafts a requirement and user stories for delivery. The draft is returned for review and isn't written into Elements. | Read |
Frequently Asked Questions
Can any Elements MCP tool delete or change my Salesforce metadata?
No Elements MCP tool deletes or changes your Salesforce metadata. There is no delete tool, and no tool writes to Salesforce. The write tools listed above only create or change things inside Elements, such as Spaces, metadata views, MetaFields, proposed metadata items, diagram drafts and user stories.
Which Elements MCP tools use AI?
The Elements MCP tools that use a large language model are explain_metadata_item, all the Decision Engine tools, generate_process_map and generate_stories_from_diagram. They run through the same licensed AI features Elements already offers in the web app.
Why can't my assistant see a tool listed here?
Your assistant can't see an Elements MCP tool when none of your authorized Spaces makes it available through its plan, licences and your role. Check the per-tool requirements in the tools reference on GitHub, and start a new conversation after any licensing change.
