Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 37 additions & 7 deletions src/main/presenter/mcpPresenter/inMemoryServers/appleServer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1209,40 +1209,70 @@ export class AppleServer {
{
name: 'calendar',
description: 'Search, create, and open calendar events in Apple Calendar app',
inputSchema: zodToJsonSchema(CalendarArgsSchema)
inputSchema: zodToJsonSchema(CalendarArgsSchema),
annotations: {
title: 'Apple Calendar',
destructiveHint: false
}
},
{
name: 'contacts',
description: 'Search and retrieve contacts from Apple Contacts app',
inputSchema: zodToJsonSchema(ContactsArgsSchema)
inputSchema: zodToJsonSchema(ContactsArgsSchema),
annotations: {
title: 'Apple Contacts',
readOnlyHint: true
}
},
{
name: 'mail',
description:
'Interact with Apple Mail app - read unread emails, search emails, and send emails',
inputSchema: zodToJsonSchema(MailArgsSchema)
inputSchema: zodToJsonSchema(MailArgsSchema),
annotations: {
title: 'Apple Mail',
destructiveHint: false,
openWorldHint: true
}
},
{
name: 'maps',
description:
'Search locations, manage guides, save favorites, and get directions using Apple Maps',
inputSchema: zodToJsonSchema(MapsArgsSchema)
inputSchema: zodToJsonSchema(MapsArgsSchema),
annotations: {
title: 'Apple Maps',
destructiveHint: false
}
},
{
name: 'messages',
description:
'Interact with Apple Messages app - send, read, schedule messages and check unread messages',
inputSchema: zodToJsonSchema(MessagesArgsSchema)
inputSchema: zodToJsonSchema(MessagesArgsSchema),
annotations: {
title: 'Apple Messages',
destructiveHint: false,
openWorldHint: true
}
},
{
name: 'notes',
description: 'Search, retrieve and create notes in Apple Notes app',
inputSchema: zodToJsonSchema(NotesArgsSchema)
inputSchema: zodToJsonSchema(NotesArgsSchema),
annotations: {
title: 'Apple Notes',
destructiveHint: false
}
},
{
name: 'reminders',
description: 'Search, create, and open reminders in Apple Reminders app',
inputSchema: zodToJsonSchema(RemindersArgsSchema)
inputSchema: zodToJsonSchema(RemindersArgsSchema),
annotations: {
title: 'Apple Reminders',
destructiveHint: false
}
}
]
}))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -580,7 +580,11 @@ export class ArtifactsServer {
'Do not call this function repeatedly if instructions or definitions for the requested artifact type are already available in the current context. ' +
'Specify the desired artifact category through the type parameter: code, documents, html, svg, mermaid, or react. ' +
'After obtaining the instructions, use them appropriately and avoid duplicate calls for the same type.',
inputSchema: zodToJsonSchema(GetArtifactInstructionsArgsSchema)
inputSchema: zodToJsonSchema(GetArtifactInstructionsArgsSchema),
annotations: {
title: 'Get Artifact Instructions',
readOnlyHint: true
}
}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,17 +111,29 @@ export class AutoPromptingServer {
{
name: 'list_all_prompt_template_names',
description: '获取所有可用提示词模板的名称列表。',
inputSchema: zodToJsonSchema(z.object({})) // 无需参数
inputSchema: zodToJsonSchema(z.object({})), // 无需参数
annotations: {
title: 'List Prompt Template Names',
readOnlyHint: true
}
},
{
name: 'get_prompt_template_parameters',
description: '根据提示词模板名称获取其所需的参数列表和描述。',
inputSchema: GetTemplateParametersArgsJsonSchema
inputSchema: GetTemplateParametersArgsJsonSchema,
annotations: {
title: 'Get Template Parameters',
readOnlyHint: true
}
},
{
name: 'fill_prompt_template',
description: '根据提示词模板名称和参数,填充模板内容并生成最终的Prompt。',
inputSchema: FillTemplateArgsJsonSchema
inputSchema: FillTemplateArgsJsonSchema,
annotations: {
title: 'Fill Prompt Template',
readOnlyHint: true
}
}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,13 +131,23 @@ export class BochaSearchServer {
name: 'bocha_web_search',
description:
'Search with Bocha Web Search and get enhanced search details from billions of web documents, including page titles, urls, summaries, site names, site icons, publication dates, image links, and more.', // 官方描述
inputSchema: zodToJsonSchema(BochaWebSearchArgsSchema)
inputSchema: zodToJsonSchema(BochaWebSearchArgsSchema),
annotations: {
title: 'Bocha Web Search',
readOnlyHint: true,
openWorldHint: true
}
},
{
name: 'bocha_ai_search',
description:
'Search with Bocha AI Search, recognizes the semantics of search terms and additionally returns structured modal cards with content from vertical domains.', // 官方描述
inputSchema: zodToJsonSchema(BochaAiSearchArgsSchema)
inputSchema: zodToJsonSchema(BochaAiSearchArgsSchema),
annotations: {
title: 'Bocha AI Search',
readOnlyHint: true,
openWorldHint: true
}
}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,12 @@ export class BraveSearchServer {
'Use this for broad information gathering, recent events, or when you need diverse web sources. ' +
'Supports pagination, content filtering, and freshness controls. ' +
'Maximum 20 results per request, with offset for pagination. ',
inputSchema: zodToJsonSchema(BraveWebSearchArgsSchema)
inputSchema: zodToJsonSchema(BraveWebSearchArgsSchema),
annotations: {
title: 'Brave Web Search',
readOnlyHint: true,
openWorldHint: true
}
},
{
name: 'brave_local_search',
Expand All @@ -325,7 +330,12 @@ export class BraveSearchServer {
'- Phone numbers and opening hours\n' +
"Use this when the query implies 'near me' or mentions specific locations. " +
'Automatically falls back to web search if no local results are found.',
inputSchema: zodToJsonSchema(BraveLocalSearchArgsSchema)
inputSchema: zodToJsonSchema(BraveLocalSearchArgsSchema),
annotations: {
title: 'Brave Local Search',
readOnlyHint: true,
openWorldHint: true
}
}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,11 @@ export class BuiltinKnowledgeServer {
return {
name: `builtin_knowledge_search${suffix}`,
description: config.description,
inputSchema: zodToJsonSchema(BuiltinKnowledgeSearchArgsSchema)
inputSchema: zodToJsonSchema(BuiltinKnowledgeSearchArgsSchema),
annotations: {
title: 'Builtin Knowledge Search',
readOnlyHint: true
}
}
})
return { tools }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -482,29 +482,49 @@ export class ConversationSearchServer {
name: 'search_conversations',
description:
'Search historical conversation records, supports title and content search',
inputSchema: zodToJsonSchema(SearchConversationsArgsSchema)
inputSchema: zodToJsonSchema(SearchConversationsArgsSchema),
annotations: {
title: 'Search Conversations',
readOnlyHint: true
}
},
{
name: 'search_messages',
description:
'Search historical message records, supports filtering by conversation ID, role and other conditions',
inputSchema: zodToJsonSchema(SearchMessagesArgsSchema)
inputSchema: zodToJsonSchema(SearchMessagesArgsSchema),
annotations: {
title: 'Search Messages',
readOnlyHint: true
}
},
{
name: 'get_conversation_history',
description: 'Get complete history of a specific conversation',
inputSchema: zodToJsonSchema(GetConversationHistoryArgsSchema)
inputSchema: zodToJsonSchema(GetConversationHistoryArgsSchema),
annotations: {
title: 'Get Conversation History',
readOnlyHint: true
}
},
{
name: 'get_conversation_stats',
description: 'Get conversation statistics including totals, recent activity and more',
inputSchema: zodToJsonSchema(GetConversationStatsArgsSchema)
inputSchema: zodToJsonSchema(GetConversationStatsArgsSchema),
annotations: {
title: 'Get Conversation Stats',
readOnlyHint: true
}
},
{
name: 'create_new_tab',
description:
'Creates a new tab. If userInput is provided, it also creates a new chat session and sends the input as the first message, then returns tabId and threadId.',
inputSchema: zodToJsonSchema(CreateNewTabArgsSchema)
inputSchema: zodToJsonSchema(CreateNewTabArgsSchema),
annotations: {
title: 'Create New Tab',
destructiveHint: false
}
}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -282,27 +282,48 @@ export class DeepResearchServer {
{
name: 'start_deep_research',
description: '启动一个新的深度研究会话。返回 session_id 用于后续操作。',
inputSchema: zodToJsonSchema(StartDeepResearchArgsSchema)
inputSchema: zodToJsonSchema(StartDeepResearchArgsSchema),
annotations: {
title: 'Start Deep Research',
destructiveHint: false
}
},
{
name: 'execute_single_web_search',
description: '在研究会话内执行一次网页搜索。',
inputSchema: zodToJsonSchema(SingleWebSearchArgsSchema)
inputSchema: zodToJsonSchema(SingleWebSearchArgsSchema),
annotations: {
title: 'Execute Web Search',
readOnlyHint: false,
openWorldHint: true
}
},
{
name: 'request_research_data',
description: '请求当前会话中新增的搜索结果和研究背景,供 LLM 反思。',
inputSchema: zodToJsonSchema(RequestResearchDataArgsSchema)
inputSchema: zodToJsonSchema(RequestResearchDataArgsSchema),
annotations: {
title: 'Request Research Data',
readOnlyHint: true
}
},
{
name: 'submit_reflection_results',
description: 'LLM 提交其对研究数据的反思结果(如是否需更多研究、建议查询等)。',
inputSchema: zodToJsonSchema(SubmitReflectionResultsArgsSchema)
inputSchema: zodToJsonSchema(SubmitReflectionResultsArgsSchema),
annotations: {
title: 'Submit Reflection Results',
destructiveHint: false
}
},
{
name: 'generate_final_answer',
description: '根据累积研究生成最终答案,并清理会话数据。',
inputSchema: zodToJsonSchema(GenerateFinalAnswerArgsSchema)
inputSchema: zodToJsonSchema(GenerateFinalAnswerArgsSchema),
annotations: {
title: 'Generate Final Answer',
destructiveHint: true
}
}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,12 @@ export class DifyKnowledgeServer {
return {
name: `dify_knowledge_search${suffix}`,
description: config.description,
inputSchema: zodToJsonSchema(DifyKnowledgeSearchArgsSchema)
inputSchema: zodToJsonSchema(DifyKnowledgeSearchArgsSchema),
annotations: {
title: 'Dify Knowledge Search',
readOnlyHint: true,
openWorldHint: true
}
}
})

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,12 @@ export class FastGptKnowledgeServer {
return {
name: `fastgpt_knowledge_search${suffix}`,
description: config.description,
inputSchema: zodToJsonSchema(FastGptKnowledgeSearchArgsSchema)
inputSchema: zodToJsonSchema(FastGptKnowledgeSearchArgsSchema),
annotations: {
title: 'FastGPT Knowledge Search',
readOnlyHint: true,
openWorldHint: true
}
}
})
return { tools }
Expand Down
Loading