salesforce-metadata-mcp 2.2.0 → 2.4.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 +104 -0
- package/README.md +113 -3
- package/dist/index.js +4 -4
- package/dist/schemas/index.js +382 -5
- package/dist/services/salesforce.js +1025 -0
- package/dist/tools/audit.js +96 -0
- package/dist/tools/data.js +33 -2
- package/dist/tools/deployment.js +22 -2
- package/dist/tools/einstein.js +79 -0
- package/dist/tools/index.js +8 -0
- package/dist/tools/integrations.js +39 -2
- package/dist/tools/omnichannel.js +279 -0
- package/dist/tools/omnistudio.js +280 -0
- package/dist/tools/ui.js +32 -2
- package/package.json +26 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,109 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [2.4.0] - 2026-05-28
|
|
4
|
+
|
|
5
|
+
### New Tools — 14 Additions Across 6 Categories
|
|
6
|
+
|
|
7
|
+
#### Lightning Pages & App Builder (2 new)
|
|
8
|
+
- `sf_create_lightning_app_page` — Create a Lightning App Page (FlexiPage of type AppPage) for use in Lightning Apps
|
|
9
|
+
- `sf_create_letterhead` — Create email letterheads (Letterhead metadata) for Classic email templates
|
|
10
|
+
|
|
11
|
+
#### Users & Data Management (2 new)
|
|
12
|
+
- `sf_delete_record` — Delete a single SObject record by ID via REST API
|
|
13
|
+
- `sf_send_email` — Send email from Salesforce via the emailSimple invocable action
|
|
14
|
+
|
|
15
|
+
#### Audit Trail & Monitoring (4 new)
|
|
16
|
+
- `sf_get_setup_audit_trail` — Query SetupAuditTrail for org configuration change history (last 6 months)
|
|
17
|
+
- `sf_get_login_history` — Query LoginHistory for user login activity (source IP, browser, status)
|
|
18
|
+
- `sf_get_event_logs` — Fetch and parse EventLogFile entries (Login, API, Report, Flow, Apex, LightningPageView, etc.)
|
|
19
|
+
- `sf_get_field_history` — Query {Object}History for field-level change history on a specific record
|
|
20
|
+
|
|
21
|
+
#### Deployment & Org Management (1 new)
|
|
22
|
+
- `sf_compare_orgs` — Compare metadata between two orgs using SF CLI aliases; returns components only in source, only in target, or different in both
|
|
23
|
+
|
|
24
|
+
#### Integration & Connectivity (2 new)
|
|
25
|
+
- `sf_create_certificate` — Create a self-signed Certificate (Certificate metadata) for callout signing and SSO
|
|
26
|
+
- `sf_create_event_relay` — Create an EventRelayConfig to relay Platform Events or CDC to Amazon EventBridge or another event bus
|
|
27
|
+
|
|
28
|
+
#### Einstein & AI Features (3 new)
|
|
29
|
+
- `sf_create_einstein_prediction` — Create an Einstein Prediction Builder definition (MLPredictionDefinition metadata) for binary classification or regression
|
|
30
|
+
- `sf_create_next_best_action` — Create a Next Best Action recommendation strategy (RecommendationStrategy metadata)
|
|
31
|
+
- `sf_create_einstein_bot` — Create a classic Einstein Bot with ML domain and conversation dialogs (Bot + BotVersion metadata)
|
|
32
|
+
|
|
33
|
+
### Notes on Existing Tools
|
|
34
|
+
The following tools requested in v2.4.0 were already present from earlier releases and are unchanged:
|
|
35
|
+
- 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`
|
|
36
|
+
- Lightning Pages: `sf_create_lightning_record_page`, `sf_create_lightning_home_page`, `sf_update_lightning_page`, `sf_assign_lightning_page`, `sf_assign_compact_layout`
|
|
37
|
+
- Reports & Dashboards: `sf_create_report`, `sf_update_dashboard`, `sf_create_report_folder`, `sf_share_report_folder`
|
|
38
|
+
- 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`
|
|
39
|
+
- Deployment: `sf_validate_deployment`, `sf_list_metadata`
|
|
40
|
+
- Integrations: `sf_create_outbound_message`, `sf_create_auth_provider`
|
|
41
|
+
- GitHub Actions workflows: present since v2.3.0 (ci.yml, publish.yml, sf-release-monitor.yml, api-version-bump.yml)
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## [2.3.0] - 2026-05-28
|
|
46
|
+
|
|
47
|
+
### New Tools — 30 Additions Across 8 Categories
|
|
48
|
+
|
|
49
|
+
#### OmniStudio — FlexCards (4 new)
|
|
50
|
+
- `sf_create_flexcard` — Create an OmniStudio FlexCard (OmniUiCard) with data source, fields, actions, and states
|
|
51
|
+
- `sf_update_flexcard` — Update an existing FlexCard definition
|
|
52
|
+
- `sf_activate_flexcard` — Activate a FlexCard so it is visible on Lightning pages and Experience Cloud sites
|
|
53
|
+
- `sf_get_flexcard` — Retrieve a FlexCard's full configuration
|
|
54
|
+
|
|
55
|
+
#### OmniStudio — OmniScripts (4 new)
|
|
56
|
+
- `sf_create_omniscript` — Create an OmniScript guided interaction flow (Type/SubType/Language)
|
|
57
|
+
- `sf_update_omniscript` — Update an OmniScript's metadata properties
|
|
58
|
+
- `sf_activate_omniscript` — Activate an OmniScript for use in FlexCards and Experience Cloud
|
|
59
|
+
- `sf_get_omniscript` — Retrieve an OmniScript's configuration
|
|
60
|
+
|
|
61
|
+
#### OmniStudio — DataRaptors (2 new)
|
|
62
|
+
- `sf_create_dataraptor` — Create a DataRaptor interface (Extract, Transform, or Load) with field mappings
|
|
63
|
+
- `sf_get_dataraptor` — Retrieve a DataRaptor's configuration and mappings
|
|
64
|
+
|
|
65
|
+
#### OmniStudio — Integration Procedures (4 new)
|
|
66
|
+
- `sf_create_integration_procedure` — Create an Integration Procedure (server-side OmniScript orchestration)
|
|
67
|
+
- `sf_update_integration_procedure` — Update an Integration Procedure's metadata
|
|
68
|
+
- `sf_get_integration_procedure` — Retrieve an Integration Procedure's configuration
|
|
69
|
+
- `sf_activate_integration_procedure` — Activate an Integration Procedure
|
|
70
|
+
|
|
71
|
+
#### OmniStudio — Calculation Matrix & Procedure (2 new)
|
|
72
|
+
- `sf_create_calculation_matrix` — Create a Calculation Matrix for rule-based lookups and decision tables
|
|
73
|
+
- `sf_create_calculation_procedure` — Create a Calculation Procedure orchestrating multi-step calculations
|
|
74
|
+
|
|
75
|
+
#### OmniChannel — Service Channels & Routing (6 new)
|
|
76
|
+
- `sf_create_service_channel` — Create an OmniChannel Service Channel (Case, Chat, Messaging, Voice, Email, Custom)
|
|
77
|
+
- `sf_create_routing_configuration` — Create a Routing Configuration (LeastActive, MostAvailable, ExternalRouting)
|
|
78
|
+
- `sf_create_queue_routing_config` — Link a Routing Configuration to a Queue for OmniChannel routing
|
|
79
|
+
- `sf_create_presence_configuration` — Create a Presence Configuration (PresenceUserConfig) with channel assignments
|
|
80
|
+
- `sf_create_presence_status` — Create a Presence Status (Online, Busy, Offline) for agents
|
|
81
|
+
- `sf_assign_presence_status` — Grant Presence Status access to Profiles and Permission Sets
|
|
82
|
+
|
|
83
|
+
#### OmniChannel — Skills & Field Service (4 new)
|
|
84
|
+
- `sf_create_skill` — Create a Skill for skill-based routing or Field Service Lightning
|
|
85
|
+
- `sf_assign_skill_to_agent` — Assign a Skill to a service agent (creates ServiceResource if needed)
|
|
86
|
+
- `sf_create_service_territory` — Create a Field Service Service Territory with optional operating hours
|
|
87
|
+
- `sf_create_work_type` — Create a Field Service Work Type with duration, block times, and skill requirements
|
|
88
|
+
|
|
89
|
+
#### Messaging, Chat & Voice (4 new)
|
|
90
|
+
- `sf_create_messaging_channel` — Create a Messaging Channel (SMS, WhatsApp, Facebook, Apple Messages, etc.)
|
|
91
|
+
- `sf_create_chat_button` — Create a Live Chat button for embedding on websites
|
|
92
|
+
- `sf_create_embedded_service` — Create an Embedded Service deployment bundling Chat or Messaging for websites
|
|
93
|
+
- `sf_create_bot_routing` — Configure Einstein Bot escalation to a human agent queue via BotVersion transfer dialog
|
|
94
|
+
|
|
95
|
+
### Bug Fixes
|
|
96
|
+
- Fixed `SetExperienceSiteBrandingSchema` — parameters now correctly match the `setExperienceSiteBranding` service function (`brandingSetName`, `label`, `properties[]` instead of individual color fields)
|
|
97
|
+
|
|
98
|
+
### CI/CD
|
|
99
|
+
- Added `.github/workflows/ci.yml` — build and module load validation on every push/PR
|
|
100
|
+
- Added `.github/workflows/publish.yml` — automated npm publish on `v*` tag push
|
|
101
|
+
- Added `.github/workflows/sf-release-monitor.yml` — opens a release review issue 3× per year (Feb, Jun, Oct)
|
|
102
|
+
- Added `.github/workflows/api-version-bump.yml` — auto PR to bump API version on Salesforce release dates
|
|
103
|
+
- Added `.github/ISSUE_TEMPLATE/sf-release-review.md` — structured checklist for Salesforce release reviews
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
3
107
|
## [2.2.0] - 2026-05-28
|
|
4
108
|
|
|
5
109
|
### New Tools — 47 Additions Across 10 Categories
|
package/README.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# salesforce-metadata-mcp
|
|
2
2
|
|
|
3
|
-
[](https://npmjs.com/package/salesforce-metadata-mcp)
|
|
4
4
|
[](LICENSE)
|
|
5
5
|
[](https://modelcontextprotocol.io)
|
|
6
6
|
|
|
7
|
-
**The most comprehensive Salesforce MCP server.**
|
|
7
|
+
**The most comprehensive Salesforce MCP server.** 155+ 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, and more.
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -46,6 +46,41 @@ 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.4.0
|
|
50
|
+
|
|
51
|
+
14 new tools across 6 categories:
|
|
52
|
+
|
|
53
|
+
- **Lightning App Page** — `sf_create_lightning_app_page` for Lightning App tab pages
|
|
54
|
+
- **Letterhead** — `sf_create_letterhead` for Classic email template branding
|
|
55
|
+
- **Record Delete** — `sf_delete_record` via REST API
|
|
56
|
+
- **Email** — `sf_send_email` via the emailSimple invocable action
|
|
57
|
+
- **Audit Trail** — `sf_get_setup_audit_trail`, `sf_get_login_history`, `sf_get_event_logs`, `sf_get_field_history`
|
|
58
|
+
- **Org Comparison** — `sf_compare_orgs` using SF CLI aliases
|
|
59
|
+
- **Certificates** — `sf_create_certificate` (self-signed, for callout signing/SSO)
|
|
60
|
+
- **Event Relay** — `sf_create_event_relay` to Amazon EventBridge or event bus
|
|
61
|
+
- **Einstein AI** — `sf_create_einstein_prediction`, `sf_create_next_best_action`, `sf_create_einstein_bot`
|
|
62
|
+
|
|
63
|
+
See [CHANGELOG.md](CHANGELOG.md) for full release notes.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## What's New in v2.3.0
|
|
68
|
+
|
|
69
|
+
30 new tools across 8 categories:
|
|
70
|
+
|
|
71
|
+
- **OmniStudio — FlexCards** — Create, update, activate, and get FlexCards (OmniUiCard)
|
|
72
|
+
- **OmniStudio — OmniScripts** — Create, update, activate, and get OmniScripts
|
|
73
|
+
- **OmniStudio — DataRaptors** — Create Extract/Transform/Load DataRaptor interfaces
|
|
74
|
+
- **OmniStudio — Integration Procedures** — Create, update, activate, and get Integration Procedures
|
|
75
|
+
- **OmniStudio — Calculation Matrix & Procedure** — Create decision tables and multi-step calculation procedures
|
|
76
|
+
- **OmniChannel — Service Channels & Routing** — Service Channels, Routing Configurations, Queue links, Presence Configurations and Statuses
|
|
77
|
+
- **OmniChannel — Skills & Field Service** — Create skills, assign to agents, create Service Territories and Work Types
|
|
78
|
+
- **Messaging, Chat & Voice** — Messaging Channels (SMS/WhatsApp/etc.), Live Chat Buttons, Embedded Service deployments, Bot escalation routing
|
|
79
|
+
|
|
80
|
+
See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
49
84
|
## What's New in v2.2.0
|
|
50
85
|
|
|
51
86
|
47 new tools across 10 categories:
|
|
@@ -65,7 +100,7 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
|
|
|
65
100
|
|
|
66
101
|
---
|
|
67
102
|
|
|
68
|
-
## Tools (
|
|
103
|
+
## Tools (155+)
|
|
69
104
|
|
|
70
105
|
### Objects & Fields
|
|
71
106
|
| Tool | Description |
|
|
@@ -142,6 +177,8 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
|
|
|
142
177
|
| `sf_create_lightning_home_page` | Create a Lightning Home Page (FlexiPage) |
|
|
143
178
|
| `sf_update_lightning_page` | Update an existing Lightning Page |
|
|
144
179
|
| `sf_assign_lightning_page` | Assign a Lightning Page to an Experience site |
|
|
180
|
+
| `sf_create_lightning_app_page` | Create a Lightning App Page (FlexiPage for App tabs) |
|
|
181
|
+
| `sf_create_letterhead` | Create an email letterhead for Classic email templates |
|
|
145
182
|
|
|
146
183
|
### Apex, Visualforce & Aura
|
|
147
184
|
| Tool | Description |
|
|
@@ -182,6 +219,8 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
|
|
|
182
219
|
| `sf_create_record` | Create a single SObject record |
|
|
183
220
|
| `sf_update_record` | Update an existing SObject record by ID |
|
|
184
221
|
| `sf_bulk_import_records` | Bulk insert/upsert/update/delete via Bulk API 2.0 |
|
|
222
|
+
| `sf_delete_record` | Delete a single SObject record by ID |
|
|
223
|
+
| `sf_send_email` | Send email from Salesforce via the emailSimple action |
|
|
185
224
|
|
|
186
225
|
### Experience Cloud
|
|
187
226
|
| Tool | Description |
|
|
@@ -221,6 +260,8 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
|
|
|
221
260
|
| `sf_create_csp_setting` | Create CSP trusted sites for LWC |
|
|
222
261
|
| `sf_create_outbound_message` | Create Workflow Outbound Messages |
|
|
223
262
|
| `sf_create_auth_provider` | Create OAuth Auth Providers |
|
|
263
|
+
| `sf_create_certificate` | Create a self-signed Certificate for callout signing/SSO |
|
|
264
|
+
| `sf_create_event_relay` | Create an Event Relay to Amazon EventBridge or event bus |
|
|
224
265
|
|
|
225
266
|
### Change Sets & Deployment
|
|
226
267
|
| Tool | Description |
|
|
@@ -232,6 +273,60 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
|
|
|
232
273
|
| `sf_check_deploy_status` | Check deployment job status |
|
|
233
274
|
| `sf_retrieve_metadata` | Retrieve metadata from the org |
|
|
234
275
|
| `sf_list_metadata` | List all components of a metadata type |
|
|
276
|
+
| `sf_compare_orgs` | Compare metadata between two orgs using SF CLI aliases |
|
|
277
|
+
|
|
278
|
+
### OmniStudio
|
|
279
|
+
| Tool | Description |
|
|
280
|
+
|------|-------------|
|
|
281
|
+
| `sf_create_flexcard` | Create an OmniStudio FlexCard with data source, fields, and actions |
|
|
282
|
+
| `sf_update_flexcard` | Update an existing FlexCard |
|
|
283
|
+
| `sf_activate_flexcard` | Activate a FlexCard |
|
|
284
|
+
| `sf_get_flexcard` | Get FlexCard configuration |
|
|
285
|
+
| `sf_create_omniscript` | Create an OmniScript guided interaction flow |
|
|
286
|
+
| `sf_update_omniscript` | Update an OmniScript |
|
|
287
|
+
| `sf_activate_omniscript` | Activate an OmniScript |
|
|
288
|
+
| `sf_get_omniscript` | Get OmniScript configuration |
|
|
289
|
+
| `sf_create_dataraptor` | Create a DataRaptor interface (Extract/Transform/Load) |
|
|
290
|
+
| `sf_get_dataraptor` | Get DataRaptor configuration |
|
|
291
|
+
| `sf_create_integration_procedure` | Create an Integration Procedure |
|
|
292
|
+
| `sf_update_integration_procedure` | Update an Integration Procedure |
|
|
293
|
+
| `sf_get_integration_procedure` | Get Integration Procedure configuration |
|
|
294
|
+
| `sf_activate_integration_procedure` | Activate an Integration Procedure |
|
|
295
|
+
| `sf_create_calculation_matrix` | Create a Calculation Matrix for rule-based lookups |
|
|
296
|
+
| `sf_create_calculation_procedure` | Create a Calculation Procedure with multi-step logic |
|
|
297
|
+
|
|
298
|
+
### Audit Trail & Monitoring
|
|
299
|
+
| Tool | Description |
|
|
300
|
+
|------|-------------|
|
|
301
|
+
| `sf_get_setup_audit_trail` | Query SetupAuditTrail for org configuration change history |
|
|
302
|
+
| `sf_get_login_history` | Query LoginHistory for user login activity |
|
|
303
|
+
| `sf_get_event_logs` | Fetch and parse EventLogFile entries (Login, API, Flow, Apex, etc.) |
|
|
304
|
+
| `sf_get_field_history` | Get field-level change history for a specific record |
|
|
305
|
+
|
|
306
|
+
### Einstein & AI
|
|
307
|
+
| Tool | Description |
|
|
308
|
+
|------|-------------|
|
|
309
|
+
| `sf_create_einstein_prediction` | Create an Einstein Prediction Builder definition |
|
|
310
|
+
| `sf_create_next_best_action` | Create a Next Best Action recommendation strategy |
|
|
311
|
+
| `sf_create_einstein_bot` | Create a classic Einstein Bot with dialogs |
|
|
312
|
+
|
|
313
|
+
### OmniChannel & Field Service
|
|
314
|
+
| Tool | Description |
|
|
315
|
+
|------|-------------|
|
|
316
|
+
| `sf_create_service_channel` | Create an OmniChannel Service Channel |
|
|
317
|
+
| `sf_create_routing_configuration` | Create a Routing Configuration |
|
|
318
|
+
| `sf_create_queue_routing_config` | Link a Routing Configuration to a Queue |
|
|
319
|
+
| `sf_create_presence_configuration` | Create a Presence Configuration for agents |
|
|
320
|
+
| `sf_create_presence_status` | Create a Presence Status |
|
|
321
|
+
| `sf_assign_presence_status` | Assign Presence Status to Profiles/Permission Sets |
|
|
322
|
+
| `sf_create_skill` | Create a Skill for routing or Field Service |
|
|
323
|
+
| `sf_assign_skill_to_agent` | Assign a Skill to a service agent |
|
|
324
|
+
| `sf_create_service_territory` | Create a Field Service Service Territory |
|
|
325
|
+
| `sf_create_work_type` | Create a Field Service Work Type |
|
|
326
|
+
| `sf_create_messaging_channel` | Create a Messaging Channel (SMS, WhatsApp, etc.) |
|
|
327
|
+
| `sf_create_chat_button` | Create a Live Chat Button |
|
|
328
|
+
| `sf_create_embedded_service` | Create an Embedded Service deployment |
|
|
329
|
+
| `sf_create_bot_routing` | Configure bot escalation to a human agent queue |
|
|
235
330
|
|
|
236
331
|
### MCP Server Management
|
|
237
332
|
| Tool | Description |
|
|
@@ -289,6 +384,21 @@ See [CHANGELOG.md](CHANGELOG.md) for the full release notes.
|
|
|
289
384
|
|
|
290
385
|
---
|
|
291
386
|
|
|
387
|
+
## CI/CD & Maintenance
|
|
388
|
+
|
|
389
|
+
This repository includes GitHub Actions workflows for automated maintenance:
|
|
390
|
+
|
|
391
|
+
| Workflow | Trigger | Action |
|
|
392
|
+
|----------|---------|--------|
|
|
393
|
+
| `ci.yml` | Push / PR | Build and verify module loads |
|
|
394
|
+
| `publish.yml` | Push tag `v*` | Publish to npm with provenance |
|
|
395
|
+
| `sf-release-monitor.yml` | Feb 1, Jun 1, Oct 1 | Opens a Salesforce release review issue |
|
|
396
|
+
| `api-version-bump.yml` | Feb 1, Jun 1, Oct 1 | Creates a PR to bump the API version |
|
|
397
|
+
|
|
398
|
+
To publish a new version: bump the version in `package.json`, update `CHANGELOG.md`, then push a `vX.Y.Z` tag. The publish workflow handles the rest.
|
|
399
|
+
|
|
400
|
+
---
|
|
401
|
+
|
|
292
402
|
## License
|
|
293
403
|
|
|
294
404
|
MIT
|
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.
|
|
9
|
+
version: "2.4.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.
|
|
16
|
+
console.error("Salesforce Metadata MCP server v2.4.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.
|
|
41
|
+
res.end(JSON.stringify({ status: "ok", server: "salesforce-metadata-mcp", version: "2.4.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.
|
|
67
|
+
console.error(`Salesforce Metadata MCP server v2.4.0 running on http://localhost:${port}/mcp`);
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
70
|
// ─── Entry point ──────────────────────────────────────────────────────────────
|