mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-08-18 05:55:59 +08:00
feat: tools picker can choose mcp item
This commit is contained in:
parent
347cb2685e
commit
46899597ca
@ -30,6 +30,7 @@ import { useAppContext } from '@/context/app-context'
|
|||||||
import {
|
import {
|
||||||
useAllBuiltInTools,
|
useAllBuiltInTools,
|
||||||
useAllCustomTools,
|
useAllCustomTools,
|
||||||
|
useAllMCPTools,
|
||||||
useAllWorkflowTools,
|
useAllWorkflowTools,
|
||||||
useInvalidateAllBuiltInTools,
|
useInvalidateAllBuiltInTools,
|
||||||
useUpdateProviderCredentials,
|
useUpdateProviderCredentials,
|
||||||
@ -103,6 +104,7 @@ const ToolSelector: FC<Props> = ({
|
|||||||
const { data: buildInTools } = useAllBuiltInTools()
|
const { data: buildInTools } = useAllBuiltInTools()
|
||||||
const { data: customTools } = useAllCustomTools()
|
const { data: customTools } = useAllCustomTools()
|
||||||
const { data: workflowTools } = useAllWorkflowTools()
|
const { data: workflowTools } = useAllWorkflowTools()
|
||||||
|
const { data: mcpTools } = useAllMCPTools()
|
||||||
const invalidateAllBuiltinTools = useInvalidateAllBuiltInTools()
|
const invalidateAllBuiltinTools = useInvalidateAllBuiltInTools()
|
||||||
const invalidateInstalledPluginList = useInvalidateInstalledPluginList()
|
const invalidateInstalledPluginList = useInvalidateInstalledPluginList()
|
||||||
|
|
||||||
@ -110,11 +112,11 @@ const ToolSelector: FC<Props> = ({
|
|||||||
const { inMarketPlace, manifest } = usePluginInstalledCheck(value?.provider_name)
|
const { inMarketPlace, manifest } = usePluginInstalledCheck(value?.provider_name)
|
||||||
|
|
||||||
const currentProvider = useMemo(() => {
|
const currentProvider = useMemo(() => {
|
||||||
const mergedTools = [...(buildInTools || []), ...(customTools || []), ...(workflowTools || [])]
|
const mergedTools = [...(buildInTools || []), ...(customTools || []), ...(workflowTools || []), ...(mcpTools || [])]
|
||||||
return mergedTools.find((toolWithProvider) => {
|
return mergedTools.find((toolWithProvider) => {
|
||||||
return toolWithProvider.id === value?.provider_name
|
return toolWithProvider.id === value?.provider_name
|
||||||
})
|
})
|
||||||
}, [value, buildInTools, customTools, workflowTools])
|
}, [value, buildInTools, customTools, workflowTools, mcpTools])
|
||||||
|
|
||||||
const [isShowChooseTool, setIsShowChooseTool] = useState(false)
|
const [isShowChooseTool, setIsShowChooseTool] = useState(false)
|
||||||
const handleSelectTool = (tool: ToolDefaultValue) => {
|
const handleSelectTool = (tool: ToolDefaultValue) => {
|
||||||
|
@ -1,3 +1,110 @@
|
|||||||
|
const tools = [
|
||||||
|
{
|
||||||
|
author: 'Novice',
|
||||||
|
name: 'NOTION_ADD_PAGE_CONTENT',
|
||||||
|
label: {
|
||||||
|
en_US: 'NOTION_ADD_PAGE_CONTENT',
|
||||||
|
zh_Hans: 'NOTION_ADD_PAGE_CONTENT',
|
||||||
|
pt_BR: 'NOTION_ADD_PAGE_CONTENT',
|
||||||
|
ja_JP: 'NOTION_ADD_PAGE_CONTENT',
|
||||||
|
},
|
||||||
|
description: {
|
||||||
|
en_US: 'Adds a single content block to a notion page. multiple calls needed for multiple blocks. note: only supports adding to notion pages. blocks that can contain children: - page (any block type) - toggle (any nested content) - to-do (nested to-dos/blocks) - bulleted list (nested lists/blocks) - numbered list (nested lists/blocks) - callout (child blocks) - quote (nested blocks)',
|
||||||
|
zh_Hans: 'Adds a single content block to a notion page. multiple calls needed for multiple blocks. note: only supports adding to notion pages. blocks that can contain children: - page (any block type) - toggle (any nested content) - to-do (nested to-dos/blocks) - bulleted list (nested lists/blocks) - numbered list (nested lists/blocks) - callout (child blocks) - quote (nested blocks)',
|
||||||
|
pt_BR: 'Adds a single content block to a notion page. multiple calls needed for multiple blocks. note: only supports adding to notion pages. blocks that can contain children: - page (any block type) - toggle (any nested content) - to-do (nested to-dos/blocks) - bulleted list (nested lists/blocks) - numbered list (nested lists/blocks) - callout (child blocks) - quote (nested blocks)',
|
||||||
|
ja_JP: 'Adds a single content block to a notion page. multiple calls needed for multiple blocks. note: only supports adding to notion pages. blocks that can contain children: - page (any block type) - toggle (any nested content) - to-do (nested to-dos/blocks) - bulleted list (nested lists/blocks) - numbered list (nested lists/blocks) - callout (child blocks) - quote (nested blocks)',
|
||||||
|
},
|
||||||
|
parameters: [
|
||||||
|
{
|
||||||
|
name: 'after',
|
||||||
|
label: {
|
||||||
|
en_US: 'after',
|
||||||
|
zh_Hans: 'after',
|
||||||
|
pt_BR: 'after',
|
||||||
|
ja_JP: 'after',
|
||||||
|
},
|
||||||
|
placeholder: null,
|
||||||
|
scope: null,
|
||||||
|
auto_generate: null,
|
||||||
|
template: null,
|
||||||
|
required: false,
|
||||||
|
default: null,
|
||||||
|
min: null,
|
||||||
|
max: null,
|
||||||
|
precision: null,
|
||||||
|
options: [],
|
||||||
|
type: 'string',
|
||||||
|
human_description: {
|
||||||
|
en_US: 'The ID of the existing block that the new block should be appended after. If not provided, content will be appended at the end of the page.',
|
||||||
|
zh_Hans: 'The ID of the existing block that the new block should be appended after. If not provided, content will be appended at the end of the page.',
|
||||||
|
pt_BR: 'The ID of the existing block that the new block should be appended after. If not provided, content will be appended at the end of the page.',
|
||||||
|
ja_JP: 'The ID of the existing block that the new block should be appended after. If not provided, content will be appended at the end of the page.',
|
||||||
|
},
|
||||||
|
form: 'llm',
|
||||||
|
llm_description: 'The ID of the existing block that the new block should be appended after. If not provided, content will be appended at the end of the page.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'content_block',
|
||||||
|
label: {
|
||||||
|
en_US: 'content_block',
|
||||||
|
zh_Hans: 'content_block',
|
||||||
|
pt_BR: 'content_block',
|
||||||
|
ja_JP: 'content_block',
|
||||||
|
},
|
||||||
|
placeholder: null,
|
||||||
|
scope: null,
|
||||||
|
auto_generate: null,
|
||||||
|
template: null,
|
||||||
|
required: false,
|
||||||
|
default: null,
|
||||||
|
min: null,
|
||||||
|
max: null,
|
||||||
|
precision: null,
|
||||||
|
options: [],
|
||||||
|
type: 'string',
|
||||||
|
human_description: {
|
||||||
|
en_US: 'Child content to append to a page.',
|
||||||
|
zh_Hans: 'Child content to append to a page.',
|
||||||
|
pt_BR: 'Child content to append to a page.',
|
||||||
|
ja_JP: 'Child content to append to a page.',
|
||||||
|
},
|
||||||
|
form: 'llm',
|
||||||
|
llm_description: 'Child content to append to a page.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'parent_block_id',
|
||||||
|
label: {
|
||||||
|
en_US: 'parent_block_id',
|
||||||
|
zh_Hans: 'parent_block_id',
|
||||||
|
pt_BR: 'parent_block_id',
|
||||||
|
ja_JP: 'parent_block_id',
|
||||||
|
},
|
||||||
|
placeholder: null,
|
||||||
|
scope: null,
|
||||||
|
auto_generate: null,
|
||||||
|
template: null,
|
||||||
|
required: false,
|
||||||
|
default: null,
|
||||||
|
min: null,
|
||||||
|
max: null,
|
||||||
|
precision: null,
|
||||||
|
options: [],
|
||||||
|
type: 'string',
|
||||||
|
human_description: {
|
||||||
|
en_US: 'The ID of the page which the children will be added.',
|
||||||
|
zh_Hans: 'The ID of the page which the children will be added.',
|
||||||
|
pt_BR: 'The ID of the page which the children will be added.',
|
||||||
|
ja_JP: 'The ID of the page which the children will be added.',
|
||||||
|
},
|
||||||
|
form: 'llm',
|
||||||
|
llm_description: 'The ID of the page which the children will be added.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
labels: [],
|
||||||
|
output_schema: null,
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|
||||||
export const listData = [
|
export const listData = [
|
||||||
{
|
{
|
||||||
id: 'fdjklajfkljadslf111',
|
id: 'fdjklajfkljadslf111',
|
||||||
@ -7,7 +114,7 @@ export const listData = [
|
|||||||
server_url: 'https://mcp.composio.dev/notion/****/abc',
|
server_url: 'https://mcp.composio.dev/notion/****/abc',
|
||||||
type: 'mcp',
|
type: 'mcp',
|
||||||
is_team_authorization: true,
|
is_team_authorization: true,
|
||||||
tools: ['aaa', 'bbb'],
|
tools,
|
||||||
update_elapsed_time: 1744793369,
|
update_elapsed_time: 1744793369,
|
||||||
label: {
|
label: {
|
||||||
en_US: 'GOGOGO',
|
en_US: 'GOGOGO',
|
||||||
@ -37,7 +144,7 @@ export const listData = [
|
|||||||
server_url: 'https://mcp.composio.dev/notion/****/abc',
|
server_url: 'https://mcp.composio.dev/notion/****/abc',
|
||||||
type: 'mcp',
|
type: 'mcp',
|
||||||
is_team_authorization: true,
|
is_team_authorization: true,
|
||||||
tools: ['aaa', 'bbb'],
|
tools,
|
||||||
update_elapsed_time: 1744793369,
|
update_elapsed_time: 1744793369,
|
||||||
label: {
|
label: {
|
||||||
en_US: 'GOGOGO3',
|
en_US: 'GOGOGO3',
|
||||||
|
Loading…
x
Reference in New Issue
Block a user