谷歌随OpenAI强势入局,劈柴4天闪电部署Gemini+MCP!

图片

  新智元报道  

  编辑:NJ

  3 月 31 日,谷歌 CEO 劈柴哥抛出一句「To MCP or not to MCP」,引发热议。4 天后,Gemini 更新 API 文档,正式宣布接入 MCP。至此,OpenAI、谷歌、Anthropic 等 AI 巨头全部投入「Agent 协议」MCP 的怀抱。

  3 月 31 日,谷歌 CEO Sundar Pichai(劈柴哥)发出灵魂一问:

To MCP or not to MCP, that's the question. (MCP 还是不 MCP,这是个问题。)

  MCP 的持续火爆,加上 OpenAI 在 27 日官宣对 MCP 的支持,终究还是让谷歌坐不住了。

  劈柴哥让网友们给拿一拿主意。

图片

  OpenAI 的工程师 Steven Heidel 很快回复道:「我们已经做了,现在到你们了。」

图片

  劈柴在线征求意见还不到 4 天,谷歌 DeepMind 的高级 AI 关系工程师 Philipp Schmid,在X上宣布在 Gemini  API 文档中添加了使用 MCP 的示例。

图片

  现在可以直接将 MCP 服务器与 Gemini 模型搭配使用。

  谷歌官宣支持 MCP

  模型上下文协议 (MCP) 是开放标准,用于连接 AI 应用与外部工具、数据源和系统。

  MCP 为模型提供了一个通用协议,以便 AI 模型访问上下文,例如函数(工具)、数据源(资源)或预定义的提示。

  可以使用工具调用功能将模型与 MCP 服务器搭配使用。

  如下示例,了解如何将本地 MCP 服务器与 Gemini、Python SDK 和 mcp SDK 搭配使用。

import asyncioimport os from datetime 
import datetime from google 
import genai from google.genai 
import types from mcp 
import ClientSession, StdioServerParameters from mcp.client.stdio
import stdio_client

client = genai.Client (api_key=os.getenv ("GEMINI_API_KEY"))


# Create server parameters for stdio connection
server_params = StdioServerParameters (command="npx",  # Executable
    args=["-y", "@philschmid/weather-mcp"],  # Weather MCP Server
    env=None,  # Optional environment variables
    )

 async def run ():
    async with stdio_client (server_params) as (read, write):
        async with ClientSession (read, write) as session:
            # Prompt to get the weather for the current day in London.
            prompt = f"What is the weather in London in {datetime.now () .strftime ('%Y-%m-%d')}?"
            # Initialize the connection between client and server
            await session.initialize ()
            # Get tools from MCP session and convert to Gemini Tool objects
            mcp_tools = await session.list_tools ()
            tools = [
                types.Tool (
                    function_declarations=[
                        {
                            "name": tool.name,
                            "description": tool.description,
                            "parameters": {
                                k: v
                                for k, v in tool.inputSchema.items ()
                                if k not in ["additionalProperties", "$schema"]
                            },
                        }
                    ]
                )
                for tool in mcp_tools.tools
            ]
            # Send request to the model with MCP function declarations
            response = client.models.generate_content (
                model="gemini-2.0-flash",
                contents=prompt,
                config=types.GenerateContentConfig (
                    temperature=0,
                    tools=tools,
                ),
            )
            # Check for a function call
            if response.candidates[0].content.parts[0].function_call:
                function_call = response.candidates[0].content.parts[0].function_call
                print (function_call)
                # Call the MCP server with the predicted tool
                result = await session.call_tool (
                    function_call.name, arguments=function_call.args
                )
                print (result.content[0].text)
                # Continue as shown in step 4 of "How Function Calling Works"
                # and create a user friendly response
            else:
                print ("No function call found in the response.")
                print (response.text)
# Start the asyncio event loop and run the main function
asyncio.run (run ())

  但是,大如谷歌这样的科技巨头,做出任何决策都没那么容易。

  几天前,Steven 刚刚使用现在爆火的「吉卜力」风格图片解释了一下什么是 MCP。

  图片中展示了一个基于 MCP 协议的分布式系统架构。

  简单的说,MCP 协议可以使 AI 根据需求从不同的软件或者网页上获取到数据或者服务。

图片

  善于整活的网友还把劈柴哥的这个帖子也整成了「吉卜力」风。

  紧跟潮流。

图片

  紧跟潮流的还有网友 Adam Holt,他用漫画回复了劈柴哥。

  漫画中,劈柴哥与 Anthropic(MCP 协议的推出者)CEO Dario Amodei 微笑握手,奥特曼则站在中间,望着劈柴哥。

  「为开发者而做。」Adam 写道。

图片

  网友 Jeffrey Emanuel 还帮劈柴哥分析起了行业形势。

  他表示,考虑到 Anthropic、OpenAI 以及 DeepSeek 全都支持 MCP 协议,如果谷歌还不采用,将会错失应用开发的热潮。

  「并且所有的 Gemini 模型都将不再那么有用。」他写道。

图片

  网友 Kris Hansen 则进一步表示,现在的 MCP 就相当于是 1993 年的 HTTP。

  「更多产品采用这个标准协议将会有助于所有人。」

图片

  综合来看,Kris 将 MCP 比作 1993 年的 HTTP 确实比较合理。

  两者都是其领域的基础协议,处于早期发展阶段,也都具有改变技术格局的潜力。

  方面

  HTTP 0.9 (1993)

  MCP (2025)

  版本

  0. 9,早期版本

  最新版本,2024 年推出

  主要功能

  传输超文本文档,支持 GET 方法

  为 AI 模型提供上下文,连接数据源和工具

  架构

  客户端-服务器,基于 TCP/IP

  客户端-服务器,标准化接口

  复杂性

  非常简单,无头部信息

  更复杂,支持实时双向通信

  采用阶段

  早期,刚刚开始推广

  早期,工具如 Zed 和 Replit 开始集成

  潜在影响

  成为万维网基础,促成网络革命

  可能改变 AI 数据集成方式,增强 AI 应用能力

  当然,在一片支持的评论中也不乏反对的声音。

  网友 Han 就希望谷歌自己推出一个「更强大、更轻量级的 MCP 进化版本」。

图片

  To MCP or not to MCP

  标准化协议对于整个 AI 生态的构建都是至关重要的。

  就像互联网需要 HTTP 协议奠定基础一样,AI 时代同样需要像 MCP 这样的标准来促进互操作性和创新。

  如果谷歌宣布支持 MCP,那么 Gemini 可以作为 MCP 客户端,轻松连接到各种数据源和工具。

  同时,谷歌也可以提供 MCP 服务器,让其他 AI 模型访问其服务,如 Gmail、Google Calendar 和 Google Drive 。

  但是,大如谷歌这样的科技巨头,做出任何决策都没那么容易。

  其中重要的是,依赖外部标准可能带来的风险。

  毕竟,MCP 协议是由谷歌在 AI 领域的对手 Anthropic 推出和主导的。

  谷歌很难影响其长期的发展方向。

  虽说 MCP 协议现在是开源的,但以后怎样谷歌也拿不准。

  毕竟谷歌自己刚把开源的安卓变得封闭起来。

  参考资料:

  https://x.com/sundarpichai/status/1906484930957193255

  https://ai.google.dev/gemini-api/docs/function-calling?example=weather&hl=zh-cn#use_model_content_protocol_mcp

  https://x.com/_philschmid/status/1908155219801694278