salesforce-metadata-mcp 2.3.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,120 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.5.0] - 2026-05-28
4
+
5
+ ### New Tools — 45 Additions Across 11 Categories
6
+
7
+ #### Admin & Org Management (6 new)
8
+ - `sf_create_user_role_hierarchy` — Create a UserRole in the Salesforce role hierarchy with optional parent role
9
+ - `sf_reset_user_password` — Reset a user's password and send a password-reset email
10
+ - `sf_freeze_user` — Freeze or unfreeze a user account (blocks login without deactivating)
11
+ - `sf_create_territory` — Create an Enterprise Territory Management (ETM) Territory2
12
+ - `sf_assign_territory_to_user` — Assign a user to a Territory2 via UserTerritory2Association
13
+ - `sf_create_forecast_hierarchy` — Configure a Collaborative Forecasting hierarchy manager relationship
14
+
15
+ #### Object Schema (5 new)
16
+ - `sf_delete_custom_object` — Permanently delete a custom object and all its records (destructive)
17
+ - `sf_delete_custom_field` — Permanently delete a custom field from an object (destructive)
18
+ - `sf_create_rollup_summary_field` — Create a Roll-Up Summary field (COUNT/SUM/MIN/MAX) on a master object
19
+ - `sf_create_external_id_field` — Create an External ID indexed field for upsert operations
20
+ - `sf_enable_object_features` — Enable history tracking, activities, reports, search, feeds, and Bulk API on a custom object
21
+
22
+ #### Automation & Flows (4 new)
23
+ - `sf_update_flow` — Update a Flow's label, description, or API version
24
+ - `sf_clone_flow` — Clone a Flow to a new API name and label
25
+ - `sf_create_flow_test` — Create a Flow Interview Test definition for the Flow Test Manager
26
+ - `sf_create_invocable_action` — Register a custom Invocable Action wrapping an @InvocableMethod Apex class
27
+
28
+ #### Apex Development (5 new)
29
+ - `sf_search_apex` — Search Apex class and trigger source code for a keyword across the org
30
+ - `sf_get_apex_logs` — List recent Apex debug log entries with metadata (operation, duration, size)
31
+ - `sf_get_apex_log_body` — Retrieve the full content of an Apex debug log by ID
32
+ - `sf_create_apex_batch` — Generate and deploy a complete Database.Batchable Apex batch class
33
+ - `sf_create_apex_scheduler` — Generate and deploy a Schedulable Apex class, with optional immediate scheduling
34
+
35
+ #### Deployment & Environment Management (5 new)
36
+ - `sf_rollback_deployment` — Cancel an in-progress metadata deployment by async job ID
37
+ - `sf_create_scratch_org` — Create a new scratch org using SF CLI (requires Dev Hub)
38
+ - `sf_create_sandbox` — Create a new sandbox (Developer, Developer_Pro, Partial, or Full)
39
+ - `sf_refresh_sandbox` — Refresh an existing sandbox to match the current production state
40
+ - `sf_export_package_xml` — Generate a package.xml manifest by listing all components of specified metadata types
41
+
42
+ #### Experience Cloud (3 new)
43
+ - `sf_create_experience_container` — Create a container region within an Experience Cloud page
44
+ - `sf_set_experience_site_login` — Configure login, self-registration, and SSO settings for an Experience site
45
+ - `sf_create_cms_content` — Create a CMS content item in a Salesforce CMS workspace
46
+
47
+ #### Data Management (4 new)
48
+ - `sf_export_records` — Export Salesforce records as CSV data via SOQL
49
+ - `sf_upsert_record` — Upsert a record using an External ID field for matching
50
+ - `sf_get_record` — Retrieve a single record by 15/18-char ID with optional field selection
51
+ - `sf_search_records` — Cross-object text search using SOSL with configurable search group and object list
52
+
53
+ #### Integrations & Events (3 new)
54
+ - `sf_create_platform_event_subscription` — Create an Apex trigger subscribing to a Platform Event channel
55
+ - `sf_create_change_data_capture` — Enable Change Data Capture for one or more Salesforce objects
56
+ - `sf_create_rest_resource` — Create and deploy an Apex REST resource (@RestResource) class
57
+
58
+ #### Monitoring & Observability (4 new)
59
+ - `sf_get_org_limits` — Retrieve current API and governor limit usage via the Limits REST API
60
+ - `sf_get_flow_errors` — Retrieve Flow interview fault records with error messages and related records
61
+ - `sf_get_apex_test_results` — Query Apex test results from recent test runs via Tooling API
62
+ - `sf_get_deployment_history` — Retrieve recent deployment history with status, component counts, and errors
63
+
64
+ #### Agentforce (3 new)
65
+ - `sf_create_agent_channel` — Create a BotChannel connecting an agent to a deployment channel (Embedded Service, Slack, etc.)
66
+ - `sf_clone_agent` — Clone an Agentforce Agent with all its topics, actions, and planner bundle
67
+ - `sf_export_agent` — Export a complete agent configuration as JSON for documentation or migration
68
+
69
+ #### OmniStudio (3 new)
70
+ - `sf_export_omnistudio_component` — Export any OmniStudio component as JSON for backup or migration
71
+ - `sf_import_omnistudio_component` — Import an OmniStudio component from previously exported JSON
72
+ - `sf_create_document_generation` — Create an OmniStudio Document Generation configuration (OmniDocumentGenerationConfig)
73
+
74
+ ---
75
+
76
+ ## [2.4.0] - 2026-05-28
77
+
78
+ ### New Tools — 14 Additions Across 6 Categories
79
+
80
+ #### Lightning Pages & App Builder (2 new)
81
+ - `sf_create_lightning_app_page` — Create a Lightning App Page (FlexiPage of type AppPage) for use in Lightning Apps
82
+ - `sf_create_letterhead` — Create email letterheads (Letterhead metadata) for Classic email templates
83
+
84
+ #### Users & Data Management (2 new)
85
+ - `sf_delete_record` — Delete a single SObject record by ID via REST API
86
+ - `sf_send_email` — Send email from Salesforce via the emailSimple invocable action
87
+
88
+ #### Audit Trail & Monitoring (4 new)
89
+ - `sf_get_setup_audit_trail` — Query SetupAuditTrail for org configuration change history (last 6 months)
90
+ - `sf_get_login_history` — Query LoginHistory for user login activity (source IP, browser, status)
91
+ - `sf_get_event_logs` — Fetch and parse EventLogFile entries (Login, API, Report, Flow, Apex, LightningPageView, etc.)
92
+ - `sf_get_field_history` — Query {Object}History for field-level change history on a specific record
93
+
94
+ #### Deployment & Org Management (1 new)
95
+ - `sf_compare_orgs` — Compare metadata between two orgs using SF CLI aliases; returns components only in source, only in target, or different in both
96
+
97
+ #### Integration & Connectivity (2 new)
98
+ - `sf_create_certificate` — Create a self-signed Certificate (Certificate metadata) for callout signing and SSO
99
+ - `sf_create_event_relay` — Create an EventRelayConfig to relay Platform Events or CDC to Amazon EventBridge or another event bus
100
+
101
+ #### Einstein & AI Features (3 new)
102
+ - `sf_create_einstein_prediction` — Create an Einstein Prediction Builder definition (MLPredictionDefinition metadata) for binary classification or regression
103
+ - `sf_create_next_best_action` — Create a Next Best Action recommendation strategy (RecommendationStrategy metadata)
104
+ - `sf_create_einstein_bot` — Create a classic Einstein Bot with ML domain and conversation dialogs (Bot + BotVersion metadata)
105
+
106
+ ### Notes on Existing Tools
107
+ The following tools requested in v2.4.0 were already present from earlier releases and are unchanged:
108
+ - Security & Permissions: `sf_create_permission_set_group`, `sf_create_muting_permission_set`, `sf_set_field_level_security`, `sf_set_org_wide_defaults`, `sf_clone_profile`, `sf_update_profile`
109
+ - Lightning Pages: `sf_create_lightning_record_page`, `sf_create_lightning_home_page`, `sf_update_lightning_page`, `sf_assign_lightning_page`, `sf_assign_compact_layout`
110
+ - Reports & Dashboards: `sf_create_report`, `sf_update_dashboard`, `sf_create_report_folder`, `sf_share_report_folder`
111
+ - Users & Data: `sf_create_user`, `sf_update_user`, `sf_assign_queue_member`, `sf_create_public_group`, `sf_query_records`, `sf_create_record`, `sf_update_record`, `sf_bulk_import_records`
112
+ - Deployment: `sf_validate_deployment`, `sf_list_metadata`
113
+ - Integrations: `sf_create_outbound_message`, `sf_create_auth_provider`
114
+ - GitHub Actions workflows: present since v2.3.0 (ci.yml, publish.yml, sf-release-monitor.yml, api-version-bump.yml)
115
+
116
+ ---
117
+
3
118
  ## [2.3.0] - 2026-05-28
4
119
 
5
120
  ### New Tools — 30 Additions Across 8 Categories
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # salesforce-metadata-mcp
2
2
 
3
- [![Version](https://img.shields.io/badge/version-2.3.0-blue.svg)](https://npmjs.com/package/salesforce-metadata-mcp)
3
+ [![Version](https://img.shields.io/badge/version-2.5.0-blue.svg)](https://npmjs.com/package/salesforce-metadata-mcp)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
5
5
  [![MCP Compatible](https://img.shields.io/badge/MCP-Compatible-green.svg)](https://modelcontextprotocol.io)
6
6
 
7
- **The most comprehensive Salesforce MCP server.** 140+ tools for building, configuring, and automating Salesforce orgs directly from Claude or any MCP client — covering metadata, Apex, LWC, Agentforce agents, OmniStudio, OmniChannel, Experience Cloud, Field Service, Messaging, bulk data, users, reports, security, and more.
7
+ **The most comprehensive Salesforce MCP server.** 200+ tools for building, configuring, and automating Salesforce orgs directly from Claude or any MCP client — covering metadata, Apex, LWC, Agentforce agents, OmniStudio, OmniChannel, Experience Cloud, Field Service, Messaging, Einstein AI, audit trail, bulk data, users, reports, security, territories, sandboxes, CDC, REST resources, document generation, and more.
8
8
 
9
9
  ---
10
10
 
@@ -46,6 +46,44 @@ See [SETUP.md](SETUP.md) for all authentication methods and detailed setup instr
46
46
 
47
47
  ---
48
48
 
49
+ ## What's New in v2.5.0
50
+
51
+ 45 new tools across 11 categories:
52
+
53
+ - **Admin & Org Management** — Role hierarchy, reset password, freeze user, ETM territories, forecast hierarchy
54
+ - **Object Schema** — Delete custom objects/fields, roll-up summary fields, external ID fields, enable object features
55
+ - **Automation & Flows** — Update/clone flows, flow tests, custom invocable actions
56
+ - **Apex Development** — Search Apex source code, get/read debug logs, create batch and scheduler classes
57
+ - **Deployment & Environments** — Cancel deployments, create scratch orgs, create/refresh sandboxes, export package.xml
58
+ - **Experience Cloud** — Experience containers, site login config, CMS content creation
59
+ - **Data Management** — Export records to CSV, upsert by external ID, get record by ID, SOSL search
60
+ - **Integrations & Events** — Platform Event trigger subscriptions, CDC enablement, Apex REST resources
61
+ - **Monitoring** — Org limits usage, flow runtime errors, Apex test results, deployment history
62
+ - **Agentforce** — Agent channels, clone agents, export agent configurations
63
+ - **OmniStudio** — Export/import components, document generation templates
64
+
65
+ See [CHANGELOG.md](CHANGELOG.md) for full release notes.
66
+
67
+ ---
68
+
69
+ ## What's New in v2.4.0
70
+
71
+ 14 new tools across 6 categories:
72
+
73
+ - **Lightning App Page** — `sf_create_lightning_app_page` for Lightning App tab pages
74
+ - **Letterhead** — `sf_create_letterhead` for Classic email template branding
75
+ - **Record Delete** — `sf_delete_record` via REST API
76
+ - **Email** — `sf_send_email` via the emailSimple invocable action
77
+ - **Audit Trail** — `sf_get_setup_audit_trail`, `sf_get_login_history`, `sf_get_event_logs`, `sf_get_field_history`
78
+ - **Org Comparison** — `sf_compare_orgs` using SF CLI aliases
79
+ - **Certificates** — `sf_create_certificate` (self-signed, for callout signing/SSO)
80
+ - **Event Relay** — `sf_create_event_relay` to Amazon EventBridge or event bus
81
+ - **Einstein AI** — `sf_create_einstein_prediction`, `sf_create_next_best_action`, `sf_create_einstein_bot`
82
+
83
+ See [CHANGELOG.md](CHANGELOG.md) for full release notes.
84
+
85
+ ---
86
+
49
87
  ## What's New in v2.3.0
50
88
 
51
89
  30 new tools across 8 categories:
@@ -82,7 +120,7 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
82
120
 
83
121
  ---
84
122
 
85
- ## Tools (140+)
123
+ ## Tools (155+)
86
124
 
87
125
  ### Objects & Fields
88
126
  | Tool | Description |
@@ -159,6 +197,8 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
159
197
  | `sf_create_lightning_home_page` | Create a Lightning Home Page (FlexiPage) |
160
198
  | `sf_update_lightning_page` | Update an existing Lightning Page |
161
199
  | `sf_assign_lightning_page` | Assign a Lightning Page to an Experience site |
200
+ | `sf_create_lightning_app_page` | Create a Lightning App Page (FlexiPage for App tabs) |
201
+ | `sf_create_letterhead` | Create an email letterhead for Classic email templates |
162
202
 
163
203
  ### Apex, Visualforce & Aura
164
204
  | Tool | Description |
@@ -199,6 +239,8 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
199
239
  | `sf_create_record` | Create a single SObject record |
200
240
  | `sf_update_record` | Update an existing SObject record by ID |
201
241
  | `sf_bulk_import_records` | Bulk insert/upsert/update/delete via Bulk API 2.0 |
242
+ | `sf_delete_record` | Delete a single SObject record by ID |
243
+ | `sf_send_email` | Send email from Salesforce via the emailSimple action |
202
244
 
203
245
  ### Experience Cloud
204
246
  | Tool | Description |
@@ -238,6 +280,8 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
238
280
  | `sf_create_csp_setting` | Create CSP trusted sites for LWC |
239
281
  | `sf_create_outbound_message` | Create Workflow Outbound Messages |
240
282
  | `sf_create_auth_provider` | Create OAuth Auth Providers |
283
+ | `sf_create_certificate` | Create a self-signed Certificate for callout signing/SSO |
284
+ | `sf_create_event_relay` | Create an Event Relay to Amazon EventBridge or event bus |
241
285
 
242
286
  ### Change Sets & Deployment
243
287
  | Tool | Description |
@@ -249,6 +293,7 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
249
293
  | `sf_check_deploy_status` | Check deployment job status |
250
294
  | `sf_retrieve_metadata` | Retrieve metadata from the org |
251
295
  | `sf_list_metadata` | List all components of a metadata type |
296
+ | `sf_compare_orgs` | Compare metadata between two orgs using SF CLI aliases |
252
297
 
253
298
  ### OmniStudio
254
299
  | Tool | Description |
@@ -270,6 +315,21 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
270
315
  | `sf_create_calculation_matrix` | Create a Calculation Matrix for rule-based lookups |
271
316
  | `sf_create_calculation_procedure` | Create a Calculation Procedure with multi-step logic |
272
317
 
318
+ ### Audit Trail & Monitoring
319
+ | Tool | Description |
320
+ |------|-------------|
321
+ | `sf_get_setup_audit_trail` | Query SetupAuditTrail for org configuration change history |
322
+ | `sf_get_login_history` | Query LoginHistory for user login activity |
323
+ | `sf_get_event_logs` | Fetch and parse EventLogFile entries (Login, API, Flow, Apex, etc.) |
324
+ | `sf_get_field_history` | Get field-level change history for a specific record |
325
+
326
+ ### Einstein & AI
327
+ | Tool | Description |
328
+ |------|-------------|
329
+ | `sf_create_einstein_prediction` | Create an Einstein Prediction Builder definition |
330
+ | `sf_create_next_best_action` | Create a Next Best Action recommendation strategy |
331
+ | `sf_create_einstein_bot` | Create a classic Einstein Bot with dialogs |
332
+
273
333
  ### OmniChannel & Field Service
274
334
  | Tool | Description |
275
335
  |------|-------------|
package/dist/index.js CHANGED
@@ -6,14 +6,14 @@ import { createServer } from "http";
6
6
  import { registerTools } from "./tools/index.js";
7
7
  const server = new McpServer({
8
8
  name: "salesforce-metadata-mcp",
9
- version: "2.3.0",
9
+ version: "2.5.0",
10
10
  });
11
11
  registerTools(server);
12
12
  // ─── Transport: stdio ─────────────────────────────────────────────────────────
13
13
  async function runStdio() {
14
14
  const transport = new StdioServerTransport();
15
15
  await server.connect(transport);
16
- console.error("Salesforce Metadata MCP server v2.3.0 running on stdio");
16
+ console.error("Salesforce Metadata MCP server v2.5.0 running on stdio");
17
17
  }
18
18
  // ─── Transport: HTTP ──────────────────────────────────────────────────────────
19
19
  function readBody(req) {
@@ -38,7 +38,7 @@ async function runHTTP() {
38
38
  const url = req.url ?? "/";
39
39
  if (url === "/health" && req.method === "GET") {
40
40
  res.writeHead(200, { "Content-Type": "application/json" });
41
- res.end(JSON.stringify({ status: "ok", server: "salesforce-metadata-mcp", version: "2.3.0"}));
41
+ res.end(JSON.stringify({ status: "ok", server: "salesforce-metadata-mcp", version: "2.5.0"}));
42
42
  return;
43
43
  }
44
44
  if (url === "/mcp" && req.method === "POST") {
@@ -64,7 +64,7 @@ async function runHTTP() {
64
64
  res.end(JSON.stringify({ error: "Not found" }));
65
65
  });
66
66
  httpServer.listen(port, () => {
67
- console.error(`Salesforce Metadata MCP server v2.3.0 running on http://localhost:${port}/mcp`);
67
+ console.error(`Salesforce Metadata MCP server v2.5.0 running on http://localhost:${port}/mcp`);
68
68
  });
69
69
  }
70
70
  // ─── Entry point ──────────────────────────────────────────────────────────────