Skip to main content
Glama
semwalajay83-sem

salesforce-metadata-mcp

Create OmniStudio DataRaptor

sf_create_dataraptor
Idempotent

Build a DataRaptor for OmniStudio to read, transform, or write Salesforce data. Specify field mappings, data types, formulas, and filter criteria.

Instructions

Creates a DataRaptor interface for OmniStudio data transformation. DataRaptors handle Extract (read from Salesforce), Transform (convert data formats), and Load (write to Salesforce) operations.

interfaceType:

  • Extract: reads data from Salesforce objects using SOQL-like field mappings

  • Transform: converts/maps data between formats (JSON path transformations)

  • Load: writes data to Salesforce objects

Each field mapping defines:

  • sourceField: source JSON path or Salesforce field API name

  • targetField: target JSON path or Salesforce field API name

  • dataType: data type (Text, Number, Boolean, Date, etc.)

  • formula: optional transformation formula

filterCriteria: SOQL WHERE clause for Extract DataRaptors (e.g. "Id = ':AccountId'")

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
labelYes
fieldsNoField mappings
descriptionNo
interfaceTypeYesDataRaptor type: Extract reads from SF, Transform maps data, Load writes to SF
objectApiNameNoPrimary SObject for Extract or Load (e.g. 'Account')
dataRaptorNameYesAPI name of the DataRaptor
filterCriteriaNoSOQL WHERE clause for Extract, e.g. 'Id = :recordId'
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=true, covering the safety profile. The description adds context about DataRaptor's operational capabilities (Extract/Transform/Load) but does not discuss tool-level behavior like overwriting existing DataRaptors or permission requirements. This adds some value without contradicting annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections for interface types and field mappings. It is somewhat long but each part contributes to understanding the tool's domain model. Front-loading the main purpose helps, and the bulleted format improves scanability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a create tool with no output schema, the description covers the key parameters (interfaceType, field mappings, filterCriteria) and the domain concepts. It does not describe the return value or prerequisites (e.g., OmniStudio licensed), but given the rich annotations and schema, it is fairly complete for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 71%, and the description adds meaningful semantics beyond the schema: it explains what each interfaceType does, the meaning of sourceField/targetField, dataType, and filterCriteria with examples. This compensates for the moderate coverage and gives the agent practical guidance on filling parameters correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Creates a DataRaptor interface for OmniStudio data transformation' with specific verb+resource. It then details the three interface types (Extract, Transform, Load), making the tool's purpose unambiguous and distinguishing it from retrieval tools like sf_get_dataraptor.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what DataRaptors do and the three interface types, implying when this tool is appropriate (for data extraction, transformation, or loading). However, it does not explicitly mention alternatives (e.g., Integration Procedures) or provide 'when not to use' guidance, so usage context is clear but exclusions are absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/semwalajay83-sem/salesforce-metadata-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server