Title: Develop with Pipedream MCP - Pipedream
URL Source: https://pipedream.com/docs/connect/mcp/developers
Markdown Content:
Documentation Index
Fetch the complete documentation index at:/docs/llms.txt
Use this file to discover all available pages before exploring further.
Skip to main content
Assistant
Responses are generated using AI and may contain mistakes.
Suggestions
How do I get started with Pipedream Connect?
Pipedream home pageConnect
Search...
⌘K Ask Assistant⌘I
Search...
Navigation
MCP
Develop with Pipedream MCP
DocumentationConnect APIChangelog
Connect
Workflows
Platform
Additional Resources
On this page
Back to top
- Connect
- MCP
Develop with Pipedream MCP
Copy page Copy page
Add Pipedream MCP to your app or agent to make tool calls on behalf of your users to 3,000+ APIs and 10,000+ tools.
Copy page Copy page
Overview
Pipedream Connect includes built-in user authentication for more than 3,000 APIs via MCP, which means you don’t need to build any authorization flows or deal with token storage and refresh in order to make authenticated requests on behalf of your users.
Examples
AI Frameworks
Use Pipedream MCP with popular AI frameworks and LLMs:
Vercel AI SDK
Streamlined MCP integration with automatic tool execution
OpenAI
Direct integration with OpenAI’s API and playground
Anthropic Claude
Native MCP connector through Claude’s Messages API
Google Gemini
Multimodal AI with text, image, and tool capabilities
Key Pipedream concepts to understand
external_user_id
- This is your user’s ID, in your system: whatever you use to uniquely identify them
- Requests made for that user ID are coupled to that end user and their connected accounts (learn more)
app
- The app’s “name slug” (the unique identifier for the app)
- Check out the app discovery docs to learn how to discover and use available apps
Prerequisites
To use either the remote or self-hosted MCP server, you’ll need:
- A Pipedream account
- A Pipedream project. Accounts connected via MCP will be stored here.
- Pipedream OAuth credentials
Set up your environment
Set the following environment variables:
PIPEDREAM_CLIENT_ID=your_client_id
PIPEDREAM_CLIENT_SECRET=your_client_secret
PIPEDREAM_PROJECT_ID=your_project_id # proj_xxxxxxx
PIPEDREAM_ENVIRONMENT=development # development | production
Learn more about environments in Pipedream Connect.
Authentication
Developer authentication
Your application authenticates with Pipedream using client credential OAuth. See below for details.
User account connections
One of the core features of Pipedream Connect and the MCP server is the ability for your users to easily connect their accounts without having to build any of the authorization flow or handle token storage.You can handle account connections in one of two ways in your app:
Add a button in your UI
- Use Pipedream’s frontend SDK to let users connect their account directly in your UI
- You can see an example of this when you connect any account in mcp.pipedream.com
Return a link
- Use Connect Link to let your users connect their account in a new browser tab
- This is handled automatically by Pipedream’s MCP server and there’s no additional implementation required
- If a user doesn’t have a connected account that’s required for a given tool call, the server will return a URL in the tool call response:
https://pipedream.com/_static/connect.html?token=ctok_xxxxxxx&connectLink=true&app={appSlug}
Discover available integrations
Pipedream provides 3,000+ APIs as MCP servers. Each server corresponds to an app integration (like Notion, Gmail, or Slack) and has its own specific set of tools.For detailed information on discovering apps and enabling automatic app discovery, check out app discovery section.
Getting started
Use Pipedream’s remote MCP server
Supported transport types
The Pipedream MCP server supports both SSE and streamable HTTP transport types dynamically, with no configuration required by the developer or MCP client.
Base URL
https://remote.mcp.pipedream.net/v3
API Authentication
To authenticate requests to Pipedream’s MCP server, you need to include an access token with every HTTP request. Here’s how to get it:
TypeScript
Python
cURL
import { PipedreamClient } from "@pipedream/sdk";
// Initialize the Pipedream SDK client
const client = new PipedreamClient({
projectEnvironment: PIPEDREAM_ENVIRONMENT,
clientId: PIPEDREAM_CLIENT_ID,
clientSecret: PIPEDREAM_CLIENT_SECRET,
projectId: PIPEDREAM_PROJECT_ID
});
// Get access token for MCP server auth
const accessToken = await client.rawAccessToken;
console.log(accessToken);
from pipedream import Pipedream
# Initialize the Pipedream SDK client
pd = Pipedream(
project_id=PIPEDREAM_PROJECT_ID,
project_environment=PIPEDREAM_ENVIRONMENT,
client_id=PIPEDREAM_CLIENT_ID,
client_secret=PIPEDREAM_CLIENT_SECRET,
)
# Get access token for MCP server auth
access_token = await pd.raw_access_token
print(access_token)
curl -s -X POST https://api.pipedream.com/v1/oauth/token \
-H "Content-Type: application/json" \
-d '{
"grant_type": "client_credentials",
"client_id": "'$PIPEDREAM_CLIENT_ID'",
"client_secret": "'$PIPEDREAM_CLIENT_SECRET'"
}'
Params
- Below are params that you should send with every HTTP request to Pipedream’s MCP server.
- You can pass them as HTTP headers or as query parameters on the URL.
| Header | Query Param | Value | Required? |
|---|
x-pd-project-id | projectId | proj_xxxxxxx | Yes |
x-pd-environment | environment | development | production |
x-pd-external-user-id | externalUserId | <your-users-id> | Yes |
x-pd-app-slug | app | linear, notion, etc | Yes |
x-pd-account-id | accountId | apn_xxxxxxx | No |
x-pd-oauth-app-id | oauthAppId | oa_xxxxxxx | No |
x-pd-registry | registry | public | private |
Example request
TypeScript
Python
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
import { PipedreamClient } from "@pipedream/sdk";
// Initialize the Pipedream SDK client
const client = new PipedreamClient({
projectEnvironment: PIPEDREAM_ENVIRONMENT,
clientId: PIPEDREAM_CLIENT_ID,
clientSecret: PIPEDREAM_CLIENT_SECRET,
projectId: PIPEDREAM_PROJECT_ID
});
// Retrieve your developer access token via the Pipedream SDK
const accessToken = await client.rawAccessToken;
const serverUrl = MCP_SERVER_URL || `https://remote.mcp.pipedream.net/v3`;
const transport = new StreamableHTTPClientTransport(new URL(serverUrl), {
requestInit: {
headers: {
"Authorization": `Bearer ${accessToken}`,
"x-pd-project-id": PIPEDREAM_PROJECT_ID, // proj_xxxxxxx
"x-pd-environment": PIPEDREAM_ENVIRONMENT, // development | production
"x-pd-external-user-id": EXTERNAL_USER_ID, // the user's ID from your system
"x-pd-app-slug": APP_SLUG, // notion, linear, gmail, etc
}
}
});
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
from pipedream import Pipedream
# Initialize the Pipedream SDK client
pd = Pipedream(
project_id=PIPEDREAM_PROJECT_ID,
project_environment=PIPEDREAM_ENVIRONMENT,
client_id=PIPEDREAM_CLIENT_ID,
client_secret=PIPEDREAM_CLIENT_SECRET,
)
# Retrieve your developer access token via the Pipedream SDK
access_token = await pd.raw_access_token
server_url = MCP_SERVER_URL or "https://remote.mcp.pipedream.net/v3"
# Configure MCP client with authentication headers
headers = {
"Authorization": f"Bearer {access_token}",
"x-pd-project-id": PIPEDREAM_PROJECT_ID, # proj_xxxxxxx
"x-pd-environment": PIPEDREAM_ENVIRONMENT, # development | production
"x-pd-external-user-id": EXTERNAL_USER_ID, # the user's ID from your system
"x-pd-app-slug": APP_SLUG, # notion, linear, gmail, etc
}
# Create MCP client connection
async with streamablehttp_client(server_url, headers=headers) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
# Now you can use the session to call tools
tools = await session.list_tools()
Using the MCP inspector
The MCP inspector can be helpful when debugging tool calls.
npx @modelcontextprotocol/inspector
Enter the server URL:
https://remote.mcp.pipedream.net/v3?externalUserId={external_user_id}&app={app_slug}
Error handling
When a tool call fails, Pipedream’s MCP server returns a result with isError: true, following the MCP spec for tool execution errors. This lets the LLM see the error and decide how to respond, rather than surfacing it as a protocol-level error.The error result includes the same error object with an attribution field that’s returned when running actions, which classifies where the error originated (for example, in the tool’s code, the upstream API, or the network layer). See error responses for the full list of attribution origins and details on how attribution works.
Using custom tools
Publish custom tools to your Pipedream workspace to use them with Pipedream’s MCP server. This lets you add custom and unique functionality that may not be available in the public registry.
Was this page helpful?
Yes No
OverviewVercel AI SDK
githubtwitterslack
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Pipedream","colors":{"primary":"#095c32","light":"#19f995","dark":"#0f9954"},"logo":{"light":"https://mintcdn.com/pipedream/J-J7n6QGsUEW1AZY/logo/pipedream_workday_lockup.png?fit=max\u0026auto=format\u0026n=J-J7n6QGsUEW1AZY\u0026q=85\u0026s=20f01e899a0e49424e3d16d1e84adc60","dark":"https://mintcdn.com/pipedream/J-J7n6QGsUEW1AZY/logo/pipedream_workday_lockup_dark.png?fit=max\u0026auto=format\u0026n=J-J7n6QGsUEW1AZY\u0026q=85\u0026s=cc9220550d73764499689dbac60a3615","href":"https://pipedream.com/docs"},"favicon":"https://mintcdn.com/pipedream/l2pOewTBZm3Zi3d2/logo/pipedream_icon.svg?fit=max\u0026auto=format\u0026n=l2pOewTBZm3Zi3d2\u0026q=85\u0026s=561dca46a7ea8017f3146eb1899554a6","api":{"playground":{"display":"interactive"},"examples":{"defaults":"all","languages":["curl","typescript","python","java","go"]},"mdx":{"auth":{"method":"bearer"},"server":"https://api.pipedream.com/v1"}},"appearance":{"default":"system"},"background":{"decoration":"grid"},"navbar":{"links":[{"icon":"slack","href":"https://pipedream.com/join-slack","label":"Join community"}],"primary":{"type":"button","label":"Sign up for free","href":"https://pipedream.com/auth/signup"}},"footer":{"socials":{"github":"https://github.com/PipedreamHQ/pipedream","twitter":"https://twitter.com/pipedream","slack":"https://pipedream.com/join-slack"}},"seo":{"metatags":{"robots":"index, follow","charset":"UTF-8","viewport":"width=device-width, initial-scale=1.0","description":"Pipedream provides the toolkit to add thousands of integrations to your app and enables you to automate any process.","keywords":"api, mcp, ai, integrations, pipedream, workflow, automation, connect, apis","author":"Pipedream","googlebot":"index, follow","language":"en","og:type":"website","og:url":"https://pipedream.com","og:description":"Pipedream provides the toolkit to add thousands of integrations to your app and enables you to automate any process.","og:site_name":"Pipedream","og:locale":"en_US","twitter:card":"summary","twitter:site":"@pipedream","twitter:creator":"@pipedream","twitter:title":"Pipedream","twitter:description":"Pipedream provides the toolkit to add thousands of integrations to your app and enables you to automate any process.","twitter:image":"https://pipedream.com/image.jpg","twitter:image:alt":"Pipedream Logo","canonical":"https://pipedream.com/docs"}},"fonts":{"family":"Geist Sans","source":"https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-Variable.woff2","format":"woff2"},"styling":{"eyebrows":"breadcrumbs","latex":false},"contextual":{"options":["copy","view","chatgpt","claude","mcp"],"display":"header"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"pipedream","hasAudioNarration":false,"actualSubdomain":"pipedream","customDomains":["pipedream.com"],"gitSource":{"_id":"6ad7fa91692c7c940ff17a0e","type":"github","owner":"pipedreamhq","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aeec9ad0a8f67c3b927e879","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"default","tag":"Connect","count":218},{"language":"default","tag":"Documentation","count":126},{"language":"default","tag":"Conduit","count":77},{"language":"default","tag":"Connect API","count":63},{"language":"default","tag":"Workflows","count":62},{"language":"default","tag":"Guides","count":41},{"language":"default","tag":"Building Workflows","count":39},{"language":"default","tag":"API","count":35},{"language":"default","tag":"Write your own code","count":22},{"language":"default","tag":"Platform","count":21}]},"assistantConfig":{"enableStarterQuestions":true,"deflection":{"enabled":true,"email":"support@pipedream.com"}},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"starterQuestions":[{"_id":"68eabbe039150a938c8e901c","deploymentId":"6852099e30dd5c4192fd61e1","questionText":"How do I get started with Pipedream Connect?","status":"active","generatedBy":"manual","createdAt":"2025-10-11T20:19:44.842Z","updatedAt":"2025-10-11T20:19:44.842Z","__v":0}],"googleFontsInlined":false},"customCss":[{"filePath":"styles/custom.css","content":"#banner{min-height:64px;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 24px;position:relative;background-color:rgba(239, 246, 255, 0.9)!important;border-top:1px solid rgb(191, 219, 254);border-bottom:1px solid rgb(191, 219, 254);box-shadow:0 1px 2px rgba(15, 23, 42, 0.08);transition:all 0.5s ease-out}:is(html.dark,body.dark) #banner{background-color:rgb(15, 23, 42)!important;border-top-color:rgb(51, 65, 85);border-bottom-color:rgb(51, 65, 85)}@media (max-width: 639px){#banner{flex-direction:row;align-items:center;gap:6px;padding:10px 10px}#banner::before{flex:0 0 auto;margin-right:2px}}#banner::before{content:"";width:120px;height:28px;background-image:url("https://pipedream.com/docs/images/wday_logo_no-TM_primary-RGB.svg");background-size:contain;background-repeat:no-repeat;background-position:center;flex:0 0 auto}:is(html.dark,body.dark) #banner::before{background-image:url("https://pipedream.com/docs/images/wday_logo_no-TM_reversed-RGB.svg")}@media (max-width: 639px){#banner::before{width:100px;height:24px}}#banner button{position:absolute;right:20px;top:50%;transform:translateY(-50%);padding:6px;border-radius:999px;color:rgb(37, 99, 235)!important;background:transparent;transition:color 0.2s ease, background-color 0.2s ease}#banner button svg{color:inherit;stroke:currentColor}#banner button:hover{background-color:rgba(191, 219, 254, 0.4);color:rgb(29, 78, 216)!important}:is(html.dark,body.dark) #banner button{color:rgb(191, 219, 254)!important}:is(html.dark,body.dark) #banner button:hover{background-color:rgba(51, 65, 85, 0.6);color:rgb(226, 232, 240)!important}@media (max-width: 639px){#banner button{top:12px;right:12px;transform:none}}#banner>div,#banner>div>p{display:flex!important;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;text-align:center;max-width:720px}#banner p{display:inline;margin:0}@media (max-width: 639px){#banner>div{width:100%;max-width:none;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;text-align:left}#banner>div>p{display:block!important;width:100%;text-align:left}#banner p,#banner strong{text-align:left;line-height:1.3}}#banner,#banner ,#banner p,#banner strong,#banner p strong{color:rgb(71, 85, 105)!important;font-weight:500;font-size:1rem}#banner p strong{font-weight:500}:is(html.dark,body.dark) #banner,:is(html.dark,body.dark) #banner ,:is(html.dark,body.dark) #banner p,:is(html.dark,body.dark) #banner strong,:is(html.dark,body.dark) #banner p strong{color:rgb(219, 234, 254)!important}@media (min-width: 640px){#banner strong,#banner p strong{font-size:1.125rem}}#banner a[href="newsroom.workday.com"]:nth-of-type(1){display:inline-flex!important;align-items:center;justify-content:center;padding:8px 16px;height:36px;background-color:rgb(59, 130, 246);color:white!important;border-radius:6px;text-decoration:none!important;font-weight:500;font-size:1rem;transition:background-color 0.2s ease;margin-left:36px;flex-shrink:0;white-space:nowrap;box-shadow:0 1px 2px rgba(15, 23, 42, 0.12)}#banner a[href="newsroom.workday.com"]:nth-of-type(1):hover{background-color:rgb(29, 78, 216)}:is(html.dark,body.dark) #banner a[href*="newsroom.workday.com"]:nth-of-type(1){background-color:rgb(59, 130, 246)}:is(html.dark,body.dark) #banner a[href*="newsroom.workday.com"]:nth-of-type(1):hover{background-color:rgb(37, 99, 235)}@media (max-width: 639px){#banner a[href*="newsroom.workday.com"]:nth-of-type(1){display:inline!important;align-self:flex-start;padding:0;height:auto;margin-left:0;background-color:transparent;color:rgb(37, 99, 235)!important;text-decoration:underline;text-decoration-thickness:1px;border-radius:0;box-shadow:none;white-space:normal}#banner a[href*="newsroom.workday.com"]:nth-of-type(1):hover{background-color:transparent}}#banner-content{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;text-align:center}.nav-logo{height:2.5rem}"}],"page":{"pagePath":"connect/mcp/developers","slug":"/connect/mcp/developers","pageMetadata":{"title":"Develop with Pipedream MCP","sidebarTitle":"Developers","description":"Add Pipedream MCP to your app or agent to make tool calls on behalf of your users to 3,000+ APIs and 10,000+ tools.","href":"/connect/mcp/developers"},"description":{"compiledSource":""use strict";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: "p",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: "Add Pipedream MCP to your app or agent to make tool calls on behalf of your users to 3,000+ APIs and 10,000+ tools."\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":""use strict";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const PUBLIC_APPS=3,000;function _createMdxContent(props){const _components={a:a,code:code,li:li,ol:ol,p:p,path:path,pre:pre,span:span,strong:strong,svg:svg,tbody:tbody,td:td,th:th,thead:thead,tr:tr,ul:ul,..._provideComponents(),...props.components},{Card,CardGroup,CodeBlock,CodeGroup,Heading,Table}=_components;if(!Card)_missingMdxReference(Card,true);if(!CardGroup)_missingMdxReference(CardGroup,true);if(!CodeBlock)_missingMdxReference(CodeBlock,true);if(!CodeGroup)_missingMdxReference(CodeGroup,true);if(!Heading)_missingMdxReference(Heading,true);if(!Table)_missingMdxReference(Table,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:2,id:overview,children:Overview}),\n,_jsxs(_components.p,{children:[Pipedream Connect includes ,_jsx(_components.a,{href:#user-account-connections,children:built-in user authentication}),for,_jsxs(_components.a,{href:https://mcp.pipedream.com,children:[more than ,PUBLIC_APPS, APIs]}), via MCP, which means you don’t need to build any authorization flows or deal with token storage and refresh in order to make authenticated requests on behalf of your users.]}),\n,_jsx(Heading,{level:2,id:examples,children:Examples}),\n,_jsxs(_components.ul,{children:[\n,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:MCP Chat App}),: Check out our ,_jsx(_components.a,{href:https://chat.pipedream.com,children:chat app}), built with Vercel’s AI SDK and Pipedream MCP]}),\n,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:CLI Examples}),: Load tools dynamically ,_jsx(_components.a,{href:https://github.com/PipedreamHQ/pipedream-connect-examples/tree/master/mcp,children:using either OpenAI or Vercel’s AI SDK})]}),\n,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:Gemini Agent}),: Use Pipedream MCP with ,_jsx(_components.a,{href:https://github.com/philschmid/gemini-samples/blob/main/scripts/gemini-mcp-pipedream.py,children:Google Gemini}), (,_jsx(_components.a,{href:https://x.com/_philschmid/status/1948025573403492621,children:built by the Gemini team}),)]}),\n]}),\n,_jsx(Heading,{level:2,id:ai-frameworks,children:AI Frameworks}),\n,_jsx(_components.p,{children:Use Pipedream MCP with popular AI frameworks and LLMs:}),\n,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:Vercel AI SDK,href:/connect/mcp/ai-frameworks/vercel-ai-sdk,icon:_jsx(_components.svg,{xmlns:http://www.w3.org/2000/svg,width:24,height:24,viewBox:0 0 256 222,children:_jsx(_components.path,{d:m128 0l128 221.705H0z})}),children:_jsx(_components.p,{children:Streamlined MCP integration with automatic tool execution})}),_jsx(Card,{title:OpenAI,href:/connect/mcp/ai-frameworks/openai,icon:_jsx(_components.svg,{xmlns:http://www.w3.org/2000/svg,width:24,height:24,viewBox:0 0 256 260,children:_jsx(_components.path,{d:M239.184 106.203a64.716 64.716 0 0 0-5.576-53.103C219.452 28.459 191 15.784 163.213 21.74A65.586 65.586 0 0 0 52.096 45.22a64.716 64.716 0 0 0-43.23 31.36c-14.31 24.602-11.061 55.634 8.033 76.74a64.665 64.665 0 0 0 5.525 53.102c14.174 24.65 42.644 37.324 70.446 31.36a64.72 64.72 0 0 0 48.754 21.744c28.481.025 53.714-18.361 62.414-45.481a64.767 64.767 0 0 0 43.229-31.36c14.137-24.558 10.875-55.423-8.083-76.483m-97.56 136.338a48.397 48.397 0 0 1-31.105-11.255l1.535-.87l51.67-29.825a8.595 8.595 0 0 0 4.247-7.367v-72.85l21.845 12.636c.218.111.37.32.409.563v60.367c-.056 26.818-21.783 48.545-48.601 48.601M37.158 197.93a48.345 48.345 0 0 1-5.781-32.589l1.534.921l51.722 29.826a8.339 8.339 0 0 0 8.441 0l63.181-36.425v25.221a.87.87 0 0 1-.358.665l-52.335 30.184c-23.257 13.398-52.97 5.431-66.404-17.803M23.549 85.38a48.499 48.499 0 0 1 25.58-21.333v61.39a8.288 8.288 0 0 0 4.195 7.316l62.874 36.272l-21.845 12.636a.819.819 0 0 1-.767 0L41.353 151.53c-23.211-13.454-31.171-43.144-17.804-66.405zm179.466 41.695l-63.08-36.63L161.73 77.86a.819.819 0 0 1 .768 0l52.233 30.184a48.6 48.6 0 0 1-7.316 87.635v-61.391a8.544 8.544 0 0 0-4.4-7.213m21.742-32.69l-1.535-.922l-51.619-30.081a8.39 8.39 0 0 0-8.492 0L99.98 99.808V74.587a.716.716 0 0 1 .307-.665l52.233-30.133a48.652 48.652 0 0 1 72.236 50.391zM88.061 139.097l-21.845-12.585a.87.87 0 0 1-.41-.614V65.685a48.652 48.652 0 0 1 79.757-37.346l-1.535.87l-51.67 29.825a8.595 8.595 0 0 0-4.246 7.367zm11.868-25.58L128.067 97.3l28.188 16.218v32.434l-28.086 16.218l-28.188-16.218z})}),children:_jsx(_components.p,{children:Direct integration with OpenAI’s API and playground})}),_jsx(Card,{title:Anthropic Claude,href:/connect/mcp/ai-frameworks/anthropic,icon:_jsx(_components.svg,{xmlns:http://www.w3.org/2000/svg,width:24,height:24,viewBox:0 0 256 176,children:_jsx(_components.path,{fill:currentColor,d:m147.487 0l70.081 175.78H256L185.919 0zM66.183 106.221l23.98-61.774l23.98 61.774zM70.07 0L0 175.78h39.18l14.33-36.914h73.308l14.328 36.914h39.179L110.255 0z})}),children:_jsx(_components.p,{children:Native MCP connector through Claude’s Messages API})}),_jsx(Card,{title:Google Gemini,href:/connect/mcp/ai-frameworks/gemini,icon:_jsx(_components.svg,{fill:none,xmlns:http://www.w3.org/2000/svg,width:24,height:24,viewBox:0 0 16 16,children:_jsx(_components.path,{d:M16 8.016A8.522 8.522 0 008.016 16h-.032A8.521 8.521 0 000 8.016v-.032A8.521 8.521 0 007.984 0h.032A8.522 8.522 0 0016 7.984v.032z,fill:currentColor})}),children:_jsx(_components.p,{children:Multimodal AI with text, image, and tool capabilities})})]}),\n,_jsx(Heading,{level:3,id:key-pipedream-concepts-to-understand,children:Key Pipedream concepts to understand}),\n,_jsx(_components.p,{children:_jsx(_components.strong,{children:_jsx(_components.code,{children:external_user_id})})}),\n,_jsxs(_components.ul,{children:[\n,_jsx(_components.li,{children:This is your user’s ID, in your system: whatever you use to uniquely identify them}),\n,_jsxs(_components.li,{children:[Requests made for that user ID are coupled to that end user and their connected accounts (,_jsx(_components.a,{href:/connect/managed-auth/users,children:learn more}),)]}),\n]}),\n,_jsx(_components.p,{children:_jsx(_components.strong,{children:_jsx(_components.code,{children:app})})}),\n,_jsxs(_components.ul,{children:[\n,_jsx(_components.li,{children:The app’s “name slug” (the unique identifier for the app)}),\n,_jsxs(_components.li,{children:[Check out the ,_jsx(_components.a,{href:/connect/app-discovery,children:app discovery}), docs to learn how to discover and use available apps]}),\n]}),\n,_jsx(Heading,{level:2,id:prerequisites,children:Prerequisites}),\n,_jsx(_components.p,{children:To use either the remote or self-hosted MCP server, you’ll need:}),\n,_jsxs(_components.ol,{children:[\n,_jsxs(_components.li,{children:[A ,_jsx(_components.a,{href:https://pipedream.com/auth/signup,children:Pipedream account})]}),\n,_jsxs(_components.li,{children:[A ,_jsx(_components.a,{href:/projects/#creating-projects,children:Pipedream project}),. Accounts connected via MCP will be stored here.]}),\n,_jsx(_components.li,{children:_jsx(_components.a,{href:/connect/api-reference/authentication,children:Pipedream OAuth credentials})}),\n]}),\n,_jsx(Heading,{level:3,id:set-up-your-environment,children:Set up your environment}),\n,_jsx(_components.p,{children:Set the following environment variables:}),\n,_jsx(CodeBlock,{filename:,numberOfLines:`4`,language:`ini`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`ini`,children:_jsxs(_components.code,{language:`ini`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`PIPEDREAM_CLIENT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`=your_client_id`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`PIPEDREAM_CLIENT_SECRET`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`=your_client_secret`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`PIPEDREAM_PROJECT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`=your_project_id `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# proj_xxxxxxx`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`PIPEDREAM_ENVIRONMENT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`=development `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# development | production`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Learn more about `,_jsx(_components.a,{href:`/connect/managed-auth/environments/`,children:`environments in Pipedream Connect`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`authentication`,children:`Authentication`}),`\n`,_jsx(Heading,{level:`3`,id:`developer-authentication`,children:`Developer authentication`}),`\n`,_jsxs(_components.p,{children:[`Your application authenticates with Pipedream using client credential OAuth. `,_jsx(_components.a,{href:`/connect/mcp/developers/#api-authentication`,children:`See below`}),` for details.`]}),`\n`,_jsx(Heading,{level:`3`,id:`user-account-connections`,children:`User account connections`}),`\n`,_jsx(_components.p,{children:`One of the core features of Pipedream Connect and the MCP server is the ability for your users to easily connect their accounts without having to build any of the authorization flow or handle token storage.`}),`\n`,_jsx(_components.p,{children:`You can handle account connections in one of two ways in your app:`}),`\n`,_jsx(Heading,{level:`4`,id:`add-a-button-in-your-ui`,children:`Add a button in your UI`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Use Pipedream’s `,_jsx(_components.a,{href:`/connect/managed-auth/quickstart/#use-the-pipedream-sdk-in-your-frontend`,children:`frontend SDK`}),` to let users connect their account directly in your UI`]}),`\n`,_jsxs(_components.li,{children:[`You can see an example of this when you connect any account in `,_jsx(_components.a,{href:`https://mcp.pipedream.com`,children:`mcp.pipedream.com`})]}),`\n`]}),`\n`,_jsx(Heading,{level:`4`,id:`return-a-link`,children:`Return a link`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Use `,_jsx(_components.a,{href:`/connect/managed-auth/quickstart/#or-use-connect-link`,children:`Connect Link`}),` to let your users connect their account in a new browser tab`]}),`\n`,_jsxs(_components.li,{children:[`This is handled automatically by Pipedream’s MCP server and `,_jsx(_components.strong,{children:`there’s no additional implementation required`})]}),`\n`,_jsx(_components.li,{children:`If a user doesn’t have a connected account that’s required for a given tool call, the server will return a URL in the tool call response:`}),`\n`]}),`\n`,_jsx(CodeBlock,{filename:,numberOfLines:1,language:shellscript,children:_jsx(_components.pre,{className:shiki shiki-themes github-light-default dark-plus,style:{backgroundColor:#ffffff,"--shiki-dark-bg":#0B0C0E,color:#1f2328,"--shiki-dark":#D4D4D4},language:shellscript,children:_jsxs(_components.code,{language:shellscript,numberOfLines:1,children:[_jsxs(_components.span,{className:line,children:[_jsx(_components.span,{style:{color:#953800,"--shiki-dark":#DCDCAA},children:https://pipedream.com/_static/connect.html?token}),_jsx(_components.span,{style:{color:#0A3069,"--shiki-dark":#CE9178},children:=ctok_xxxxxxx}),_jsx(_components.span,{style:{color:#1F2328,"--shiki-dark":#D4D4D4},children:\u0026}),_jsx(_components.span,{style:{color:#1F2328,"--shiki-dark":#9CDCFE},children:connectLink}),_jsx(_components.span,{style:{color:#CF222E,"--shiki-dark":#D4D4D4},children:=}),_jsx(_components.span,{style:{color:#0A3069,"--shiki-dark":#CE9178},children:true}),_jsx(_components.span,{style:{color:#1F2328,"--shiki-dark":#D4D4D4},children:\u0026}),_jsx(_components.span,{style:{color:#1F2328,"--shiki-dark":#9CDCFE},children:app}),_jsx(_components.span,{style:{color:#CF222E,"--shiki-dark":#D4D4D4},children:=}),_jsx(_components.span,{style:{color:#1F2328,"--shiki-dark":#D4D4D4},children:{}),_jsx(_components.span,{style:{color:#953800,"--shiki-dark":#DCDCAA},children:appSlug}})]}),\n]})})}),\n,_jsx(Heading,{level:2,id:discover-available-integrations,children:Discover available integrations}),\n,_jsxs(_components.p,{children:[Pipedream provides ,_jsxs(_components.a,{href:https://mcp.pipedream.com,children:[PUBLIC_APPS,+ APIs as MCP servers]}),. Each server corresponds to an app integration (like Notion, Gmail, or Slack) and has its own specific set of tools.]}),\n,_jsxs(_components.p,{children:[For detailed information on discovering apps and enabling automatic app discovery, check out ,_jsx(_components.a,{href:/connect/app-discovery,children:app discovery}), section.]}),\n,_jsx(Heading,{level:2,id:getting-started,children:Getting started}),\n,_jsx(Heading,{level:3,id:use-pipedream’s-remote-mcp-server,children:Use Pipedream’s remote MCP server}),\n,_jsx(Heading,{level:3,id:supported-transport-types,children:Supported transport types}),\n,_jsx(_components.p,{children:The Pipedream MCP server supports both SSE and streamable HTTP transport types dynamically, with no configuration required by the developer or MCP client.}),\n,_jsx(Heading,{level:3,id:base-url,children:Base URL}),\n,_jsx(CodeBlock,{filename:,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`https://remote.mcp.pipedream.net/v3`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`api-authentication`,children:`API Authentication`}),`\n`,_jsx(_components.p,{children:`To authenticate requests to Pipedream’s MCP server, you need to include an access token with every HTTP request. Here’s how to get it:`}),`\n`,_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`TypeScript`,numberOfLines:`14`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`14`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`PipedreamClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@pipedream/sdk\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` `})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Initialize the Pipedream SDK client`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` client`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` PipedreamClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` projectEnvironment:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_ENVIRONMENT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` clientId:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_CLIENT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` clientSecret:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_CLIENT_SECRET`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` projectId:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_PROJECT_ID`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` `})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Get access token for MCP server auth`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` accessToken`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` client`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`rawAccessToken`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` `})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`accessToken`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`Python`,numberOfLines:`14`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`14`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` pipedream `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Pipedream`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Initialize the Pipedream SDK client`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`pd `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Pipedream(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` project_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_PROJECT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` project_environment`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_ENVIRONMENT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` client_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_CLIENT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` client_secret`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_CLIENT_SECRET`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Get access token for MCP server auth`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`access_token `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` pd.raw_access_token`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(access_token)`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`7`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -s`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.pipedream.com/v1/oauth/token`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"grant_type\": \"client_credentials\", `})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"client_id\": \"'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$PIPEDREAM_CLIENT_ID`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'\", `})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"client_secret\": \"'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$PIPEDREAM_CLIENT_SECRET`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})]}),`\n`,_jsx(Heading,{level:`3`,id:`params`,children:`Params`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Below are params that you should send with every HTTP request to Pipedream’s MCP server.`}),`\n`,_jsx(_components.li,{children:`You can pass them as HTTP headers or as query parameters on the URL.`}),`\n`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Header`}),_jsx(_components.th,{children:`Query Param`}),_jsx(_components.th,{children:`Value`}),_jsx(_components.th,{children:`Required?`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`x-pd-project-id`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`projectId`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`proj_xxxxxxx`})}),_jsx(_components.td,{children:`Yes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`x-pd-environment`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`environment`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`development`}),` | `,_jsx(_components.code,{children:`production`})]}),_jsx(_components.td,{children:`Yes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`x-pd-external-user-id`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`externalUserId`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cyour-users-id>`})}),_jsx(_components.td,{children:`Yes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`x-pd-app-slug`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`app`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`linear`}),`, `,_jsx(_components.code,{children:`notion`}),`, etc`]}),_jsx(_components.td,{children:`Yes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`x-pd-account-id`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`accountId`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`apn_xxxxxxx`})}),_jsx(_components.td,{children:`No`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`x-pd-oauth-app-id`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`oauthAppId`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`oa_xxxxxxx`})}),_jsx(_components.td,{children:`No`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`x-pd-registry`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`registry`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`public`}),` | `,_jsx(_components.code,{children:`private`}),` | `,_jsx(_components.code,{children:`all`})]}),_jsx(_components.td,{children:`No`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`example-request`,children:`Example request`}),`\n`,_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`TypeScript`,numberOfLines:`26`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`26`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`StreamableHTTPClientTransport`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@modelcontextprotocol/sdk/client/streamableHttp.js\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`PipedreamClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@pipedream/sdk\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` `})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Initialize the Pipedream SDK client`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` client`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` PipedreamClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` projectEnvironment:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_ENVIRONMENT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` clientId:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_CLIENT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` clientSecret:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_CLIENT_SECRET`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` projectId:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_PROJECT_ID`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` `})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Retrieve your developer access token via the Pipedream SDK`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` accessToken`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` client`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`rawAccessToken`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` serverUrl`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` MCP_SERVER_URL`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ||`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\" `https://remote.mcp.pipedream.net/v3`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` `})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` transport`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` StreamableHTTPClientTransport`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` URL`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`serverUrl`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` requestInit:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` headers:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\" `Bearer \"}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:\"${\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`accessToken`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-project-id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_PROJECT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// proj_xxxxxxx`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-environment\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` PIPEDREAM_ENVIRONMENT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// development | production`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-external-user-id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` EXTERNAL_USER_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// the user's ID from your system`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-app-slug\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` APP_SLUG`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// notion, linear, gmail, etc`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Python`,numberOfLines:`32`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`32`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` mcp `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ClientSession`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` mcp.client.streamable_http `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` streamablehttp_client`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` pipedream `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Pipedream`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Initialize the Pipedream SDK client`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`pd `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Pipedream(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` project_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_PROJECT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` project_environment`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_ENVIRONMENT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` client_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_CLIENT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` client_secret`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_CLIENT_SECRET`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Retrieve your developer access token via the Pipedream SDK`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`access_token `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` pd.raw_access_token`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`server_url `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:` MCP_SERVER_URL`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` or`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://remote.mcp.pipedream.net/v3\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Configure MCP client with authentication headers`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`headers `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Bearer `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`access_token`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-project-id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_PROJECT_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# proj_xxxxxxx`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-environment\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`PIPEDREAM_ENVIRONMENT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# development | production`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-external-user-id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`EXTERNAL_USER_ID`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# the user's ID from your system`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-pd-app-slug\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`APP_SLUG`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# notion, linear, gmail, etc`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Create MCP client connection`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` with`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` streamablehttp_client(server_url, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`headers`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`headers) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`as`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (read, write, _):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` with`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ClientSession(read, write) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`as`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` session:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` session.initialize()`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` `})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # Now you can use the session to call tools`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` tools `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` session.list_tools()`})]}),`\n`]})})})]}),`\n`,_jsx(Heading,{level:`3`,id:`using-the-mcp-inspector`,children:`Using the MCP inspector`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.a,{href:`https://modelcontextprotocol.io/tools/inspector`,children:`MCP inspector`}),` can be helpful when debugging tool calls.`]}),`\n`,_jsx(CodeBlock,{filename:,numberOfLines:1,language:shellscript,children:_jsx(_components.pre,{className:shiki shiki-themes github-light-default dark-plus,style:{backgroundColor:#ffffff,"--shiki-dark-bg":#0B0C0E,color:#1f2328,"--shiki-dark":#D4D4D4},language:shellscript,children:_jsxs(_components.code,{language:shellscript,numberOfLines:1,children:[_jsxs(_components.span,{className:line,children:[_jsx(_components.span,{style:{color:#953800,"--shiki-dark":#DCDCAA},children:npx}),_jsx(_components.span,{style:{color:#0A3069,"--shiki-dark":#CE9178},children: @modelcontextprotocol/inspector})]}),\n]})})}),\n,_jsx(_components.p,{children:Enter the server URL:}),\n,_jsx(CodeBlock,{numberOfLines:2,language:text,children:_jsx(_components.pre,{className:shiki shiki-themes github-light-default dark-plus,style:{backgroundColor:#ffffff,"--shiki-dark-bg":#0B0C0E,color:#1f2328,"--shiki-dark":#D4D4D4},language:text,children:_jsxs(_components.code,{language:text,numberOfLines:2,children:[_jsx(_components.span,{className:line,children:_jsx(_components.span,{children:https://remote.mcp.pipedream.net/v3?externalUserId={external_user_id}\u0026app={app_slug}})}),\n,_jsx(_components.span,{className:line,children:_jsx(_components.span,{})})]})})}),\n,_jsx(Heading,{level:2,id:error-handling,children:Error handling}),\n,_jsxs(_components.p,{children:[When a tool call fails, Pipedream’s MCP server returns a result with ,_jsx(_components.code,{children:isError: true}),, following the ,_jsx(_components.a,{href:https://modelcontextprotocol.io/specification/2025-06-18/server/tools#error-handling,children:MCP spec for tool execution errors}),. This lets the LLM see the error and decide how to respond, rather than surfacing it as a protocol-level error.]}),\n,_jsxs(_components.p,{children:[The error result includes the same ,_jsx(_components.code,{children:error}),object with an,_jsx(_components.code,{children:attribution}),field that’s returned when,_jsx(_components.a,{href:/connect/components/actions#error-responses,children:running actions}),, which classifies where the error originated (for example, in the tool’s code, the upstream API, or the network layer). See ,_jsx(_components.a,{href:/connect/components/actions#error-responses,children:error responses}), for the full list of attribution origins and details on how attribution works.]}),\n,_jsx(Heading,{level:2,id:using-custom-tools,children:Using custom tools}),\n,_jsxs(_components.p,{children:[Publish ,_jsx(_components.a,{href:/connect/components/custom-tools/,children:custom tools}), to your Pipedream workspace to use them with Pipedream’s MCP server. This lets you add custom and unique functionality that may not be available in the public registry.]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{PUBLIC_APPS,default:MDXContent};function _missingMdxReference(id,component){throw new Error(Expected +(component?component:object)+" \"+id+\" to be defined: you likely forgot to import, pass, or provide it.")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Develop with Pipedream MCP","sidebarTitle":"Developers","description":"Add Pipedream MCP to your app or agent to make tool calls on behalf of your users to 3,000+ APIs and 10,000+ tools.","href":"/connect/mcp/developers"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[146,164,"undefined;function _"],[1110,1134,"3,000, APIs]}),"],[13219,13243,"3,000,+ APIs as M"]]},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":2,"children":[]},{"title":"Examples","slug":"examples","depth":2,"children":[]},{"title":"AI Frameworks","slug":"ai-frameworks","depth":2,"children":[{"title":"Key Pipedream concepts to understand","slug":"key-pipedream-concepts-to-understand","depth":3,"children":[]}]},{"title":"Prerequisites","slug":"prerequisites","depth":2,"children":[{"title":"Set up your environment","slug":"set-up-your-environment","depth":3,"children":[]}]},{"title":"Authentication","slug":"authentication","depth":2,"children":[{"title":"Developer authentication","slug":"developer-authentication","depth":3,"children":[]},{"title":"User account connections","slug":"user-account-connections","depth":3,"children":[]},{"title":"Add a button in your UI","slug":"add-a-button-in-your-ui","depth":4,"children":[]},{"title":"Return a link","slug":"return-a-link","depth":4,"children":[]}]},{"title":"Discover available integrations","slug":"discover-available-integrations","depth":2,"children":[]},{"title":"Getting started","slug":"getting-started","depth":2,"children":[{"title":"Use Pipedream’s remote MCP server","slug":"use-pipedream’s-remote-mcp-server","depth":3,"children":[]},{"title":"Supported transport types","slug":"supported-transport-types","depth":3,"children":[]},{"title":"Base URL","slug":"base-url","depth":3,"children":[]},{"title":"API Authentication","slug":"api-authentication","depth":3,"children":[]},{"title":"Params","slug":"params","depth":3,"children":[]},{"title":"Example request","slug":"example-request","depth":3,"children":[]},{"title":"Using the MCP inspector","slug":"using-the-mcp-inspector","depth":3,"children":[]}]},{"title":"Error handling","slug":"error-handling","depth":2,"children":[]},{"title":"Using custom tools","slug":"using-custom-tools","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"pipedream","siteName":"Pipedream","title":"Develop with Pipedream MCP - Pipedream","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-29T19:00:05.858Z","originalFileLocation":"connect/mcp/developers.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem("isDarkMode")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p="system"}var r=p==='system'?(matchMedia("(prefers-color-scheme: dark)").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute("data-theme-preference",p)})();\u003c/script>\u003cmeta data-mint-head name="description" content="Add Pipedream MCP to your app or agent to make tool calls on behalf of your users to 3,000+ APIs and 10,000+ tools.">\u003cmeta data-mint-head name="keywords" content="api, mcp, ai, integrations, pipedream, workflow, automation, connect, apis">\u003cmeta data-mint-head name="application-name" content="Pipedream">\u003cmeta data-mint-head name="generator" content="Mintlify">\u003cmeta data-mint-head name="robots" content="index, follow">\u003clink data-mint-head rel="icon" type="image/png" sizes="192x192" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon/android-chrome-192x192.png" media="(prefers-color-scheme: light)">\u003clink data-mint-head rel="apple-touch-icon" type="image/png" sizes="180x180" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon/apple-touch-icon.png">\u003clink data-mint-head rel="icon" type="image/png" sizes="16x16" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon/favicon-16x16.png" media="(prefers-color-scheme: light)">\u003clink data-mint-head rel="icon" type="image/png" sizes="32x32" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon/favicon-32x32.png" media="(prefers-color-scheme: light)">\u003clink data-mint-head rel="shortcut icon" type="image/x-icon" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon/favicon.ico" media="(prefers-color-scheme: light)">\u003clink data-mint-head rel="icon" type="image/png" sizes="192x192" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon-dark/android-chrome-192x192.png" media="(prefers-color-scheme: dark)">\u003clink data-mint-head rel="icon" type="image/png" sizes="16x16" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon-dark/favicon-16x16.png" media="(prefers-color-scheme: dark)">\u003clink data-mint-head rel="icon" type="image/png" sizes="32x32" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon-dark/favicon-32x32.png" media="(prefers-color-scheme: dark)">\u003clink data-mint-head rel="shortcut icon" type="image/x-icon" href="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon-dark/favicon.ico" media="(prefers-color-scheme: dark)">\u003cmeta data-mint-head property="og:title" content="Develop with Pipedream MCP - Pipedream">\u003cmeta data-mint-head property="og:description" content="Pipedream provides the toolkit to add thousands of integrations to your app and enables you to automate any process.">\u003cmeta data-mint-head property="og:site_name" content="Pipedream">\u003cmeta data-mint-head property="og:url" content="https://pipedream.com/docs/connect/mcp/developers\">\u003cmeta data-mint-head property="og:type" content="website">\u003cmeta data-mint-head property="og:image" content="https://pipedream.mintlify.site/docs/_mintlify/api/og/v2?division=MCP\u0026amp;title=Develop+with+Pipedream+MCP\u0026amp;description=Add+Pipedream+MCP+to+your+app+or+agent+to+make+tool+calls+on+behalf+of+your+users+to+3%2C000%2B+APIs+and+10%2C000%2B+tools.\u0026amp;theme=0d4512b4a13a7a889c737c15\u0026amp;signature=5e5620516117326027014475eb1844dd3513c73d326771f910f15c6a0d8fe44e\">\u003cmeta data-mint-head property="og:image:width" content="1200">\u003cmeta data-mint-head property="og:image:height" content="630">\u003cmeta data-mint-head name="twitter:card" content="summary_large_image">\u003cmeta data-mint-head name="twitter:title" content="Pipedream">\u003cmeta data-mint-head name="twitter:description" content="Pipedream provides the toolkit to add thousands of integrations to your app and enables you to automate any process.">\u003cmeta data-mint-head name="twitter:image" content="https://pipedream.mintlify.site/docs/_mintlify/api/og/v2?division=MCP\u0026amp;title=Develop+with+Pipedream+MCP\u0026amp;description=Add+Pipedream+MCP+to+your+app+or+agent+to+make+tool+calls+on+behalf+of+your+users+to+3%2C000%2B+APIs+and+10%2C000%2B+tools.\u0026amp;theme=0d4512b4a13a7a889c737c15\u0026amp;signature=5e5620516117326027014475eb1844dd3513c73d326771f910f15c6a0d8fe44e\">\u003cmeta data-mint-head name="twitter:image:width" content="1200">\u003cmeta data-mint-head name="twitter:image:height" content="630">\u003cmeta data-mint-head name="msapplication-config" content="/docs/mintlify-assets/_mintlify/favicons/pipedream/BXAUbH3bs99htewI/_generated/favicon/browserconfig.xml">\u003cmeta data-mint-head name="apple-mobile-web-app-title" content="Pipedream">\u003cmeta data-mint-head name="msapplication-TileColor" content="#095c32">\u003cmeta data-mint-head name="og:locale" content="en_US">\u003cmeta data-mint-head name="charset" content="UTF-8">\u003cmeta data-mint-head name="viewport" content="width=device-width, initial-scale=1.0">\u003cmeta data-mint-head name="author" content="Pipedream">\u003cmeta data-mint-head name="googlebot" content="index, follow">\u003cmeta data-mint-head name="language" content="en">\u003cmeta data-mint-head name="twitter:creator" content="@pipedream">\u003cmeta data-mint-head name="twitter:image:alt" content="Pipedream Logo">\u003clink data-mint-head rel="canonical" href="https://pipedream.com/docs/connect/mcp/developers\">\u003clink data-mint-head rel="alternate" type="application/xml" href="/docs/sitemap.xml">\u003clink data-mint-head rel="alternate" type="text/markdown" href="/docs/connect/mcp/developers.md">\u003cscript data-mint-head type="application/ld+json">{"@context":"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://pipedream.com/#organization\",\"name\":\"Pipedream\",\"url\":\"https://pipedream.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/pipedream/J-J7n6QGsUEW1AZY/logo/pipedream_workday_lockup.png?fit=max\u0026auto=format\u0026n=J-J7n6QGsUEW1AZY\u0026q=85\u0026s=20f01e899a0e49424e3d16d1e84adc60\"}},{\"@type\":\"WebSite\",\"@id\":\"https://pipedream.com/docs#website\",\"name\":\"Pipedream\",\"url\":\"https://pipedream.com/docs\",\"publisher\":{\"@id\":\"https://pipedream.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://pipedream.com/docs/connect/mcp/developers#webpage\",\"url\":\"https://pipedream.com/docs/connect/mcp/developers\",\"name\":\"Develop with Pipedream MCP","description":"Add Pipedream MCP to your app or agent to make tool calls on behalf of your users to 3,000+ APIs and 10,000+ tools.","dateModified":"2026-05-29T19:00:05.858Z","isPartOf":{"@id":"https://pipedream.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://pipedream.com/docs/connect/mcp/developers#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://pipedream.com/docs/connect/mcp/developers#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Connect\",\"item\":\"https://pipedream.com/docs/connect\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MCP\",\"item\":\"https://pipedream.com/docs/connect/mcp\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Develop with Pipedream MCP","item":"https://pipedream.com/docs/connect/mcp/developers\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://pipedream.com/docs/connect/mcp/developers#article\",\"headline\":\"Develop with Pipedream MCP","name":"Develop with Pipedream MCP","description":"Add Pipedream MCP to your app or agent to make tool calls on behalf of your users to 3,000+ APIs and 10,000+ tools.","url":"https://pipedream.com/docs/connect/mcp/developers\",\"mainEntityOfPage\":{\"@id\":\"https://pipedream.com/docs/connect/mcp/developers#webpage\"},\"dateModified\":\"2026-05-29T19:00:05.858Z\",\"publisher\":{\"@id\":\"https://pipedream.com/#organization\"},\"isPartOf\":{\"@id\":\"https://pipedream.com/docs#website\"}}]}\u003c/script>","siteName":"Pipedream","nav":{"global":null,"products":[{"product":"Connect","icon":"https://mintlify.s3.us-west-1.amazonaws.com/pipedream/logo/pipedream_icon.svg","description":"Integration layer for AI agents","tabs":[{"tab":"Documentation","icon":"book","groups":[{"group":"Getting Started","pages":[{"title":"Introduction to Pipedream","sidebarTitle":"Introduction","icon":"house","href":""},{"group":"Workspaces","icon":"users","pages":[{"title":"Managing workspaces","href":"/workspaces"},{"group":"Single-Sign On","pages":[{"title":"Single Sign On Overview","sidebarTitle":"Overview","href":"/workspaces/sso"},{"title":"Configure SSO with Google Workspace","sidebarTitle":"Google Workspace","href":"/workspaces/sso/google"},{"title":"Configure SSO with Okta","sidebarTitle":"Okta","href":"/workspaces/sso/okta"},{"title":"Configure SSO with Another SAML Provider","sidebarTitle":"SAML","href":"/workspaces/sso/saml"}]},{"title":"Domain Verification","href":"/workspaces/domain-verification"}]},{"group":"Projects","icon":"folder","pages":[{"title":"Projects","sidebarTitle":"Overview","href":"/projects"},{"title":"Access Controls","href":"/projects/access-controls"},{"title":"Project Variables and Secrets","sidebarTitle":"Variables and Secrets","href":"/projects/secrets"}]},{"title":"Using AI Tooling with Pipedream","sidebarTitle":"AI Tooling","icon":"wand-magic-sparkles","href":"/ai-tooling"}]},{"group":"Connect","pages":[{"title":"Overview","icon":"plug","href":"/connect"},{"title":"Connect Quickstart","sidebarTitle":"Quickstart","icon":"rocket","href":"/connect/quickstart"},{"title":"App Discovery","sidebarTitle":"App Discovery","icon":"location-dot","href":"/connect/app-discovery"},{"group":"Managed Auth","icon":"key","pages":[{"title":"Managed Auth Quickstart","sidebarTitle":"Quickstart","href":"/connect/managed-auth/quickstart"},{"title":"Users","href":"/connect/managed-auth/users"},{"title":"Connect Tokens","href":"/connect/managed-auth/tokens"},{"title":"Connect Link","href":"/connect/managed-auth/connect-link"},{"title":"OAuth Clients","href":"/connect/managed-auth/oauth-clients"},{"title":"App Overrides","href":"/connect/managed-auth/app-overrides"},{"title":"Environments","href":"/connect/managed-auth/environments"},{"title":"Project Configuration","href":"/connect/managed-auth/customization"},{"title":"Troubleshooting","href":"/connect/managed-auth/troubleshooting"}]},{"group":"Tool Use","icon":"wrench","pages":[{"title":"Pre Built Tools for Your App or Agent","sidebarTitle":"Overview","href":"/connect/components"},{"title":"Executing Actions","href":"/connect/components/actions"},{"title":"Deploying Triggers","href":"/connect/components/triggers"},{"title":"Working with Files","href":"/connect/components/files"},{"title":"Using Custom Tools","sidebarTitle":"Custom Tools","href":"/connect/components/custom-tools"},{"title":"Troubleshooting","href":"/connect/components/troubleshooting"}]},{"group":"MCP","icon":"robot","pages":[{"title":"MCP Servers","sidebarTitle":"Overview","description":"Use Pipedream MCP with popular AI frameworks and LLMs to add 10,000+ tools to your AI application.","href":"/connect/mcp"},{"title":"Develop with Pipedream MCP","sidebarTitle":"Developers","href":"/connect/mcp/developers"},{"group":"AI Frameworks","pages":[{"title":"Pipedream MCP with Vercel's AI SDK","sidebarTitle":"Vercel AI SDK","description":"Use Pipedream MCP with the Vercel AI SDK","href":"/connect/mcp/ai-frameworks/vercel-ai-sdk"},{"title":"OpenAI Integration","sidebarTitle":"OpenAI","href":"/connect/mcp/ai-frameworks/openai"},{"title":"Pipedream MCP with Anthropic","sidebarTitle":"Anthropic","href":"/connect/mcp/ai-frameworks/anthropic"},{"title":"Pipedream MCP with Gemini","sidebarTitle":"Gemini","href":"/connect/mcp/ai-frameworks/gemini"}]},{"title":"Using Pipedream MCP as an End User","sidebarTitle":"Consumers","href":"/connect/mcp/users"}]},{"title":"Webhooks","icon":"webhook","href":"/connect/webhooks"},{"title":"Connect API Proxy","sidebarTitle":"API Proxy","icon":"arrows-left-right","href":"/connect/api-proxy"},{"title":"Pipedream Connect Use Cases","sidebarTitle":"Use Cases","icon":"lightbulb","href":"/connect/use-cases"}]},{"group":"Workflows","pages":[{"title":"Workflows and String Are Shutting Down on March 31, 2027","sidebarTitle":"Important Update","icon":"bullhorn","href":"/workflows"},{"title":"What Are Workflows?","sidebarTitle":"Overview","icon":"diagram-project","href":"/workflows/overview"},{"title":"Workflow Development","sidebarTitle":"Quickstart","icon":"rocket","href":"/workflows/quickstart"},{"group":"Building Workflows","icon":"hammer","pages":[{"title":"Triggers","href":"/workflows/building-workflows/triggers"},{"title":"Actions","href":"/workflows/building-workflows/actions"},{"title":"HTTP","href":"/workflows/building-workflows/http"},{"title":"Using Props","href":"/workflows/building-workflows/using-props"},{"title":"Build with AI","sidebarTitle":"Build with AI","href":"/workflows/building-workflows/build-with-ai"},{"group":"Write your own code","pages":[{"title":"Overview","href":"/workflows/building-workflows/code"},{"group":"Node.js","pages":[{"title":"Running Node.js in Workflows","href":"/workflows/building-workflows/code/nodejs"},{"title":"Using AI to Generate Code","sidebarTitle":"Use AI to Generate Code","href":"/workflows/building-workflows/code/nodejs/ai-code-generation"},{"title":"Connecting Apps in Node.js","sidebarTitle":"Connect Apps","href":"/workflows/building-workflows/code/nodejs/auth"},{"title":"Make HTTP Requests with Node.js","sidebarTitle":"HTTP Requests","href":"/workflows/building-workflows/code/nodejs/http-requests"},{"title":"Working with the Filesystem in Node.js","sidebarTitle":"Files","href":"/workflows/building-workflows/code/nodejs/working-with-files"},{"title":"Using Data Stores","sidebarTitle":"Data Stores","href":"/workflows/building-workflows/code/nodejs/using-data-stores"},{"title":"Delaying a Workflow","sidebarTitle":"Delaying Steps","href":"/workflows/building-workflows/code/nodejs/delay"},{"title":"Pause, Resume, and Rerun a Workflow","sidebarTitle":"Pause, Resume, and Rerun Steps","href":"/workflows/building-workflows/code/nodejs/rerun"},{"title":"Running Asynchronous Code in Node.js","sidebarTitle":"Running Asynchronous Code","href":"/workflows/building-workflows/code/nodejs/async"},{"title":"Sharing Code Across Workflows","href":"/workflows/building-workflows/code/nodejs/sharing-code"},{"title":"Browser Automation with Node.js","sidebarTitle":"Browser Automation","href":"/workflows/building-workflows/code/nodejs/browser-automation"}]},{"group":"Python","pages":[{"title":"Python","sidebarTitle":"Running Python in Workflows","href":"/workflows/building-workflows/code/python"},{"title":"Connecting Apps in Python","sidebarTitle":"Connect Apps","href":"/workflows/building-workflows/code/python/auth"},{"title":"Making HTTP Requests with Python","sidebarTitle":"HTTP Requests","href":"/workflows/building-workflows/code/python/http-requests"},{"title":"Working with the Filesystem in Python","sidebarTitle":"Files","href":"/workflows/building-workflows/code/python/working-with-files"},{"title":"Using Data Stores","sidebarTitle":"Data Stores","href":"/workflows/building-workflows/code/python/using-data-stores"},{"title":"Delaying a Workflow","sidebarTitle":"Delaying Steps","href":"/workflows/building-workflows/code/python/delay"},{"title":"Pause, Resume, and Rerun a Workflow","sidebarTitle":"Pause, Resume, and Rerun Steps","href":"/workflows/building-workflows/code/python/rerun"},{"title":"Use PyPI Packages with Differing Import Names","sidebarTitle":"Different PyPI Package Name and Import Name","href":"/workflows/building-workflows/code/python/import-mappings"}]},{"title":"Go","href":"/workflows/building-workflows/code/go"},{"title":"Bash","href":"/workflows/building-workflows/code/bash"}]},{"group":"Control Flow","pages":[{"title":"Overview","href":"/workflows/building-workflows/control-flow"},{"title":"If/Else","sidebarTitle":"Branching - If/Else","href":"/workflows/building-workflows/control-flow/ifelse"},{"title":"Switch","sidebarTitle":"Branching - Switch","href":"/workflows/building-workflows/control-flow/switch"},{"title":"Parallel","sidebarTitle":"Branching - Parallel","href":"/workflows/building-workflows/control-flow/parallel"},{"title":"Delay","href":"/workflows/building-workflows/control-flow/delay"},{"title":"Filter","href":"/workflows/building-workflows/control-flow/filter"},{"title":"End Workflow","href":"/workflows/building-workflows/control-flow/end-workflow"}]},{"title":"Inspect Events","href":"/workflows/building-workflows/inspect"},{"title":"Handling Errors","href":"/workflows/building-workflows/errors"},{"title":"Sharing Workflows","href":"/workflows/building-workflows/sharing"},{"group":"Settings","pages":[{"title":"Settings","sidebarTitle":"Overview","href":"/workflows/building-workflows/settings"},{"title":"Concurrency and Throttling","href":"/workflows/building-workflows/settings/concurrency-and-throttling"}]}]},{"group":"Data Management","icon":"database","pages":[{"title":"Data Stores","href":"/workflows/data-management/data-stores"},{"group":"File Stores","pages":[{"title":"File Stores","sidebarTitle":"Overview","href":"/workflows/data-management/file-stores"},{"title":"File Stores Node.js Reference","sidebarTitle":"Reference","href":"/workflows/data-management/file-stores/reference"}]},{"group":"Destinations","pages":[{"title":"Destinations","sidebarTitle":"Overview","href":"/workflows/data-management/destinations"},{"title":"Email","href":"/workflows/data-management/destinations/email"},{"title":"HTTP","href":"/workflows/data-management/destinations/http"},{"title":"Emit Events","sidebarTitle":"Emit","href":"/workflows/data-management/destinations/emit"},{"title":"Server Sent Events (SSE)","sidebarTitle":"SSE","href":"/workflows/data-management/destinations/sse"},{"title":"Amazon S3","sidebarTitle":"S3","href":"/workflows/data-management/destinations/s3"}]},{"group":"Databases","pages":[{"title":"Connecting to Databases","sidebarTitle":"Overview","href":"/workflows/data-management/databases"},{"title":"Working with SQL","href":"/workflows/data-management/databases/working-with-sql"}]}]},{"title":"Event History","icon":"columns-3","href":"/workflows/event-history"},{"title":"Export Workflows","icon":"file-export","href":"/workflows/export-workflows"},{"title":"Environment Variables","icon":"key","href":"/workflows/environment-variables"},{"title":"GitHub Sync","icon":"github","iconType":"brands","href":"/workflows/git"},{"title":"Custom Domains","icon":"globe","href":"/workflows/domains"},{"title":"Virtual Private Clouds","icon":"cloud","href":"/workflows/vpc"},{"title":"Limits","icon":"gauge","href":"/workflows/limits"},{"title":"Workflow Troubleshooting","sidebarTitle":"Troubleshooting","icon":"wrench","href":"/workflows/troubleshooting"},{"title":"Workflow Security Best Practices","sidebarTitle":"Security best practices","icon":"shield","href":"/workflows/security-best-practices"}]},{"group":"Platform","pages":[{"group":"Components","icon":"puzzle-piece","pages":[{"title":"Overview","href":"/components"},{"group":"Contributing","pages":[{"title":"Pipedream Registry","sidebarTitle":"Overview","href":"/components/contributing"},{"title":"Component API Reference","sidebarTitle":"Component API","href":"/components/contributing/api"},{"title":"Quickstart: Action Development","sidebarTitle":"Quickstart — Actions","href":"/components/contributing/actions-quickstart"},{"title":"Quickstart: Source Development","sidebarTitle":"Quickstart — Sources","href":"/components/contributing/sources-quickstart"},{"title":"Components Guidelines and Patterns","sidebarTitle":"Guidelines","href":"/components/contributing/guidelines"},{"title":"TypeScript Components","href":"/components/contributing/typescript"}]}]},{"group":"CLI","icon":"laptop-code","pages":[{"title":"Installing the CLI","sidebarTitle":"Install","href":"/cli/install"},{"title":"Logging into the CLI","sidebarTitle":"Login","href":"/cli/login"},{"title":"CLI Reference","href":"/cli/reference"}]},{"group":"Pricing","icon":"dollar-sign","pages":[{"title":"Plans and Pricing","sidebarTitle":"Overview","href":"/pricing"},{"title":"FAQ","href":"/pricing/faq"}]},{"group":"Account","icon":"user","pages":[{"title":"User Settings","href":"/account/user-settings"},{"title":"Billing Settings","href":"/account/billing-settings"}]},{"group":"Security","icon":"shield","pages":[{"title":"Privacy and Security at Pipedream","sidebarTitle":"Privacy and Security","href":"/privacy-and-security"},{"title":"Security Best Practices","href":"/privacy-and-security/best-practices"},{"title":"HIPAA Compliance","href":"/privacy-and-security/hipaa"},{"title":"PGP Key","href":"/privacy-and-security/pgp-key"},{"title":"Subprocessors","href":"/subprocessors"}]},{"title":"Troubleshooting Common Issues","sidebarTitle":"Troubleshooting","icon":"wrench","href":"/troubleshooting"},{"title":"Pipedream Glossary","sidebarTitle":"Glossary of Terms","icon":"book","href":"/glossary"}]},{"group":"Additional Resources","pages":[{"title":"Support","url":"https://pipedream.com/support","href":"/additional-resources/support"},{"title":"Status","url":"https://status.pipedream.com","href":"/additional-resources/status"},{"title":"Terms of Service","url":"https://pipedream.com/terms","href":"/additional-resources/terms"},{"title":"Privacy Policy","url":"https://pipedream.com/privacy","href":"/additional-resources/privacy"}]}]},{"tab":"Connect API","icon":"square-terminal","pages":[{"title":"Connect API","href":"/connect/api-reference/introduction"}]},{"tab":"Changelog","icon":"bullhorn","pages":[{"title":"Changelog","href":"/changelog"}]}]},{"product":"Conduit","icon":"https://mintlify.s3.us-west-1.amazonaws.com/pipedream/images/conduit/conduit-mark.svg","description":"Enterprise MCP Gateway","pages":[{"title":"Conduit","href":"/conduit"}]}]},"basePath":"","title":"Develop with Pipedream MCP - Pipedream","buildId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","deploymentId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","dynamics":[],"chunks":[]}