Advanced Tool Use & Agent Engineering

Claude on Google Cloud Has No Server Tools: Building Agents Around the Gap

Google's own documentation says Claude partner models support Client tools only. That single sentence dictates your entire agent architecture on Google Cloud.

Claude 3P 101 · Updated July 2026 · Unofficial guide

Anthropic's tool ecosystem splits into two families. Client tools run in your application: Claude returns a tool_use block, your code executes the action, and you send back the result. Server tools — web search, web fetch, code execution, and the MCP connector — run on Anthropic's infrastructure, no execution code required on your side. Google's official documentation for Claude partner models draws a hard line: "Claude models on [the platform] support Client tools, but Server tools are not supported." On Google Cloud (the platform formerly branded Vertex AI), you get the first family, not the second.

What is actually missing

Concretely, four capabilities that agent teams often assume are universal do not exist for Claude on Google Cloud: Anthropic's code execution tool (the server-side Python sandbox), the web fetch tool, the MCP connector (remote MCP servers attached directly to a Messages API call), and Agent Skills, which depend on the code execution container. Managed Agents and programmatic tool calling are likewise unavailable there.

One honest wrinkle: Google's blanket "no server tools" sentence is slightly stricter than Anthropic-side availability data, which records two partial exceptions — a basic web search variant (web_search_20250305 only, without the newer dynamic-filtering version) and the tool search tool are listed as working on the platform. Anthropic's Claude Code documentation for Google Cloud corroborates the second, noting tool search can be enabled there for Sonnet 4.5+ and Opus 4.5+ models. The safe engineering posture: design as if client tools are all you have, and treat those two as bonuses to verify in your own project before depending on them.

The architecture this forces

Everything an agent does on Google Cloud must execute in your runtime. That means you own the tool loop: call the Messages API, watch for stop_reason == "tool_use", execute, return results, repeat. The standard client-side tool types — bash, text editor, memory — are available for Claude on the platform, but the sandbox they run in is yours to build and secure.

from anthropic import AnthropicVertex

client = AnthropicVertex(project_id="my-project", region="global")
response = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    tools=[{"name": "lookup_order", "description": "Fetch an order by ID",
            "input_schema": {"type": "object",
                             "properties": {"order_id": {"type": "string"}},
                             "required": ["order_id"]}}],
    messages=[{"role": "user", "content": "What's the status of order 8912?"}],
)
# If response.stop_reason == "tool_use": run the lookup yourself,
# then send a tool_result back in the next request.

For anything beyond a simple loop, the practical answer is the Claude Agent SDK — Anthropic's documented agent path on all four third-party surfaces. Set CLAUDE_CODE_USE_VERTEX=1 (plus CLOUD_ML_REGION and ANTHROPIC_VERTEX_PROJECT_ID) and the SDK runs the full agent loop in your process, billed through your Google Cloud project. Because the SDK executes everything client-side, it neatly sidesteps the server-tool gap: its built-in WebSearch and WebFetch tools, bash, and file tools run on your machine, and it connects to MCP servers itself — including local command-based servers — rather than relying on the API-side MCP connector. See running the Agent SDK on Google Vertex AI for setup details. One platform-specific note: on this platform the SDK loads MCP tool definitions upfront by default, with tool search opt-in via ENABLE_TOOL_SEARCH=true on supported models.

Rule of thumb: "no MCP connector on Google Cloud" does not mean "no MCP on Google Cloud." The connector is an API-side convenience for remote servers. Any MCP client you run yourself — the Agent SDK, or the base SDK's client-side MCP helpers — works with Claude on any platform, because to the API it is just client tools.

Where Google's agent docs go quiet

Google's Agent Runtime (part of the Gemini Enterprise Agent Platform, formerly Vertex AI Agent Engine) is a managed serverless environment for deploying agents built with ADK, LangChain, LangGraph, AG2, LlamaIndex, and custom frameworks. Its overview documentation does not mention Anthropic or Claude at all — there is no official statement that Claude is supported or unsupported in Agent Runtime. Claude on Google Cloud is documented only as a partner model on the Messages-API surface. If a vendor proposes "Claude agents in Agent Engine," ask them to show you the doc page; as of July 2026 the official record is silent, and silence is not support.

Where to go next

Compare the platform-by-platform tool picture in the MCP connector platform split and the feature matrix; if server tools are non-negotiable, Agent SDK vs. Managed Agents covers the surfaces where they exist.

Sources