Skip to content

ADK 的 Linear MCP 工具

Supported in ADKPythonTypeScript

Linear MCP 服务器 将你的 ADK 智能体连接到 Linear,这是一个专为规划和构建产品而设计的工具。此集成使你的智能体能够管理问题、跟踪项目周期,并使用自然语言自动化开发工作流程。

使用场景

  • 简化问题管理:使用自然语言创建、更新和组织问题。让你的智能体处理记录错误、分配任务和更新状态。

  • 跟踪项目和周期:即时了解团队的动力。查询活动周期的状态、检查项目里程碑并检索截止日期。

  • 上下文搜索与总结:快速了解长讨论线程或查找特定项目规范。你的智能体可以搜索文档并总结复杂问题。

前置条件

与智能体一起使用

from google.adk.agents import Agent
from google.adk.tools.mcp_tool import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
from mcp import StdioServerParameters

root_agent = Agent(
    model="gemini-2.5-pro",
    name="linear_agent",
    instruction="Help users manage issues, projects, and cycles in Linear",
    tools=[
        McpToolset(
            connection_params=StdioConnectionParams(
                server_params=StdioServerParameters(
                    command="npx",
                    args=[
                        "-y",
                        "mcp-remote",
                        "https://mcp.linear.app/mcp",
                    ]
                ),
                timeout=30,
            ),
        )
    ],
)

Note

当你首次运行此智能体时,浏览器窗口将自动打开以通过 OAuth 请求访问权限。或者,你可以使用控制台中打印的授权 URL。你必须批准此请求才能允许智能体访问你的 Linear 数据。

from google.adk.agents import Agent
from google.adk.tools.mcp_tool import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPServerParams

LINEAR_API_KEY = "YOUR_LINEAR_API_KEY"

root_agent = Agent(
    model="gemini-2.5-pro",
    name="linear_agent",
    instruction="Help users manage issues, projects, and cycles in Linear",
    tools=[
        McpToolset(
            connection_params=StreamableHTTPServerParams(
                url="https://mcp.linear.app/mcp",
                headers={
                    "Authorization": f"Bearer {LINEAR_API_KEY}",
                },
            ),
        )
    ],
)

Note

此代码示例使用 API 密钥进行身份验证。要改用基于浏览器的 OAuth 身份验证流程,请移除 headers 参数并运行智能体。

import { LlmAgent, MCPToolset } from "@google/adk";

const rootAgent = new LlmAgent({
    model: "gemini-2.5-pro",
    name: "linear_agent",
    instruction: "Help users manage issues, projects, and cycles in Linear",
    tools: [
        new MCPToolset({
            type: "StdioConnectionParams",
            serverParams: {
                command: "npx",
                args: ["-y", "mcp-remote", "https://mcp.linear.app/mcp"],
            },
        }),
    ],
});

export { rootAgent };

Note

当你首次运行此智能体时,浏览器窗口将自动打开以通过 OAuth 请求访问权限。或者,你可以使用控制台中打印的授权 URL。你必须批准此请求才能允许智能体访问你的 Linear 数据。

import { LlmAgent, MCPToolset } from "@google/adk";

const LINEAR_API_KEY = "YOUR_LINEAR_API_KEY";

const rootAgent = new LlmAgent({
    model: "gemini-2.5-pro",
    name: "linear_agent",
    instruction: "Help users manage issues, projects, and cycles in Linear",
    tools: [
        new MCPToolset({
            type: "StreamableHTTPConnectionParams",
            url: "https://mcp.linear.app/mcp",
            header: {
                Authorization: `Bearer ${LINEAR_API_KEY}`,
            },
        }),
    ],
});

export { rootAgent };

Note

此代码示例使用 API 密钥进行身份验证。要改用基于浏览器的 OAuth 身份验证流程,请移除 header 属性并运行智能体。

可用工具

工具 描述
list_comments 列出问题上的评论
create_comment 在问题上创建评论
list_cycles 列出项目中的周期
get_document 获取文档
list_documents 列出文档
get_issue 获取问题
list_issues 列出问题
create_issue 创建问题
update_issue 更新问题
list_issue_statuses 列出问题状态
get_issue_status 获取问题状态
list_issue_labels 列出问题标签
create_issue_label 创建问题标签
list_projects 列出项目
get_project 获取项目
create_project 创建项目
update_project 更新项目
list_project_labels 列出项目标签
list_teams 列出团队
get_team 获取团队
list_users 列出用户
get_user 获取用户
search_documentation 搜索文档

额外资源