返回 文章 build CMS 文章

Mistral Studio 发布连接器:内置与自定义 MCP 助力企业级 AI 应用开发

Mistral Studio 连接器将企业系统集成从代码中解耦,通过 MCP 协议实现可复用、可治理的工具调用。

Mistral AI连接器MCPAI 应用开发
成长分 / 100 77 综合收获、行动、留存与影响

Mistral Studio 发布连接器:内置与自定义 MCP 助力企业级 AI 应用开发
为什么值得读了解如何通过连接器将 CRM、知识库等企业系统集成到 AI 应用中,避免重复构建集成层。

掌握直接工具调用和人在回路审批等新功能,提升开发效率与安全性。

关键洞察
  1. 连接器通过 MCP 协议将集成打包为可复用实体,解决团队重复实现集成、安全风险和缺乏可观测性的问题。
  2. 所有内置连接器和自定义 MCP 均可通过 API/SDK 使用,并与所有模型和智能体调用配合。
  3. 直接工具调用允许开发者精确控制工具调用方式和时机,绕过身份验证障碍,便于测试和迭代。
转成行动

深入阅读

正文与原文对照

原文保真覆盖:全文原文字符:7412

今天,我们在 Studio 中发布 Connectors(连接器),帮助开发者构建基于企业数据、高度定制的 AI 应用。所有内置连接器以及自定义 MCP,现在都可通过 API/SDK 使用,并可用于所有模型和智能体调用。

我们还推出了直接工具调用,让开发者能够精确控制工具的调用方式和时机,在测试和迭代时不再受认证障碍的阻碍。此外,你现在还可以实现人工介入(human-in-the-loop)审批流程,在工具执行前进行安全的审查与确认,兼顾灵活性与治理。

  • 通过编程方式创建、修改、列出和删除连接器,也可以列出其工具并直接运行它们。
  • 所有连接器都集中注册,因此可在 Mistral 的各个应用中使用:Le Chat 和 AI Studio(Vibe 即将支持)。
  • 通过 Conversation API、Completions API 和 Agent SDK 使用,可以支持复杂的工作流,并与 CRM、知识库&生产力工具等企业系统集成。

集成存在于平台中,而不是你的代码里

构建企业级 AI 智能体正变得越来越容易。更难的是它周边的一切:找到正确的 API 文档、编写和维护工具函数、构建集成、设置 OAuth、处理令牌刷新,以及调试分页失效之类的边缘情况。

正因如此,团队不断重复构建同样的集成层。即使在同一家公司内部,类似的集成也常常以随意的代码被实现多次,导致安全风险、缺乏流量可观测性以及重复劳动。

连接器通过 MCP 协议,把一个集成打包成单一、可复用的实体,从而解决这个问题。

my_connector = client.beta.connectors.create(
    name="salesforce-crm",
    description="Salesforce CRM — accounts, contacts, opportunities",
    server="https://your-mcp-server.internal/salesforce",
    visibility="shared_workspace",
    oauth_config={
        "client_id": os.environ["SALESFORCE_CLIENT_ID"],
        "scopes": ["read_accounts", "read_contacts"],
        "redirect_uri": "https://your-app.internal/oauth/callback",
    },
)

注册之后,自定义 MCP 连接器即可在 Studio 中被发现、治理&监控,并成为任何对话、智能体或工作流的原生工具——无需重写集成逻辑,无需重新实现认证,也无需在各团队之间重复。一次设置,随时随地运行。将连接器附加到任何对话只需一行:

response = client.beta.conversations.start_async(
    model="mistral-medium-latest",
    inputs="Which enterprise accounts renewed last quarter?",
    tools=[{"type": "connector", "connector_id": "salesforce-crm"}],
)

可运行的黄金路径

让我们构建一个用于多步骤工作流的智能体,它借助与 GitHub、公开仓库内容&文档以及网络实时数据的安全连接,跨多个来源进行推理。该智能体可以理解意图、分析代码并提出修改建议,也可以处理生成测试、重构、找出低效之处、缺陷或漏洞等其他常见用例。

前提条件

pip install mistralai
export MISTRAL_API_KEY="your-api-key"
client = Mistral(api_key=os.environ["MISTRAL_API_KEY"])

1 - 为公开的远程 MCP 创建连接器

为了查询和探索代码库,我们将使用 DeepWiki 远程服务器,它为 API/工具端点提供了 MCP 接口。这样,智能体无需手动抓取文档或加载整个仓库,就能探索内容和文档。

my_custom_mcp = client.beta.connectors.create_async(
    name="my_deepwiki",
    description="DeepWiki MCP for code repository exploration",
    server="https://mcp.deepwiki.com/mcp",
    visibility="shared_workspace",
)

只需注册一次 MCP 服务器,用户就可以在对话、智能体或直接工具调用中复用它。这是任何自定义 MCP 流程的入口。关于如何管理内置和自定义连接器的完整示例,请参阅cookbook:Connectors Management。

2 - 创建智能体

该智能体还应能够连接 GitHub 和网络;用户无需创建这些连接器,因为它们已内置于 Mistral。

请注意,一个连接器可能暴露几十个工具。如果用户想排除可能造成破坏的操作,可以用 tool_configuration 控制工具的可用性,而无需修改连接器本身。更多细节请参阅 Cookbook:Using Connectors in Conversations。

my_agent = client.beta.agents.create_async(
    name="deepwiki_agent",
    description="Agent for code repository exploration",
    model="mistral-small-latest",
    instructions="""\ You are an Open-Source Software Auditor. \

当被要求审查某个库或仓库时,你必须完成以下所有任务:

## Final verdict
Based on all three analyses, give a clear recommendation:
- **SAFE TO ADOPT** — no major concerns
- **ADOPT WITH CAUTION** — some concerns to be aware of
- **AVOID** — significant risks identified

Always be thorough and cite your sources.\
""",
    tools=[
        {"type": "web_search"},
        {
            "type": "connector",
            "connector_id": "github",
            "tool_configuration": {"exclude": ["delete_file"]},
        },
        {"type": "connector", "connector_id": "my_custom_mcp.name"},
    ],
)

response = await client.beta.conversations.start_async(
    agent_id=my_agent.id,
    inputs=[
        {
            "role": "user",
            "content": "Please perform full audit on repo pallets/flask",
        }
    ],
)

直接工具调用

并非每个工作流都需要由模型决定何时、如何调用工具。为了获得更具确定性的体验,用户现在可以直接调用连接器。

result = await client.beta.connectors.call_tool_async(
        connector_id="my_deepwiki",
        tool_name="read_wiki_structure",
        arguments={"repoName": "sqlite/sqlite"},
    )
 print(f"Tool output:\n{result.content}")

这对调试和流水线式自动化尤其有用,因为它能减少歧义。完整模式请参阅cookbook:Connector tool calling。

当需要人工介入时

有些操作未经明确批准不应执行。requires_confirmation 会在工具运行前暂停执行,并把控制权交还给你的应用:

{
   "type": "connector",
   "connector_id": "gmail",
   "tool_configuration": {
       "include": ["gmail_search"],
       "requires_confirmation": ["gmail_search"]
   }
}

模型提出建议,由用户应用决定是否继续。AI 判断与人类判断之间的边界是明确的,并且写在代码里。关于完整的审批流程,包括待处理的工具调用和恢复步骤,请参阅cookbook:Human-in-the-loop Confirmation。

开始构建

你现在可以在 Studio 中使用 Connectors,目前处于公开预览阶段。立即访问 Studio 控制台开始构建:https://console.mistral.ai/build/connectors