PipedreamHQ / PipedreamHQ/pipedream

DealCloud: remove reloadProps/additionalProps from create/update record actions for MCP v3 compatibility

Open
#21,741 0 comments 0 reactions 0 assignees View on GitHub
paid-account-needed prioritized
Dominant language
JavaScript
Stars
11.7k
Forks
5.8k
Avg merge
3d 10h
Merged PRs (30d)
102

Description

Both DealCloud record actions extend a shared base (`common-create-update.mjs`) that builds inputs dynamically via `additionalProps()`, driven by `reloadProps: true`. Pipedream MCP v3 does not support this pattern: an MCP tool gets a single static JSON Schema resolved once at registration, but `additionalProps()` only computes its props after a parent prop value is known, and there's no round-trip in the MCP tool contract to surface that. The field-level props these actions generate are invisible to an agent, making them broken as MCP tools.

## Affected components (`components/dealcloud`, package `0.2.0`)

| Action | Key | Version | Dynamic mechanism |
|---|---|---|---|
| Create Record | `dealcloud-create-record` | 0.0.1 | `entryTypeId` (reloadProps) → `additionalProps()` fetches entry type fields via `getEntryTypeFields()` and emits one prop per field |
| Update Record | `dealcloud-update-record` | 0.0.1 | Same shared `entryTypeId`-driven per-field prop generation |

A single fix in `common-create-update.mjs` covers both.

Contributor guide

Open the contributing guide

Research direction

Start in components/dealcloud/common-create-update.mjs and trace how reloadProps, additionalProps(), and getEntryTypeFields() serve the create and update record actions. Confirm the static MCP v3 schema constraints and determine how both actions should expose their inputs without the dynamic mechanism. Done means neither action depends on reloadProps or additionalProps and both are compatible with MCP v3.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
api
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.