create-odata-query

Generate safe OData queries for Directum RX Integration Service.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/dunaevdmitriys-dev/directum-mcp-server --skill create-odata-query
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: create-odata-query
Source: https://github.com/dunaevdmitriys-dev/directum-mcp-server/tree/main/skills/create-odata-query
Command: npx skills add https://github.com/dunaevdmitriys-dev/directum-mcp-server --skill create-odata-query

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you create correct OData requests for Directum RX Integration Service so you can reliably query and update CRM/RX data without breaking entity naming rules or risking malformed filters.

Core Features & Use Cases

  • Predicts correct OData entity set names using the entity schema and IntegrationServiceName mapping (e.g., I{IntegrationServiceName}s).
  • Extracts entity property schema (field names, types, and navigation properties) to ensure your $select, $filter, and $expand match what the service expects.
  • Validates metadata and consistency by locating IntegrationServiceName in .mtd and running post-change checks for alignment.

Use case examples

  • Getting deals with related objects: fetch deals by pipeline, select specific fields, expand stage/counterparty, and apply ordering.
  • Searching entities safely: filter by login/name while ensuring proper quoting and null checks in $filter.

Quick Start

Ask to create an OData query for the Deals dataset filtered by a pipeline id, returning only Id, Name, and Amount, with an expanded Stage, limited to 50 results.

Frequently Asked Questions about create-odata-query

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build safe OData queries for Directum RX Integration Service?

To build safe OData queries for Directum RX, you derive the correct entity set names and property schema from metadata, then apply safe construction rules to prevent injection. This ensures $filter, $select, and $expand parameters match service expectations.

How do I predict the correct OData entity set name from Directum RX metadata?

Predicting the correct OData entity set name relies on the entity schema and IntegrationServiceName mapping, typically following the pattern I{IntegrationServiceName}s. This ensures your OData requests target the correct Directum RX data structure.

Can I use $expand and $select together when fetching Directum RX entities?

Yes, you can use $expand and $select together. The process extracts the entity property schema, including field names and navigation properties, ensuring your expanded and selected fields correctly align with what the Integration Service expects.

What is the best way to filter Directum RX OData queries without risking injection?

The best way to filter safely is by enforcing safe query construction rules that validate metadata and ensure proper quoting and null checks. This prevents malformed $filter clauses and OData injection vulnerabilities.

Why does my Directum RX OData query fail to return navigation properties?

OData queries fail to return navigation properties when the entity property schema is not properly extracted or validated. You must locate the IntegrationServiceName in the .mtd metadata and run consistency checks to align $expand parameters.

Do I need .mtd metadata files to construct Directum RX OData queries?

Yes, you need .mtd metadata files. They are required for locating the IntegrationServiceName, extracting the entity property schema, and running post-change consistency checks to validate your OData query structure.