# sf_create_outbound_message

Creates a Workflow Outbound Message that sends a SOAP XML payload to an external endpoint when triggered by a Workflow Rule or Approval Process. Use for real-time integration with external systems that need to be notified of record changes. objectName: object the message is for fullName: developer name for the outbound message name: display name endpointUrl: external SOAP endpoint URL fields: field API names to include in the message integrationUser: optional username to authenticate the callout

Agent View of the PolicyLayer registry record for `sf_create_outbound_message`. HTML page: https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-create-outbound-message

## Facts

- Tool: `sf_create_outbound_message`
- Server: Salesforce Metadata Mcp (`salesforce-metadata-mcp`) — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp.md
- Install: `npx -y salesforce-metadata-mcp`
- Homepage: https://github.com/semwalajay83-sem/salesforce-metadata-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sf_create_outbound_message",
    "arguments": {}
  }
}
```

## Why sf_create_outbound_message is rated Medium

The tool creates and persists a new integration mechanism (outbound message) in the Salesforce metadata, which is a Write operation. Severity is high because misconfiguration could expose sensitive data to untrusted endpoints (via the endpointUrl parameter), trigger unintended external notifications, or disrupt downstream integrations.

From the tool's own definition: "Creates a Workflow Outbound Message that sends a SOAP XML payload to an external endpoint—this is irreversible metadata creation that modifies the Salesforce org configuration and sets up automated callouts to external systems."

## Use case

AI agents use sf_create_outbound_message to create or update resources in Salesforce Metadata Mcp, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Salesforce Metadata Mcp environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Salesforce Metadata Mcp:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "sf_create_outbound_message": {
      "limits": [
        {
          "counter": "sf_create_outbound_message_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Salesforce Metadata Mcp (212)

- `sf_bulk_delete_records` — Destructive — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-bulk-delete-records.md
- `sf_delete_record` — Destructive — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-delete-record.md
- `sf_delete_scratch_org` — Destructive — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-delete-scratch-org.md
- `sf_activate_omniscript` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-activate-omniscript.md
- `sf_create_apex_class` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-create-apex-class.md
- `sf_create_apex_test_class` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-create-apex-test-class.md
- `sf_create_apex_trigger` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-create-apex-trigger.md
- `sf_create_flow` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-create-flow.md
- `sf_create_scheduled_job` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-create-scheduled-job.md
- `sf_create_scratch_org` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-create-scratch-org.md
- `sf_deactivate_flow` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-deactivate-flow.md
- `sf_deploy_metadata` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-deploy-metadata.md
- `sf_devops_promote_work_item` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-devops-promote-work-item.md
- `sf_execute_anonymous_apex` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-execute-anonymous-apex.md
- `sf_install_package` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-install-package.md
- `sf_promote_devops_work_item` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-promote-devops-work-item.md
- `sf_run_apex_tests` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-run-apex-tests.md
- `sf_send_email` — Execute — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-send-email.md
- `sf_check_code_coverage` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-check-code-coverage.md
- `sf_check_deploy_status` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-check-deploy-status.md
- `sf_check_devops_commit_status` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-check-devops-commit-status.md
- `sf_detect_devops_merge_conflict` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-detect-devops-merge-conflict.md
- `sf_explore_slds_blueprints` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-explore-slds-blueprints.md
- `sf_export_omnistudio_component` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-export-omnistudio-component.md
- `sf_export_records` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-export-records.md
- `sf_get_apex_test_results` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-get-apex-test-results.md
- `sf_get_dataraptor` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-get-dataraptor.md
- `sf_get_deployment_history` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-get-deployment-history.md
- `sf_get_event_logs` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-get-event-logs.md
- `sf_get_field_history` — Read — https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp/sf-get-field-history.md
- …and 182 more: https://policylayer.com/tools/io-github-semwalajay83-sem-salesforce-metadata-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-github-semwalajay83-sem-salesforce-metadata-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-semwalajay83-sem-salesforce-metadata-mcp
