All-in-One Dev

All-in-One Dev

一体化模型上下文协议: qdrant, Google 套件(Gmail、日历等), Jira, GitLab, 命令行界面 (CLI), ...

日历管理
版本控制
开发者工具
访问服务器

README

项目已迁移

该项目已被拆分并迁移到各个独立的仓库。

  • Google Kit: 适用于 Gmail、Google 日历、Google Chat 的工具
  • RAG Kit: 适用于 RAG、Memory 的工具
  • Dev Kit: 适用于开发人员的工具,jira, confluence, gitlab, github, ...
  • Fetch Kit: 适用于 fetch, scrape, ... 的工具
  • Research Kit: 适用于研究、学术、推理的工具,...

MyMCP 服务器

smithery badge 一个强大的模型上下文协议 (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 Cloud Bot Chat。请让任何 LLM 模型为您创建这些。

启用工具

环境变量中有一个隐藏变量 ENABLE_TOOLS。 它是要启用的工具组的逗号分隔列表。 如果未设置,将启用所有工具。 将其留空以启用所有工具。

以下是工具组的列表:

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

可用工具

calendar_create_event

在 Google 日历中创建一个新事件

参数:

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

calendar_list_events

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

参数:

  • time_min (String): 搜索的开始时间,采用 RFC3339 格式(默认:现在)
  • time_max (String): 搜索的结束时间,采用 RFC3339 格式(默认:从现在起 1 周)
  • max_results (Number): 要返回的最大事件数(默认:10)

calendar_update_event

更新 Google 日历中的现有事件

参数:

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

calendar_respond_to_event

回复 Google 日历中的事件邀请

参数:

  • event_id (String) (必需): 要回复的事件的 ID
  • response (String) (必需): 您的回复(accepted、declined 或 tentative)

confluence_search

搜索 Confluence

参数:

  • query (String) (必需): Atlassian Confluence 查询语言 (CQL)

confluence_get_page

获取 Confluence 页面内容

参数:

  • page_id (String) (必需): Confluence 页面 ID

confluence_create_page

创建一个新的 Confluence 页面

参数:

  • space_key (String) (必需): 将在其中创建页面的空间的键
  • title (String) (必需): 页面标题
  • content (String) (必需): 页面内容的存储格式 (XHTML)
  • parent_id (String): 父页面的 ID(可选)

confluence_update_page

更新现有的 Confluence 页面

参数:

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

deepseek_reasoning

使用 Deepseek 的 AI 功能进行高级推理引擎,用于多步骤问题解决、批判性分析和战略决策支持

参数:

  • question (String) (必需): 需要深入分析和推理的结构化查询或问题陈述
  • context (String) (必需): 定义 MCP 生态系统中查询的操作上下文和目的
  • knowledge (String): 为 MCP 感知推理提供相关的聊天记录、知识库条目和结构化数据上下文

get_web_content

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

参数:

  • url (String) (必需): 要从中获取内容的完整 HTTP/HTTPS URL(例如,https://example.com)

gchat_list_spaces

列出所有可用的 Google Chat 空间/聊天室

gchat_send_message

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

参数:

  • space_name (String) (必需): 要向其发送消息的空间的名称
  • message (String) (必需): 要发送的文本消息

ai_web_search

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

参数:

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

gitlab_list_projects

列出 GitLab 项目

参数:

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

gitlab_get_project

获取 GitLab 项目详细信息

参数:

  • project_path (String) (必需): 项目/仓库路径

gitlab_list_mrs

列出合并请求

参数:

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

gitlab_get_mr_details

获取合并请求详细信息

参数:

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

gitlab_create_MR_note

在合并请求上创建注释

参数:

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

gitlab_get_file_content

从 GitLab 存储库获取文件内容

参数:

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

gitlab_list_pipelines

列出 GitLab 项目的管道

参数:

  • project_path (String) (必需): 项目/仓库路径
  • status (String) (默认: all): 管道状态 (running/pending/success/failed/canceled/skipped/all)

gitlab_list_commits

列出 GitLab 项目中某个日期范围内的提交

参数:

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

gitlab_get_commit_details

获取提交的详细信息

参数:

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

gitlab_list_user_events

列出某个日期范围内的 GitLab 用户事件

参数:

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

gitlab_list_group_users

列出 GitLab 组中的所有用户

参数:

  • group_id (String) (必需): GitLab 组 ID

gitlab_create_mr

创建一个新的合并请求

参数:

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

gmail_search

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

参数:

  • query (String) (必需): Gmail 搜索查询。 遵循 Gmail 的搜索语法

gmail_move_to_spam

按消息 ID 将特定电子邮件移动到 Gmail 中的垃圾邮件文件夹

参数:

  • message_ids (String) (必需): 要移动到垃圾邮件的邮件 ID 的逗号分隔列表

gmail_create_filter

使用指定的条件和操作创建 Gmail 过滤器

参数:

  • from (String): 过滤来自此发件人的电子邮件
  • to (String): 过滤发送给此收件人的电子邮件
  • subject (String): 过滤具有此主题的电子邮件
  • query (String): 其他搜索查询条件
  • add_label (Boolean): 将标签添加到匹配的消息
  • label_name (String): 要添加的标签的名称(如果 add_label 为 true,则为必需)
  • mark_important (Boolean): 将匹配的消息标记为重要
  • mark_read (Boolean): 将匹配的消息标记为已读
  • archive (Boolean): 存档匹配的消息

gmail_list_filters

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

gmail_list_labels

列出帐户中的所有 Gmail 标签

gmail_delete_filter

按 ID 删除 Gmail 过滤器

参数:

  • filter_id (String) (必需): 要删除的过滤器的 ID

gmail_delete_label

按 ID 删除 Gmail 标签

参数:

  • label_id (String) (必需): 要删除的标签的 ID

jira_get_issue

检索有关特定 Jira 问题的详细信息,包括其状态、受让人、描述、子任务和可用转换

参数:

  • issue_key (String) (必需): Jira 问题的唯一标识符(例如,KP-2、PROJ-123)

jira_search_issue

使用 JQL(Jira 查询语言)搜索 Jira 问题。 返回匹配问题的关键详细信息,如摘要、状态、受让人和优先级

参数:

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

jira_list_sprints

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

参数:

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

jira_create_issue

使用指定的详细信息创建新的 Jira 问题。 返回已创建问题的键、ID 和 URL

参数:

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

jira_update_issue

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

参数:

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

jira_list_statuses

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

参数:

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

jira_transition_issue

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

参数:

  • issue_key (String) (必需): 要转换的问题(例如,KP-123)
  • transition_id (String) (必需): 来自可用转换列表的转换 ID
  • comment (String): 要添加到转换的可选注释

RAG_memory_index_content

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

参数:

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

RAG_memory_index_file

将本地文件索引到内存中

参数:

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

RAG_memory_create_collection

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

参数:

  • collection (String) (必需): 内存集合名称

RAG_memory_delete_collection

删除内存中的向量集合

参数:

  • collection (String) (必需): 内存集合名称

RAG_memory_list_collections

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

RAG_memory_search

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

参数:

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

RAG_memory_delete_index_by_filepath

按 filePath 删除向量索引

参数:

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

execute_comand_line_script

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

参数:

  • content (String) (必需):
  • interpreter (String) (默认: /bin/sh): 解释器二进制文件的路径(例如 /bin/sh、/bin/bash、/usr/bin/python、cmd.exe)。 根据允许列表进行验证以确保安全
  • working_dir (String): 执行目录路径(默认:用户主目录)。 经过验证以防止未经授权访问系统位置

web_search

使用 Brave Search API 搜索网络

参数:

  • query (String) (必需): 要搜索的查询(最多 400 个字符,50 个单词)
  • count (Number) (默认: 5): 结果数 (1-20, 默认 5)
  • country (String) (默认: 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 (String) (必需): 您当前的思考步骤
  • nextThoughtNeeded (Boolean) (必需): 是否需要另一个思考步骤
  • thoughtNumber (Number) (必需): 当前思考编号
  • totalThoughts (Number) (必需): 估计需要的总思考次数
  • isRevision (Boolean): 这是否修改了先前的想法
  • revisesThought (Number): 正在重新考虑哪个想法
  • branchFromThought (Number): 分支点思考编号
  • branchId (String): 分支标识符
  • needsMoreThoughts (Boolean): 是否需要更多想法

tool_manager

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

参数:

  • action (String) (必需): 要执行的操作:list、enable、disable
  • tool_name (String): 要启用/禁用的工具名称

tool_use_plan

Tạo kế hoạch sử dụng các công cụ đang kích hoạt để giải quyết yêu cầu

参数:

  • request (String) (必需): Yêu cầu cần lập kế hoạch
  • context (String) (必需): Ngữ cảnh liên quan đến yêu cầu

youtube_transcript

获取 YouTube 视频文字记录

参数:

  • video_id (String) (必需): YouTube 视频 ID

youtube_update_video

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

参数:

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

youtube_get_video_details

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

参数:

  • video_id (String) (必需): 视频的 ID

youtube_list_videos

列出用户管理的 YouTube 视频

参数:

  • channel_id (String) (必需): 要列出视频的频道的 ID
  • max_results (Number) (必需): 要返回的最大视频数

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
MCP Package Docs Server

MCP Package Docs Server

促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
google-calendar-mcp

google-calendar-mcp

让大型语言模型读取和管理 Google 日历事件。

精选
本地
TypeScript
Gitingest-MCP

Gitingest-MCP

一个用于 gitingest 的 MCP 服务器。它允许像 Claude Desktop、Cursor、Cline 等 MCP 客户端快速提取关于 Github 仓库的信息,包括仓库摘要、项目目录结构、文件内容等。

精选
本地
Python
mermaid-mcp-server

mermaid-mcp-server

一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。

精选
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

精选
TypeScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript