多合一模型协议

一体式模型上下文协议: Qdrant、Google套件(Gmail、日历、...)、Jira、GitLab、CLI、...

calendar-managementversion-controldeveloper-tools

814 查看 · 2026-07-07 更新

简介

一体式模型上下文协议:

Qdrant、Google套件(Gmail、日历、...)、Jira、GitLab、CLI、...

简介

一体式模型上下文协议:

Qdrant、Google套件(Gmail、日历、...)、Jira、GitLab、CLI、...

项目已迁移

该项目已被拆分并迁移到单独的仓库中。

  • Google Kit:用于 Gmail、Google 日历、Google Chat 的工具
  • RAG Kit:用于 RAG 和记忆的工具
  • Dev Kit:用于开发者的工具,包括 Jira、Confluence、GitLab、GitHub 等
  • Fetch Kit:用于抓取和爬取的工具
  • Research Kit:用于研究、学术、推理等的工具

MyMCP 服务器

smithery 徽章 一个强大的模型上下文协议(MCP)服务器实现,集成了 GitLab、Jira、Confluence、YouTube 等服务。该服务器提供了由 AI 驱动的搜索功能及各种开发工作流实用工具。

教程

社区

对于社区支持、讨论和更新,请访问我们的论坛 community.aiocean.io

先决条件

  • Go 1.23.2 或更高版本
  • 您想要使用的各项服务所需的 API 密钥和令牌

安装

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 MyMCP 服务器(将引导您完成交互式 CLI 设置):

npx -y @smithery/cli install @nguyenvanduocit/all-in-one-model-context-protocol --client claude

注意:Smithery 将以交互方式提示您输入必需的配置值,并自动处理环境设置

通过 Go 安装

  1. 安装服务器:
go install github.com/nguyenvanduocit/all-in-one-model-context-protocol@latest
  1. 需要手动设置 - 使用您的配置创建一个 .env 文件:
ENABLE_TOOLS= QDRANT_HOST= ATLASSIAN_HOST= ATLASSIAN_EMAIL= GITLAB_HOST= GITLAB_TOKEN= BRAVE_API_KEY= ATLASSIAN_TOKEN= GOOGLE_AI_API_KEY= PROXY_URL= OPENAI_API_KEY= DEEPSEEK_API_KEY= QDRANT_PORT= GOOGLE_TOKEN_FILE= GOOGLE_CREDENTIALS_FILE= QDRANT_API_KEY=
  1. 配置您的 Claude 配置:
{ "mcpServers": { "my_mcp_server": { "command": "all-in-one-model-context-protocol", "args": ["-env", "/path/to/.env"], } } }

密钥

GOOGLE_TOKEN_FILE 用于 Google AI,如 Gemini、Google 搜索、Google 日历等。

GOOGLE_CREDENTIALS_FILE 是高级功能的服务账户,例如 Google Chat。您需要在 Google Cloud Console 中创建一个项目和服务账户。然后还需要为此创建一个 Google 云聊天机器人。可以请任何大型语言模型为您创建这些。

启用工具

环境变量中有一个隐藏变量 ENABLE_TOOLS。它是一个以逗号分隔的工具组列表,用于启用这些工具。如果不设置,则所有工具都将被启用。留空以启用所有工具。

以下是工具组列表:

  • gemini:Gemini 驱动的搜索
  • fetch:抓取工具
  • confluence:Confluence 工具
  • youtube:YouTube 工具
  • jira:Jira 工具
  • gitlab:GitLab 工具
  • script:脚本工具
  • rag:RAG 工具
  • deepseek:Deepseek AI 工具

可用工具

calendar_create_event

在 Google 日历中创建新事件

参数:

  • summary (字符串) (必填): 事件标题
  • description (字符串): 事件描述
  • start_time (字符串) (必填): 事件开始时间,格式为 RFC3339(例如:2023-12-25T09:00:00Z)
  • end_time (字符串) (必填): 事件结束时间,格式为 RFC3339
  • attendees (字符串): 用逗号分隔的参会者电子邮件地址列表

calendar_list_events

列出 Google 日历中的即将发生的事件

参数:

  • time_min (字符串): 搜索开始时间,格式为 RFC3339(默认:现在)
  • time_max (字符串): 搜索结束时间,格式为 RFC3339(默认:从现在起一周后)
  • max_results (数字): 返回的最大事件数量(默认:10)

calendar_update_event

更新 Google 日历中的现有事件

参数:

  • event_id (字符串) (必填): 要更新的事件 ID
  • summary (字符串): 事件的新标题
  • description (字符串): 事件的新描述
  • start_time (字符串): 事件的新开始时间,格式为 RFC3339
  • end_time (字符串): 事件的新结束时间,格式为 RFC3339
  • attendees (字符串): 用逗号分隔的新参会者电子邮件地址列表

calendar_respond_to_event

回应 Google 日历中的事件邀请

参数:

  • event_id (字符串) (必填): 要回应的事件 ID
  • response (字符串) (必填): 您的回应(接受、拒绝或待定)

confluence_search

搜索 Confluence

参数:

  • query (字符串) (必填): Atlassian Confluence 查询语言 (CQL)

confluence_get_page

获取 Confluence 页面内容

参数:

  • page_id (字符串) (必填): Confluence 页面 ID

confluence_create_page

创建新的 Confluence 页面

参数:

  • space_key (字符串) (必填): 将要创建页面的空间键
  • title (字符串) (必填): 页面标题
  • content (字符串) (必填): 页面内容,存储格式为 XHTML
  • parent_id (字符串): 父页面 ID(可选)

confluence_update_page

更新现有的 Confluence 页面

参数:

  • page_id (字符串) (必填): 要更新的页面 ID
  • title (字符串): 页面的新标题(可选)
  • content (字符串): 页面的新内容,存储格式为 XHTML
  • version_number (字符串): 用于乐观锁的版本号(可选)

deepseek_reasoning

使用 Deepseek 的 AI 能力进行多步骤问题解决、关键分析和战略决策支持的高级推理引擎

参数:

  • question (字符串) (必填): 需要深度分析和推理的结构化查询或问题陈述
  • context (字符串) (必填): 定义查询在 MCP 生态系统中的操作上下文和目的
  • knowledge (字符串): 提供相关的聊天历史记录、知识库条目和结构化数据上下文,以支持 MCP 感知的推理

get_web_content

从给定的 HTTP/HTTPS URL 获取内容。此工具允许您从网页、API 或任何可访问的 HTTP 端点检索文本内容。返回原始内容作为文本。

参数:

gchat_list_spaces

列出所有可用的 Google Chat 空间/房间

gchat_send_message

向 Google Chat 空间或直接消息发送消息

参数:

  • space_name (字符串) (必需): 发送消息的空间名称
  • message (字符串) (必需): 要发送的文本消息

ai_web_search

使用 Google AI 搜索进行网络搜索。这是更新实时信息的最佳工具

参数:

  • question (字符串) (必需): 要询问的问题。应该是一个问题
  • context (字符串) (必需): 问题的上下文/目的,有助于 Gemini 更好地理解问题

gitlab_list_projects

列出 GitLab 项目

参数:

  • group_id (字符串) (必需): gitlab 组 ID
  • search (字符串): 可以提供多个术语,用转义空格分隔,可以是 + 或 %20,并且将一起进行 AND 操作。例如:one+two 将匹配子字符串 one 和 two(顺序不限)。

gitlab_get_project

获取 GitLab 项目详情

参数:

  • project_path (字符串) (必需): 项目/仓库路径

gitlab_list_mrs

列出合并请求

参数:

  • project_path (字符串) (必需): 项目/仓库路径
  • state (字符串) (默认: all): MR 状态 (opened/closed/merged)

gitlab_get_mr_details

获取合并请求详情

参数:

  • project_path (字符串) (必需): 项目/仓库路径
  • mr_iid (字符串) (必需): 合并请求 IID

gitlab_create_MR_note

在合并请求上创建备注

参数:

  • project_path (字符串) (必需): 项目/仓库路径
  • mr_iid (字符串) (必需): 合并请求 IID
  • comment (字符串) (必需): 备注文本

gitlab_get_file_content

从 GitLab 仓库获取文件内容

参数:

  • project_path (字符串) (必需): 项目/仓库路径
  • file_path (字符串) (必需): 仓库中的文件路径
  • ref (字符串) (必需): 分支名、标签或提交 SHA

gitlab_list_pipelines

列出 GitLab 项目的流水线

参数:

  • project_path (字符串) (必需): 项目/仓库路径
  • status (字符串) (默认: all): 流水线状态 (running/pending/success/failed/canceled/skipped/all)

gitlab_list_commits

在指定日期范围内列出 GitLab 项目中的提交

参数:

  • project_path (字符串) (必需): 项目/仓库路径
  • since (字符串) (必需): 开始日期 (YYYY-MM-DD)
  • until (字符串): 结束日期 (YYYY-MM-DD)。如果未提供,默认为当前日期
  • ref (字符串) (必需): 分支名、标签或提交 SHA

gitlab_get_commit_details

获取提交的详细信息

参数:

  • project_path (字符串) (必需): 项目/仓库路径
  • commit_sha (字符串) (必需): 提交 SHA

gitlab_list_user_events

列出指定日期范围内的 GitLab 用户事件

参数:

  • username (字符串) (必填): GitLab 用户名
  • since (字符串) (必填): 开始日期 (YYYY-MM-DD)
  • until (字符串): 结束日期 (YYYY-MM-DD)。如果未提供,默认为当前日期

gitlab_list_group_users

列出 GitLab 组中的所有用户

参数:

  • group_id (字符串) (必填): GitLab 组 ID

gitlab_create_mr

创建一个新的合并请求

参数:

  • project_path (字符串) (必填): 项目/仓库路径
  • source_branch (字符串) (必填): 源分支名称
  • target_branch (字符串) (必填): 目标分支名称
  • title (字符串) (必填): 合并请求标题
  • description (字符串): 合并请求描述

gmail_search

使用 Gmail 的搜索语法在 Gmail 中搜索邮件

参数:

  • query (字符串) (必填): Gmail 搜索查询。遵循 Gmail 的搜索语法

gmail_move_to_spam

通过邮件 ID 将特定邮件移动到垃圾邮件文件夹

参数:

  • message_ids (字符串) (必填): 要移动到垃圾邮件的邮件 ID 列表,用逗号分隔

gmail_create_filter

创建具有指定条件和操作的 Gmail 过滤器

参数:

  • from (字符串): 从该发件人过滤邮件
  • to (字符串): 过滤发送给该收件人的邮件
  • subject (字符串): 过滤主题包含该内容的邮件
  • query (字符串): 额外的搜索查询条件
  • add_label (布尔值): 为匹配的消息添加标签
  • label_name (字符串): 要添加的标签名称(如果 add_label 为 true,则必需)
  • mark_important (布尔值): 将匹配的消息标记为重要
  • mark_read (布尔值): 将匹配的消息标记为已读
  • archive (布尔值): 归档匹配的消息

gmail_list_filters

列出账户中的所有 Gmail 过滤器

gmail_list_labels

列出账户中的所有 Gmail 标签

gmail_delete_filter

通过其 ID 删除 Gmail 过滤器

参数:

  • filter_id (字符串) (必填): 要删除的过滤器的 ID

gmail_delete_label

通过其 ID 删除 Gmail 标签

参数:

  • label_id (字符串) (必填): 要删除的标签的 ID

jira_get_issue

检索关于特定 Jira 问题的详细信息,包括状态、指派者、描述、子任务和可用的转换

参数:

  • issue_key (字符串) (必填): Jira 问题的唯一标识符(例如,KP-2, PROJ-123)

jira_search_issue

使用 JQL(Jira 查询语言)搜索 Jira 问题。返回与之匹配的问题的关键细节,如摘要、状态、指派者和优先级

参数:

  • jql (字符串) (必填): JQL 查询字符串(例如,'project = KP AND status = "In Progress"')

jira_list_sprints

列出特定 Jira 看板的所有活动和未来的冲刺,包括冲刺 ID、名称、状态和日期

参数:

  • board_id (字符串) (必填): Jira 看板的数字 ID(可以在看板 URL 中找到)

jira_create_issue

创建一个具有指定详情的新 Jira 问题。返回创建的问题的键、ID 和 URL

参数:

  • project_key (字符串) (必需): 将要创建问题的项目标识符(例如,KP, PROJ)
  • summary (字符串) (必需): 问题的简短标题或头条
  • description (字符串) (必需): 问题的详细说明
  • issue_type (字符串) (必需): 要创建的问题类型(常见类型:Bug, Task, Story, Epic)

jira_update_issue

修改现有 Jira 问题的详细信息。支持部分更新 - 只有指定的字段会被更改

参数:

  • issue_key (字符串) (必需): 要更新的问题的唯一标识符(例如,KP-2)
  • summary (字符串): 问题的新标题(可选)
  • description (字符串): 问题的新描述(可选)

jira_list_statuses

检索特定 Jira 项目中所有可用的问题状态 ID 及其名称

参数:

  • project_key (字符串) (必需): 项目标识符(例如,KP, PROJ)

jira_transition_issue

使用有效的转换 ID 通过其工作流转换一个问题。从 jira_get_issue 获取可用的转换

参数:

  • issue_key (字符串) (必需): 要转换的问题(例如,KP-123)
  • transition_id (字符串) (必需): 来自可用转换列表的转换 ID
  • comment (字符串): 随转换添加的可选评论

RAG_memory_index_content

将内容索引到内存中,可以插入或更新

参数:

  • collection (字符串) (必需): 内存集合名称
  • filePath (字符串) (必需): 内容文件路径
  • payload (字符串) (必需): 纯文本负载

RAG_memory_index_file

将本地文件索引到内存中

参数:

  • collection (字符串) (必需): 内存集合名称
  • filePath (字符串) (必需): 要索引的本地文件路径

RAG_memory_create_collection

在内存中创建一个新的向量集合

参数:

  • collection (字符串) (必需): 内存集合名称

RAG_memory_delete_collection

删除内存中的向量集合

参数:

  • collection (字符串) (必需): 内存集合名称

RAG_memory_list_collections

列出内存中的所有向量集合

RAG_memory_search

根据查询在集合中搜索内存

参数:

  • collection (字符串) (必需): 内存集合名称
  • query (字符串) (必需): 搜索查询,应为关键词

RAG_memory_delete_index_by_filepath

按 filePath 删除向量索引

参数:

  • collection (字符串) (必需): 内存集合名称
  • filePath (字符串) (必需): 要删除的本地文件路径

execute_comand_line_script

在用户系统上安全地执行命令行脚本,并带有安全限制。具有沙盒执行、超时保护和输出捕获功能。支持跨平台脚本编写,并自动检测环境。

参数:

  • content (字符串) (必需):
  • interpreter (字符串) (默认: /bin/sh): 解释器二进制文件的路径(例如 /bin/sh, /bin/bash, /usr/bin/python, cmd.exe)。为了安全,会验证其是否在允许列表中
  • working_dir (字符串): 执行目录路径 (默认: 用户主目录)。会进行验证以防止未经授权访问系统位置

web_search

使用 Brave Search API 搜索网络

参数:

  • query (字符串) (必需): 要搜索的查询 (最多 400 个字符,50 个词)
  • count (数字) (默认: 5): 结果数量 (1-20,默认 5)
  • country (字符串) (默认: ALL): 国家代码

sequentialthinking

`一个用于通过思考动态和反思性解决问题的详细工具。 该工具通过一种可以适应和演化的灵活思维过程来帮助分析问题。 每个想法都可以基于、质疑或修改先前的见解,随着理解的加深。

何时使用此工具:

  • 将复杂问题分解为步骤
  • 规划和设计,留有修改余地
  • 可能需要修正方向的分析
  • 初始时可能不完全清楚范围的问题
  • 需要多步骤解决方案的问题
  • 需要在多个步骤中保持上下文的任务
  • 需要过滤掉无关信息的情况

主要特点:

  • 您可以在进展过程中调整 total_thoughts 的增减
  • 您可以质疑或修改先前的想法
  • 即使达到了看似终点的地方,您也可以添加更多的想法
  • 您可以表达不确定性并探索替代方法
  • 不是每个想法都需要线性构建 - 您可以分支或回溯
  • 生成解决方案假设
  • 基于思维链步骤验证假设
  • 重复此过程直到满意
  • 提供正确答案

参数说明:

  • thought: 您当前的思考步骤,可以包括:
  • 常规分析步骤
  • 修改先前的想法
  • 对先前决定的质疑
  • 关于需要更多分析的领悟
  • 方法的改变
  • 假设生成
  • 假设验证
  • next_thought_needed: 如果即使在看似终点的地方也需要更多思考,则为 True
  • thought_number: 当前序列中的编号 (如果需要,可以超过初始总数)
  • total_thoughts: 当前估计所需的想法数量 (可以根据需要上调或下调)
  • is_revision: 一个布尔值,表示此想法是否修改了先前的思考
  • revises_thought: 如果 is_revision 为 true,则正在重新考虑哪个想法编号
  • branch_from_thought: 如果是分支,则分支点是哪个想法编号
  • branch_id: 当前分支的标识符(如果有)
  • needs_more_thoughts: 如果到达终点但意识到还需要更多想法

你应该:

  1. 从一个初步的估计开始,但要准备好进行调整
  2. 不要犹豫去质疑或修改之前的思考
  3. 如果需要,即使在“最后”也可以添加更多的想法
  4. 当存在不确定性时表达出来
  5. 标记出修正了先前思维或开辟新路径的想法
  6. 忽略与当前步骤无关的信息
  7. 在适当的时候生成解决方案假设
  8. 根据思维链步骤验证假设
  9. 重复这个过程直到对解决方案满意
  10. 最终输出一个理想的正确答案
  11. 只有当真正完成且达到满意的答案时才将 next_thought_needed 设置为 false

参数:

  • thought (字符串)(必需):您当前的思考步骤
  • nextThoughtNeeded (布尔值)(必需):是否需要另一个思考步骤
  • thoughtNumber (数字)(必需):当前思考编号
  • totalThoughts (数字)(必需):预计总共需要的思考次数
  • isRevision (布尔值):这是否修正了以前的思考
  • revisesThought (数字):正在重新考虑哪一个思考
  • branchFromThought (数字):分支点思考编号
  • branchId (字符串):分支标识符
  • needsMoreThoughts (布尔值):如果需要更多的思考

tool_manager

管理MCP工具 - 启用或禁用工具

参数:

  • action (字符串)(必需):执行的操作:列表、启用、禁用
  • tool_name (字符串):要启用/禁用的工具名称

tool_use_plan

创建使用已激活工具解决请求的计划

参数:

  • request (字符串)(必需):需要规划的请求
  • context (字符串)(必需):与请求相关的上下文

youtube_transcript

获取YouTube视频字幕

参数:

  • video_id (字符串)(必需):YouTube视频ID

youtube_update_video

在YouTube上更新视频标题和描述

参数:

  • video_id (字符串)(必需):要更新的视频ID
  • title (字符串)(必需):视频的新标题
  • description (字符串)(必需):视频的新描述
  • keywords (字符串)(必需):以逗号分隔的视频关键词列表
  • category (字符串)(必需):视频的类别ID。更多信息请参见 https://developers.google.com/youtube/v3/docs/videoCategories/list。

youtube_get_video_details

获取特定视频的详细信息(标题、描述等)

参数:

  • video_id (字符串)(必需):视频ID

youtube_list_videos

列出由用户管理的YouTube视频

参数:

  • channel_id (字符串)(必需):要列出视频的频道ID
  • max_results (数字)(必需):返回的最大视频数量

来源