Works wherever your team already works.
Our MCP server connects Claude Code, Cursor, Copilot or Agentforce, or your agent of choice, to the metadata graph database. Everything else here is another way into Elements, because you should not have to move to get an answer about your own Org.
Salesforce MCP server for AI coding tools and agents
Elements exposes an MCP server, so any client that speaks the protocol can reach your Org model. These four are the ones we build and test against.
Claude Code
The fullest implementation. Ships as a plugin rather than a bare server, so the MCP tools arrive bundled with the skills and sub-agents that know how to drive them. Long jobs run in phases with state on disk.
AvailableCursor
Connect the MCP server and ask about your Org without leaving the editor. Same graph database, same resolved dependencies, alongside the code you are already writing.
AvailableCopilot
The same server, reached from Copilot, so teams standardised on Microsoft tooling get the Org context without adopting anything new.
AvailableAgentforce
Ground Salesforce's own agents on the resolved model rather than on raw metadata, so their answers are based on your actual Org rather than on a guess at it.
AvailableAny other MCP-compatible client can connect too. These four are the ones we build and test against.
A server is not the same as a plugin.
Most MCP servers hand an agent a set of tools and leave it to work out the rest. A tool tells an agent what it can do. It does not tell it when, in what order, or what good looks like.
Tools
The calls that read your Org. Every client gets these.
Skills
Which tool to reach for and in what order. Bundled where the client supports it.
Phases
State written to disk between phases, so a six-hour job survives a restart.
The technical detail, if you want it.
Seventeen skills, nine engagements and twenty MCP tools. Two grids showing exactly how tools, skills and phases compose. Reference rather than reading, so hover a row or a column.
Which skills go into which engagement
Seventeen skills across nine engagements. Hover any row or column to see what connects to what.
| Skill Engagement | Org discovery | Agentic roadmap | Impact assessment | Org merge / split | CPQ → Revenue Cloud | Data Cloud set-up | Data corruption | Access audit | Clean up & agentify |
|---|---|---|---|---|---|---|---|---|---|
| Live skills | |||||||||
| Metadata ExplorerFinds and explains individual metadata nodes: objects, fields, flows, triggers, validation rules. | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Org DiagnosticBaseline health check across structure, automation, tech debt, compliance and governance. | Yes | Yes | No | Yes | No | Yes | Yes | No | Yes |
| Tech DebtResolves flagged nodes, checks blast radius and last-touched date, returns a ranked remediation list. | Yes | Yes | No | Yes | Yes | No | Yes | No | Yes |
| Access AuditWhich Profiles, Permission Sets and Groups grant access to a node, and how many users that is. | Yes | No | No | Yes | No | Yes | No | Yes | No |
| Change BriefingEvery node changed in a date window, with velocity, breakdown by type and anomalies. | Yes | No | Yes | No | No | No | Yes | Yes | No |
| Metadata QueryFiltered ad-hoc lists of metadata, saveable as a named custom view. | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Package UninstallIdentifies every dependency that would break, and sequences the remediation first. | No | No | No | Yes | No | No | No | No | Yes |
| MetaFieldsCreate, update and query custom metadata fields, layering your data onto the metadata graph database. | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes |
| Agent OpportunitiesScans for automation candidates and scores each by effort and impact. | No | Yes | No | No | Yes | No | No | No | Yes |
| Org-to-ProcessReverse-engineers the business process hidden inside existing automation. | Yes | Yes | No | Yes | Yes | No | Yes | No | Yes |
| Agent FinderScores every process against an agent-readiness rubric. | No | Yes | No | No | Yes | No | No | No | Yes |
| AgentScriptDrafts and previews Agentforce topic specs before anything is committed. | No | Yes | No | No | Yes | No | No | No | Yes |
| DiagramsAuto-generates visual process maps from live configuration. | Yes | Yes | No | Yes | Yes | Yes | No | No | Yes |
| StoriesTurns a process diagram into a backlog with acceptance criteria, ready for Jira or ADO. | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| In development | |||||||||
| Agent Diagnostics ↗In development. Monitors deployed agents for misfires, escalations and config gaps. | No | Yes, in development | No | No | No | No | Yes, in development | No | Yes, in development |
| Decision Engine ↗In development. Models the full blast radius of a change before it reaches production. | Yes, in development | Yes, in development | Yes, in development | Yes, in development | Yes, in development | Yes, in development | Yes, in development | No | Yes, in development |
| Org-to-Agent ↗In development. Turns a recovered process map into a complete Agentforce agent design. | No | Yes, in development | No | No | Yes, in development | No | No | No | Yes, in development |
And which MCP tools each skill orchestrates
The layer underneath. A skill is not one call, it is a sequence of them in the order our architects run them.
| MCP tool Skill | Metadata Explorer | Org Diagnostic | Change Briefing | Tech Debt | Access Audit | Metadata Query | Package Uninstall | MetaFields | Agent Opportunities | Org-to-Process + AgentScript | Diagrams | Stories | Org-to-Agent ↗ | Agent Diagnostics ↗ | Decision Engine ↗ |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| list_reference_models | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | No | Yes | No | No |
| metadata_search | Yes | No | No | No | Yes | No | Yes | No | No | Yes | No | No | No | No | Yes |
| get_metadata_node | Yes | No | Yes | No | Yes | No | Yes | No | No | No | No | No | No | No | Yes |
| get_dependencies | Yes | No | No | Yes | No | No | Yes | No | No | No | No | No | No | No | No |
| explain_metadata_item | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No |
| get_org_structure | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No |
| get_automation_health | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No |
| get_tech_debt_summary | No | Yes | No | Yes | No | No | No | No | No | No | No | No | No | No | No |
| get_analytic_drill_down | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No |
| get_node_change_history | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No |
| query_metadata | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | Yes | No |
| list_metafields | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No |
| scan_agentic_opportunities | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No |
| generate_org_to_process | No | No | No | No | No | No | No | No | No | Yes | No | No | Yes | No | No |
| get_process_map | No | No | No | No | No | No | No | No | No | Yes | Yes | No | Yes | No | No |
| preview_agent_script | No | No | No | No | No | No | No | No | No | Yes | No | No | Yes | Yes | No |
| generate_process_map | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No |
| generate_stories_from_diagram | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No |
| run_change_impact_analysis ↗ | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes, in development |
| run_backlog_draft ↗ | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes, in development | Yes, in development |
Every row on the left is answered in the Elements app in a few clicks, or by asking, if your team works that way. Either route, you stopped doing the middle column.
The connection everything else runs on
The MCP server, the app, the Chrome extension and every tool above are ways of reaching something Elements already knows. That knowledge comes from one place: your Salesforce Org.
Every component, indexed
Objects, fields, flows, Apex, validation rules, layouts, permission sets, reports and list views. Read from the Org and held in the metadata graph database, with the relationships resolved rather than inferred.
Production and sandboxes
Connect as many Orgs as you run. Pricing is on your total Salesforce Org user footprint rather than per connection, so a multi-Org estate does not get penalised for being one.
Kept current as the Org changes
Re-indexed on a schedule with a change log, so the picture stays current instead of ageing from the day someone last wrote it down.
Beyond the native dependency API
Salesforce exposes MetadataComponentDependency, but it is capped at 2,000 records per query and you cannot report on it. Elements resolves multi-level dependencies across the whole Org.
Industry Clouds
Industry Cloud metadata is indexed automatically with the Industries add-on, so OmniStudio and the rest of it stops being a blind spot.
Data Cloud
Data 360 metadata is indexed automatically with the Data360 add-on, and appears in the same graph as everything else.
Delivery and change tooling
Requirements and stories generated from the real Org, pushed where your team already tracks work, with the metadata context attached.
Jira
Stories generated from the real Org, pushed into your board with the dependency context attached.
Azure DevOps
The same story output, into Azure Boards.
Copado
Analysis handed to the pipeline your team already deploys through.
All DevOps integrations
Including Salesforce DevOps Center. The full list lives on its own page.
More ›And everywhere else you already are
The same graph database, reached without leaving the tool you happen to be in.
Managed package
Installed from AppExchange, so the dictionary and impact analysis sit inside Salesforce.
Chrome extension
Metadata context on the Setup screen you are already looking at.
More ›Metadata Explorer
The metadata explorer on its own, outside the full space.
More ›Not sure which route fits your team?
Tell us what your team works in and we will show you what connecting looks like.