langgenius / langgenius/dify-plugins

[Plugin Request]: MCP DataSource Plugin

Open
#1,460 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Plugin Request project#dify-plugins
Dominant language
Python
Stars
554
Forks
879
Avg merge
1d 2h
Merged PRs (30d)
125

Description

Plugin Name

MCPDataSource

Function Description

🧠 Objective

Add support for an MCP (Model Context Protocol) Tool as a DataSource plugin in Dify, allowing dynamic retrieval of external data with optional user-defined filters.


🧩 Feature Summary

Feature name: MCP DataSource Plugin
Category: Data Source → External Connector
Goal: Enable Dify apps to pull in real-time data from external systems via the MCP protocol, with configurable input filters.


⚙️ Functional Requirements

Item Description
DataSource Type mcp_tool
Purpose Fetch structured data from an external system (API, DB, service) through an MCP interface
Input Parameters - endpoint (string): The MCP endpoint or tool ID.
- filters (object or key:value list): Optional filter criteria passed to the MCP request.
- fields (optional array): Specific fields or attributes to return.
- Input from previous action (Important).
Behavior 1. When triggered, Dify calls the MCP tool with the given endpoint and filters.
2. The returned data becomes part of the context (like RAG data or variables) for the current workflow or agent.
3. The user can map MCP results to variables or documents inside Dify.
Output JSON array or text, depending on MCP response format.
UI Integration - Add a “MCP Tool” option in DataSource setup.
- Provide an input editor for filters (JSON, form, or key-value pairs).
- Show a “Test connection” button to validate the MCP endpoint and preview results.
Official Website URL

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by locating the existing Data Source plugin structure and MCP integration points in dify-plugins; done means an mcp_tool source can accept the listed inputs, invoke the MCP tool, expose its results, and provide the requested UI integration.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.