OpenAI Web Search MCP Server

by tiovikram
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Supports containerized deployment through Docker, with a pre-built image available from GitHub Container Registry, allowing portable and isolated execution of the MCP server.

  • Enables access to OpenAI's Web Search capabilities through both Chat Completions API and Responses API, allowing AI models to search the web for current information with customizable geographic context and citation handling.

Gumloop MCP Server

MCP Server for Gumloop's API, enabling AI models to manage and execute automations through a standardized interface.

Features

  • Flow Management: Start automations and monitor their execution status
  • Workspace Discovery: List available workbooks and saved automation flows
  • Input Schema Retrieval: Get detailed information about required inputs for flows
  • File Operations: Upload and download files used in automations
  • Context-Aware Execution: Run automations with input parameters specific to user needs

Tools

startAutomation

Initiates a new flow run for a specific saved automation.

Inputs:

  • user_id (string): The ID for the user initiating the flow
  • saved_item_id (string): The ID for the saved flow
  • project_id (string, optional): The ID of the project within which the flow is executed
  • pipeline_inputs (array, optional): List of inputs for the flow
    • input_name (string): The 'input_name' parameter from your Input node
    • value (string): The value to be passed to the Input node

Returns: Response with run details including run_id, saved_item_id, workbook_id and URL

retrieveRunDetails

Retrieves details about a specific flow run.

Inputs:

  • run_id (string): ID of the flow run to retrieve
  • user_id (string, optional): The ID for the user initiating the flow
  • project_id (string, optional): The ID of the project within which the flow is executed

Returns: Response with run details including state, outputs, timestamps, and logs

listSavedFlows

Retrieves a list of all saved flows for a user or project.

Inputs:

  • user_id (string, optional): The user ID for which to list items
  • project_id (string, optional): The project ID for which to list items

Returns: Response with list of saved flows and their metadata

listWorkbooks

Retrieves a list of all workbooks and their associated saved flows.

Inputs:

  • user_id (string, optional): The user ID for which to list workbooks
  • project_id (string, optional): The project ID for which to list workbooks

Returns: Response with list of workbooks and their associated saved flows

retrieveInputSchema

Retrieves the input schema for a specific saved flow.

Inputs:

  • saved_item_id (string): The ID of the saved item for which to retrieve input schemas
  • user_id (string, optional): User ID that created the flow
  • project_id (string, optional): Project ID that the flow is under

Returns: Response with list of input parameters for the flow

uploadFile

Uploads a single file to the Gumloop platform.

Inputs:

  • file_name (string): The name of the file to be uploaded
  • file_content (string): Base64 encoded content of the file
  • user_id (string, optional): The user ID associated with the file
  • project_id (string, optional): The project ID associated with the file

Returns: Response with success status and file name

uploadMultipleFiles

Uploads multiple files to the Gumloop platform in a single request.

Inputs:

  • files (array): Array of file objects to upload
    • file_name (string): The name of the file to be uploaded
    • file_content (string): Base64 encoded content of the file
  • user_id (string, optional): The user ID associated with the files
  • project_id (string, optional): The project ID associated with the files

Returns: Response with success status and list of uploaded file names

downloadFile

Downloads a specific file from the Gumloop platform.

Inputs:

  • file_name (string): The name of the file to download
  • run_id (string): The ID of the flow run associated with the file
  • saved_item_id (string): The saved item ID associated with the file
  • user_id (string, optional): The user ID associated with the flow run
  • project_id (string, optional): The project ID associated with the flow run

Returns: The requested file content

downloadMultipleFiles

Downloads multiple files from the Gumloop platform as a zip archive.

Inputs:

  • file_names (array): An array of file names to download
  • run_id (string): The ID of the flow run associated with the files
  • user_id (string, optional): The user ID associated with the files
  • project_id (string, optional): The project ID associated with the files
  • saved_item_id (string, optional): The saved item ID associated with the files

Returns: Zip file containing the requested files

Setup

API Key

Create a Gumloop API key with access to the required features:

  1. Go to Gumloop Workspace Settings
  2. Generate a new API key
  3. Copy the generated key

Usage with Claude Desktop

To use this with Claude Desktop, add the following to your claude_desktop_config.json:

Using NPX

{ "mcpServers": { "gumloop": { "command": "npx", "args": [ "-y", "gumloop-mcp-server" ], "env": { "GUMLOOP_API_KEY": "<YOUR_GUMLOOP_API_KEY>" } } } }

Using Docker

{ "mcpServers": { "gumloop": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GUMLOOP_API_KEY", "gumloop-mcp-server" ], "env": { "GUMLOOP_API_KEY": "<YOUR_GUMLOOP_API_KEY>" } } } }

Examples

Starting an Automation

// Start a saved automation flow const result = await agent.callTool("startAutomation", { user_id: "user123", saved_item_id: "flow456", pipeline_inputs: [ { input_name: "search_query", value: "AI automation trends 2025" } ] });

Checking Run Status

// Check the status of a running automation const result = await agent.callTool("retrieveRunDetails", { run_id: "run789", user_id: "user123" });

Listing Available Flows

// Get all saved flows for a user const result = await agent.callTool("listSavedFlows", { user_id: "user123" });

Working with Files

// Upload a file to be used in an automation const result = await agent.callTool("uploadFile", { user_id: "user123", file_name: "data.csv", file_content: "base64EncodedFileContent..." });

Response Format

The server returns Gumloop API responses in JSON format. Here's an example for retrieving run details:

{ "user_id": "user123", "state": "RUNNING", "outputs": {}, "created_ts": "2023-11-07T05:31:56Z", "finished_ts": null, "log": [ "Starting automation flow...", "Processing input parameters...", "Executing node 1: Web Scraper..." ] }

Limitations

  • API calls are subject to Gumloop's rate limits and usage quotas
  • File uploads are limited to the maximum size allowed by Gumloop's API
  • Some features may require specific subscription tiers
  • The server requires a valid Gumloop API key with appropriate permissions

Build

# Install dependencies pnpm install # Build the project pnpm run build # Start the server pnpm start

License

This MCP server is licensed under the MIT License.

-
security - not tested
A
license - permissive license
-
quality - not tested

Enables AI models to search the web for current information before generating responses, with features for conditional searching, geographic customization, and automatic citations.

  1. Features
    1. Tools
      1. startAutomation
      2. retrieveRunDetails
      3. listSavedFlows
      4. listWorkbooks
      5. retrieveInputSchema
      6. uploadFile
      7. uploadMultipleFiles
      8. downloadFile
      9. downloadMultipleFiles
    2. Setup
      1. API Key
      2. Usage with Claude Desktop
    3. Examples
      1. Starting an Automation
      2. Checking Run Status
      3. Listing Available Flows
      4. Working with Files
    4. Response Format
      1. Limitations
        1. Build
          1. License
            ID: secrnfj313