From 2d9786aecdd7c581070f28247bfdc66233bbe1f1 Mon Sep 17 00:00:00 2001 From: Danny Roosevelt Date: Wed, 13 Aug 2025 13:27:55 -0700 Subject: [PATCH 1/5] Adding app categories arg and method to sdk --- packages/sdk/CHANGELOG.md | 7 +++++ packages/sdk/package.json | 2 +- packages/sdk/src/shared/index.ts | 49 ++++++++++++++++++++++++++++++++ pnpm-lock.yaml | 21 ++++++++++---- 4 files changed, 72 insertions(+), 7 deletions(-) diff --git a/packages/sdk/CHANGELOG.md b/packages/sdk/CHANGELOG.md index 43471d8d43a77..0264647a60be0 100644 --- a/packages/sdk/CHANGELOG.md +++ b/packages/sdk/CHANGELOG.md @@ -2,6 +2,13 @@ # Changelog +## [1.8.0] - 2025-08-13 + +### Added + +- Added `categoryIds` parameter to `getApps` method for filtering apps by category IDs +- Added `getAppCategories` method to retrieve available app categories + ## [1.7.0] - 2025-07-03 ### Added diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 774c3089e24a4..5f01499c23dab 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,7 +1,7 @@ { "name": "@pipedream/sdk", "type": "module", - "version": "1.7.0", + "version": "1.8.0", "description": "Pipedream SDK", "main": "./dist/server.js", "module": "./dist/server.js", diff --git a/packages/sdk/src/shared/index.ts b/packages/sdk/src/shared/index.ts index 5da267b89bb91..7486d34b1ed72 100644 --- a/packages/sdk/src/shared/index.ts +++ b/packages/sdk/src/shared/index.ts @@ -126,6 +126,31 @@ export type App = AppInfo & { */ export type AppResponse = App; +/** + * App category data returned from the API. + */ +export type AppCategory = { + /** + * The unique ID of the category. + */ + id: string; + + /** + * The name of the category. + */ + name: string; + + /** + * A description of the category. + */ + description: string; +}; + +/** + * The response received when retrieving app categories. + */ +export type GetAppCategoriesResponse = AppCategory[]; + /** * A configuration option for a component's prop. */ @@ -255,6 +280,10 @@ export type GetAppsOpts = RelationOpts & { * Filter by whether apps have triggers in the component registry. */ hasTriggers?: boolean; + /** + * Filter apps by category IDs (format: appcat_[a-zA-Z0-9]+). + */ + categoryIds?: string[]; /** * The key to sort the apps by. * @@ -1190,6 +1219,9 @@ export abstract class BaseClient { ? "1" : "0"; } + if (opts?.categoryIds && opts.categoryIds.length > 0) { + params.category_ids = opts.categoryIds.join(","); + } if (opts?.sortKey) { params.sort_key = opts.sortKey; } @@ -1240,6 +1272,23 @@ export abstract class BaseClient { return this.getApp(idOrNameSlug); } + /** + * Retrieves the list of app categories available in Pipedream. + * + * @returns A promise resolving to a list of app categories. + * + * @example + * ```typescript + * const categories = await client.getAppCategories(); + * console.log(categories); + * ``` + */ + public getAppCategories() { + return this.makeAuthorizedRequest("/connect/app_categories", { + method: "GET", + }); + } + /** * Retrieves the list of components available in Pipedream. * diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 203c70f9f4f83..8bbec6bb1bab5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15842,8 +15842,7 @@ importers: specifier: ^1.2.0 version: 1.6.6 - components/yourls: - specifiers: {} + components/yourls: {} components/youtube_analytics_api: dependencies: @@ -16436,6 +16435,14 @@ importers: specifier: ^6.0.0 version: 6.2.0 + modelcontextprotocol/node_modules2/@modelcontextprotocol/sdk/dist/cjs: {} + + modelcontextprotocol/node_modules2/@modelcontextprotocol/sdk/dist/esm: {} + + modelcontextprotocol/node_modules2/zod-to-json-schema/dist/cjs: {} + + modelcontextprotocol/node_modules2/zod-to-json-schema/dist/esm: {} + packages/ai: dependencies: '@pipedream/sdk': @@ -31924,22 +31931,22 @@ packages: superagent@3.8.1: resolution: {integrity: sha512-VMBFLYgFuRdfeNQSMLbxGSLfmXL/xc+OO+BZp41Za/NRDBet/BNbkRJrYzCUu0u4GU0i/ml2dtT8b9qgkw9z6Q==} engines: {node: '>= 4.0'} - deprecated: Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net + deprecated: Please upgrade to superagent v10.2.2+, see release notes at https://github.com/forwardemail/superagent/releases/tag/v10.2.2 - maintenance is supported by Forward Email @ https://forwardemail.net superagent@4.1.0: resolution: {integrity: sha512-FT3QLMasz0YyCd4uIi5HNe+3t/onxMyEho7C3PSqmti3Twgy2rXT4fmkTz6wRL6bTF4uzPcfkUCa8u4JWHw8Ag==} engines: {node: '>= 6.0'} - deprecated: Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net + deprecated: Please upgrade to superagent v10.2.2+, see release notes at https://github.com/forwardemail/superagent/releases/tag/v10.2.2 - maintenance is supported by Forward Email @ https://forwardemail.net superagent@5.3.1: resolution: {integrity: sha512-wjJ/MoTid2/RuGCOFtlacyGNxN9QLMgcpYLDQlWFIhhdJ93kNscFonGvrpAHSCVjRVj++DGCglocF7Aej1KHvQ==} engines: {node: '>= 7.0.0'} - deprecated: Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net + deprecated: Please upgrade to superagent v10.2.2+, see release notes at https://github.com/forwardemail/superagent/releases/tag/v10.2.2 - maintenance is supported by Forward Email @ https://forwardemail.net superagent@7.1.6: resolution: {integrity: sha512-gZkVCQR1gy/oUXr+kxJMLDjla434KmSOKbx5iGD30Ql+AkJQ/YlPKECJy2nhqOsHLjGHzoDTXNSjhnvWhzKk7g==} engines: {node: '>=6.4.0 <13 || >=14'} - deprecated: Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net + deprecated: Please upgrade to superagent v10.2.2+, see release notes at https://github.com/forwardemail/superagent/releases/tag/v10.2.2 - maintenance is supported by Forward Email @ https://forwardemail.net supports-color@10.0.0: resolution: {integrity: sha512-HRVVSbCCMbj7/kdWF9Q+bbckjBHLtHMEoJWlkmYzzdwhYMkjkOwubLM6t7NbWKjgKamGDrWL1++KrjUO1t9oAQ==} @@ -40262,6 +40269,8 @@ snapshots: '@putout/operator-filesystem': 5.0.0(putout@36.13.1(eslint@8.57.1)(typescript@5.6.3)) '@putout/operator-json': 2.2.0 putout: 36.13.1(eslint@8.57.1)(typescript@5.6.3) + transitivePeerDependencies: + - supports-color '@putout/operator-regexp@1.0.0(putout@36.13.1(eslint@8.57.1)(typescript@5.6.3))': dependencies: From 2b54a3f2bdd64498b674f3debf62e6a9eabc4ef9 Mon Sep 17 00:00:00 2001 From: Danny Roosevelt Date: Wed, 13 Aug 2025 13:31:42 -0700 Subject: [PATCH 2/5] Update CHANGELOG.md --- packages/sdk/CHANGELOG.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/sdk/CHANGELOG.md b/packages/sdk/CHANGELOG.md index 0264647a60be0..d5125e8b1675b 100644 --- a/packages/sdk/CHANGELOG.md +++ b/packages/sdk/CHANGELOG.md @@ -6,7 +6,8 @@ ### Added -- Added `categoryIds` parameter to `getApps` method for filtering apps by category IDs +- Added `categoryIds` parameter to `getApps` method for filtering + apps by category IDs - Added `getAppCategories` method to retrieve available app categories ## [1.7.0] - 2025-07-03 @@ -48,7 +49,7 @@ - Added `endpoint_url` field to the component metadata, providing the URL to the HTTP interface of the component. -- Added missing pagination fields to the `GetComponentsResponse` and +- Added missing pagination fields to the `GetComponentsResponse` and `GetAccountsResponse` types. ## [1.6.7] - 2025-06-06 From 0bbc9e1c743e419a29da5b39fcbf87f0fc6ec22f Mon Sep 17 00:00:00 2001 From: Danny Roosevelt Date: Wed, 13 Aug 2025 13:50:19 -0700 Subject: [PATCH 3/5] Update README.md --- modelcontextprotocol/README.md | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/modelcontextprotocol/README.md b/modelcontextprotocol/README.md index 3c61e9fbc0ccc..60cd7d5b0bd13 100644 --- a/modelcontextprotocol/README.md +++ b/modelcontextprotocol/README.md @@ -1,9 +1,24 @@ # Pipedream MCP Server -This is a reference implementation of the Pipedream MCP server. You can run **your own MCP server** for [over 2,700 apps and APIs](https://pipedream.com/apps) and is powered by [Pipedream Connect](https://pipedream.com/docs/connect/). +> **⚠️ Important Notice**: This MCP server is a **reference implementation only** and is no longer actively maintained. For production use, we recommend using Pipedream's **remote MCP server** instead. -> [Note] -> These docs discuss how you can host Pipedream's MCP server in your own app or run it locally. To use Pipedream's [remote MCP server](https://pipedream.com/docs/connect/mcp/developers) (most common), [refer to our docs](https://pipedream.com/docs/connect/mcp/developers) to get started. +## Recommended: Use Pipedream's Remote MCP Server + +For the best experience, use Pipedream's hosted MCP server which provides: + +- **2,800+ APIs and 10,000+ tools** through a single server +- **Built-in authentication** - no manual token management required +- **Multiple tool modes**: sub-agent and full configuration +- **Automatic app discovery** +- **Enterprise-grade reliability** and security + +**🚀 Get started**: [Pipedream MCP Documentation](https://pipedream.com/docs/connect/mcp/developers) + +> **🎮 Try it now**: Check out our [open source chat app](https://github.com/PipedreamHQ/mcp) at [chat.pipedream.com](https://chat.pipedream.com/) + +--- + +## Self-Hosting (Reference Implementation) This reference implementation shows how you can: @@ -12,14 +27,14 @@ This reference implementation shows how you can: See the consumer-facing MCP server in action at [mcp.pipedream.com](https://mcp.pipedream.com) and check out a demo of the developer-facing product at [chat.pipedream.com](https://chat.pipedream.com). -We published this code as a reference, so you can better understand how to use Pipedream Connect for such -an application. This is a reference implementation specifically for self-hosting the server and may not be fully documented. Please reach out to us if you -have any questions. +We published this code as a reference, so you can better understand how to use Pipedream Connect for such an application. This is a reference implementation specifically for self-hosting the server and may not be fully documented. + +**For production use, we strongly recommend using our [remote MCP server](https://pipedream.com/docs/connect/mcp/developers) instead.** -## ⭐ Features +## ⭐ Reference Implementation Features -- Run **your own MCP server** for [over 2,700 apps and APIs](https://mcp.pipedream.com) -- Manage servers **for your users**, in your own app. +- Run **your own MCP server** for [over 2,800 apps and APIs](https://mcp.pipedream.com) +- Manage servers **for your users**, in your own app - Connect accounts, configure params, and make API requests, all via tools - Fully-managed OAuth and credential storage ([see security docs](https://pipedream.com/docs/privacy-and-security/#third-party-oauth-grants-api-keys-and-environment-variables)) From 770c73da6ad57c341a635081b971fd7187733303 Mon Sep 17 00:00:00 2001 From: Danny Roosevelt Date: Wed, 13 Aug 2025 14:06:08 -0700 Subject: [PATCH 4/5] Update README.md --- modelcontextprotocol/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modelcontextprotocol/README.md b/modelcontextprotocol/README.md index 60cd7d5b0bd13..ef917ab1be1e1 100644 --- a/modelcontextprotocol/README.md +++ b/modelcontextprotocol/README.md @@ -7,10 +7,10 @@ For the best experience, use Pipedream's hosted MCP server which provides: - **2,800+ APIs and 10,000+ tools** through a single server -- **Built-in authentication** - no manual token management required +- **Built-in authentication**: no manual token management required - **Multiple tool modes**: sub-agent and full configuration - **Automatic app discovery** -- **Enterprise-grade reliability** and security +- **Enterprise-grade reliability and security** **🚀 Get started**: [Pipedream MCP Documentation](https://pipedream.com/docs/connect/mcp/developers) From 1cbcd140a4b7f0d9f511641f08cb88061fc76d85 Mon Sep 17 00:00:00 2001 From: Danny Roosevelt Date: Wed, 13 Aug 2025 14:29:27 -0700 Subject: [PATCH 5/5] Update README.md --- modelcontextprotocol/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modelcontextprotocol/README.md b/modelcontextprotocol/README.md index ef917ab1be1e1..761b9a7c9994d 100644 --- a/modelcontextprotocol/README.md +++ b/modelcontextprotocol/README.md @@ -69,7 +69,7 @@ There are two ways to use this MCP server. 1 - App specific `/{external_user_id}/{app}` -This is currently available at [mcp.pipedream.com](mcp.pipedream.com). You can use an endpoint for each app. +This is currently available at [mcp.pipedream.com](https://mcp.pipedream.com). You can use an endpoint for each app. All the tools available for that app will be available at that endpoint. 2 - Dynamic