PI

Pipedream MCP Server — 2,500 APIs, 8,000+ Tools

Connect via the MCP server to 2,500 APIs and 8,000+ prebuilt tools to automate workflows and ship integrations faster.

Overview

The Pipedream MCP Server is a lightweight implementation of the Model Context Protocol (MCP) that exposes a large collection of prebuilt connectors and tools to language models and other clients. By running the MCP server locally or in your environment you get programmatic access to 2,500+ APIs and 8,000+ prebuilt tools — so you can route LLM-driven actions to real-world services without writing each integration yourself.

This server acts as a bridge between model prompts (or any MCP-compatible client) and the underlying systems those prompts should interact with. It standardizes tool discovery, authentication, and invocation so developers can prototype and ship automated workflows faster, run safe tooling against LLM outputs, and locally test integrations before deploying them into production.

Features

  • Access to 2,500+ APIs and 8,000+ prebuilt tools maintained in the Pipedream ecosystem
  • Standard MCP endpoints for tool discovery and invocation
  • Built-in authentication and per-tool credential handling
  • Local development mode for testing tool flows against models
  • Docker-friendly, so you can run it in containers or cloud instances
  • Web API for enumerating available tools and viewing tool metadata
  • Extensible: add custom tools or adapters alongside the built-in catalog

Installation / Configuration

Prerequisites: Node.js (16+ recommended), Docker (optional)

Clone the repo and install dependencies:

git clone https://github.com/PipedreamHQ/pipedream.git
cd pipedream/modelcontextprotocol
npm install

Copy and edit environment variables (example .env):

cp .env.example .env
# Edit .env to set values such as PORT and API keys

Example .env contents:

PORT=8080
MCP_AUTH_TOKEN=change-me
PIPEDREAM_API_KEY=your_pipedream_api_key_here
LOG_LEVEL=info

Start the server:

# development
npm run dev

# or directly
node src/server.js

Run with Docker:

docker build -t pipedream-mcp .
docker run -p 8080:8080 \
  -e MCP_AUTH_TOKEN=change-me \
  -e PIPEDREAM_API_KEY=your_pipedream_api_key_here \
  pipedream-mcp

The server exposes HTTP endpoints for discovery and invocation. By default it listens on the configured PORT (8080 above).

Available Tools / Resources

The MCP server surfaces a large catalog of prebuilt tools and API adapters. You can browse, filter, and invoke tools through HTTP endpoints:

  • GET /tools — list available tools and metadata
  • GET /tools/{tool_id} — tool schema and authentication requirements
  • POST /tools/{tool_id}/invoke — invoke a tool with an input payload

Example categories (partial):

CategoryExamples
MessagingSlack, Twilio, Email
CloudAWS, GCP, Azure operations
DatabasesPostgres, MongoDB, Redis
ProductivityGoogle Sheets, Notion, Airtable
MonitoringPagerDuty, Datadog, Sentry

Repository and reference:

  • GitHub: https://github.com/PipedreamHQ/pipedream/tree/master/modelcontextprotocol

Use Cases

  1. Automating ticket creation from model outputs
  • Flow: LLM analyzes a support message → determines a ticket should be created → calls support.create_ticket tool.
  • Example invocation (curl):
curl -X POST http://localhost:8080/tools/support.create_ticket/invoke \
  -H "Authorization: Bearer $MCP_AUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "summary": "App crash on upload",
    "description": "User reports crash when uploading large file",
    "priority": "high",
    "metadata": {"user_id": "1234"}
  }'
  1. Enriching records during ingestion
  • Flow: Data pipeline receives a record, calls enrichment tools (e.g., company lookup, geocoding) before storing to DB.
  • You can script the pipeline to call multiple tools serially using the MCP server as the canonical tool broker.
  1. Prototyping conversational agents with real tooling
  • Flow: Build a chat assistant that can take actions (send messages, fetch documents, run queries) by invoking tools the MCP server exposes. This lets you test safe action execution in a controlled environment.

Quick examples

Programmatic invocation example in Python:

import requests
MCP_URL = "http://localhost:8080"
TOKEN = "change-me"

payload = {
    "input": {"text": "Create a draft email to [email protected]"},
    "options": {}
}

resp = requests.post(
    f"{MCP_URL}/tools/email.compose/invoke",
    json=payload,
    headers={"Authorization": f"Bearer {TOKEN}"}
)
print(resp.status_code, resp.json())

List tools example (curl):

curl -H "Authorization: Bearer $MCP_AUTH_TOKEN" http://localhost:8080/tools

Next steps

  • Browse the catalog with GET /tools and inspect tool schemas before invoking.
  • Configure per-tool credentials in your environment or through the server UI (if enabled).
  • Extend the server by