Chrome Enterprise Premium MCP Server
OfficialProvides tools for managing Chrome Enterprise Premium resources, including DLP rules, content detectors, connector policies, browser telemetry, and license management, allowing AI agents to inspect and configure Chrome Enterprise environments.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Chrome Enterprise Premium MCP Serverlist all DLP rules and their status"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Chrome Enterprise Premium MCP Server
A Model Context Protocol (MCP) server for Chrome Enterprise Premium (CEP). CEP extends Chrome's built-in security with Data Loss Prevention (DLP), real-time threat protection (phishing and malware scanning), and Context-Aware Access controls. This server exposes CEP's DLP rules, content detectors, connector policies, browser telemetry, and license management as MCP tools, so any MCP-compatible AI agent can inspect and configure a Chrome Enterprise environment.
Prerequisites
Before setting up the MCP server, ensure you have the following:
Node.js & npm: Node.js version
20.0.0or higher installed locally.Google Workspace Account:
Any Workspace edition with a Chrome Enterprise Premium license.
An administrator role in the Admin Console (Super Admin or delegated with Chrome Management and DLP permissions). Standard Workspace accounts (or Google Cloud IAM permissions alone) do not grant access and will return
403 Permission Deniederrors with no indication that a Workspace role is missing.
OAuth App Trust (if required): If your organization restricts third-party app access, a Super Admin must trust the OAuth client in the Admin Console before you can authenticate.
MCP Client: A compatible MCP host application (such as Gemini CLI, Claude Desktop, Cursor, Windsurf, or VS Code).
Quick start
Get up and running in less than 2 minutes using the bundled Google-managed OAuth client. No repository cloning required!
1. Connect your MCP client
The server uses stdio transport; your MCP client launches it as a child process. Depending on your client, connect the server using one of the following methods:
If you are using the Gemini CLI, you can install this repository directly as an extension with a single command. This automatically configures the MCP connection and loads the built-in AI guidance rules:
gemini extensions install https://github.com/google/chrome-enterprise-premium-mcpFor all other MCP-compatible clients (such as Claude Desktop, Cursor, Windsurf, or VSCode), add this configuration block to your client's settings file (e.g., claude_desktop_config.json or ~/.gemini/settings.json):
{
"mcpServers": {
"cep": {
"command": "npx",
"args": ["-y", "@google/chrome-enterprise-premium-mcp@latest"],
"env": { "GCP_STDIO": "true" }
}
}
}2. Query the agent
Restart your MCP client, then ask the agent to perform a check, for example:
"How can you help me use Chrome Enterprise Premium?"
"How do I set up a rule to block uploads of credit card numbers?"
"List my Chrome Enterprise Premium DLP rules."
Authentication: The first time you run a query that calls a tool requiring authentication, the agent will prompt you to sign in.
Desktop: A browser tab will open automatically on Google's consent screen.
Headless/Remote: If you are on SSH, Cloud Shell, or a container, the agent will provide a consent URL. Open it locally, sign in, and paste the redirect URL back to the agent in the chat.
CLI Fallback: If you prefer to authenticate via the terminal, you can run:
npx @google/chrome-enterprise-premium-mcp auth login
Related MCP server: MCP Google Workspace Server
Security & Blast Radius Warning
This server is an administrator-level interface to Chrome Enterprise Premium. When you connect it to an MCP client, you can use natural-language prompts to:
Create and modify DLP rules and content detectors.
Change connector policies.
Force-install browser extensions onto every managed Chrome browser.
Enable Google Cloud APIs on your project.
An attacker who plants hidden instructions in untrusted inputs—mail, documents, scraped pages, ticket bodies—can hijack the connected MCP client through indirect prompt injection. The attacker can then run those tools without your consent.
To reduce the blast radius:
Connect this server only to MCP clients you trust, on data sources you trust.
Treat every document, message, and webpage you put in front of the agent as untrusted. It might contain hidden instructions.
Pay extra attention to mutating tools (
create_*,update_*,enable_*); they have tenant-wide security impact.Use a dedicated, least-privilege admin account when experimenting.
Workspace Scopes & Permissions
The scope set requested during the "Sign in" consent flow maps directly to the underlying Google APIs needed for the server's tools:
Scope | API | Used for |
| OpenID Connect | Identifies the logged-in admin in startup output |
| Reading and writing connector and extension policies | |
| Telemetry version counts | |
| Listing managed browser profiles | |
| Fetching Chrome activity logs | |
| Organizational Unit hierarchy | |
| Customer ID resolution | |
| CEP subscription and per-user license checks | |
| Managing DLP rules and content detectors (CRUD) | |
| Verifying and enabling required Google Cloud APIs |
OAuth App Trust Required: If your organization restricts third-party app access, a Super Admin must trust the OAuth client in the Admin Console before you can authenticate.
Advanced Authentication Options
For production environments, headless systems, or customized configurations, the server supports alternative auth pathways:
Custom OAuth Client: To run under your own Google Cloud project instead of the default managed one (enabling you to manage your own consent screen and credentials), see Use a Custom OAuth Client.
Headless / SSH Sessions: To authenticate on remote hosts or CI runners without a web browser, see Sign In from a Host Without a Browser.
Hosted Deployments: For Cloud Run, Vertex AI Agent Engine, or service-account automation, see the Authentication Setup Matrix.
Configuration
For environment variables and stdio vs. HTTP transport, see
docs/configuration.md.
Available tools and prompts
Prompts
Prompt | Description |
| Health check of the Chrome Enterprise environment (APIs, DLP, connectors, extensions). |
| Rule-by-rule review with tuning, enforcement, and cleanup recommendations. |
| Manually re-injects the expert persona and rules (useful if the agent loses context). |
Tools
The server exposes tools for reading and managing Chrome Enterprise resources:
Discovery: get customer ID, list org units, count browser versions, list customer profiles
Licensing: check CEP subscription status, check per-user license assignment
DLP: list/create DLP rules, list/create detectors (regex, word list, URL list), create default rule sets
Connectors: get connector policy status, enable Chrome Enterprise connectors
Extensions: check SEB extension status, install SEB extension
Security: get Chrome activity logs, check and enable required APIs
Knowledge: retrieve documentation from the built-in Chrome Enterprise Premium knowledge base
Architecture
The codebase has three layers: API clients in lib/api/ (one interface +
real implementation per Google API), MCP tools and prompts in tools/ and
prompts/, and the server entry point in mcp-server.js. Integration tests
redirect the real API clients at an in-process Express fake under
test/helpers/. For the directory layout, design patterns, and how the test
backends are wired, see docs/architecture.md.
Troubleshooting
For known issues with auth, permissions, Node.js setup, and MCP client
integration (including the /mcp reload tip when CEP tools do not show up
right after restart), see
docs/troubleshooting.md.
FAQ
For license requirements, Workspace edition, service-account auth,
experimental features, and other recurring questions, see
docs/faq.md.
Reporting bugs
If something isn't working:
In Gemini CLI, run
/bugto capture session diagnostics. Attach the generated file to your issue.Run
npm run presubmitand paste the output; this lets maintainers tell environmental problems from real code bugs.Describe what you expected vs. what actually happened, including the exact error message.
Contributing
Contributions are welcome! For local development setup, building, testing, and contributor guidelines, please see CONTRIBUTING.md.
Legal
This repository is provided as a reference implementation that customers can explore and adapt under the Apache 2.0 license. It is not an officially supported Google product.
License: Apache License 2.0
Terms of Service: Terms of Service
Privacy Policy: Privacy Policy
Security: Security Policy
Available Tools
25 toolscep_authA
Sign in to Google for the Chrome Enterprise Premium (CEP) MCP server. Before calling this tool, you MUST warn the user that this will open a browser tab or prompt them to sign in, and ask for their confirmation. Use this tool ONLY for the CEP MCP server. The Google Workspace MCP server has its own separate auth tool—do not use this one for that. Requests the CEP scope set: Admin SDK reports, Chrome browser management, Cloud Identity (DLP), Identity, Licensing, Service Usage. Call with no arguments to start the sign-in. If the response sets nextAction to paste-redirect-url, ask the user to paste the URL the browser was redirected to, then call cep_auth again with that string as the redirectUrl argument.
| Name | Required | Description | Default |
|---|---|---|---|
| authMethod | No | The authentication method to use: "auto" (attempts browser, falls back to manual), "browser" (forces opening browser), "manual" (skips browser and directly provides URL for manual copy-paste). | auto |
| redirectUrl | No | The full URL the browser was redirected to after consent (looks like http://127.0.0.1:PORT/?code=...&state=...). Omit to start a fresh sign-in. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| authUrl | No | |
| message | No | |
| expiresAt | No | |
| nextAction | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool opens a browser tab, requires user interaction, and outlines the entire auth flow including the redirect URL step. It also lists the requested scopes. This is transparent for an auth tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a bit lengthy (6 sentences) but each sentence serves a purpose given the complexity of the auth flow. It is front-loaded with the main purpose, then instructions. Could be slightly more concise but appropriately structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers all necessary context: what the tool does, prerequisites (warn user), scopes, how to handle different scenarios (initial call vs. redirect), and exclusion of sibling tool. The output schema exists, so return values are not needed. The description is complete for this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already has descriptions for both parameters. The description adds value by explaining the overall flow and how the parameters fit (e.g., 'Omit to start a fresh sign-in'). It goes beyond mere schema details but the schema already does a good job.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Sign in to Google for the Chrome Enterprise Premium (CEP) MCP server.' It uses a specific verb ('sign in') and resource ('CEP MCP server'), and distinguishes from the sibling auth tool for Google Workspace MCP server.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidelines: warn user, ask confirmation before calling, use only for CEP MCP (not for Google Workspace MCP), call with no arguments to start, and call with redirectUrl after user provides the URL. This covers when and how to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cep_auth_clearA
Clears cached OAuth credentials for the Chrome Enterprise Premium (CEP) MCP server, forcing re-authentication on the next call. Use this tool only for the CEP MCP server; the Google Workspace MCP server has its own separate clear tool.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| cleared | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it clears cached credentials and forces re-authentication. No annotations exist, so the description carries full burden. Slightly less transparent about potential side effects, but adequate for the tool's simplicity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each adding value. Front-loaded with the main action, then context about usage scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Fully sufficient for a zero-parameter tool with clear purpose and usage guidelines. No missing information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so no additional semantic value needed. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (clears cached OAuth credentials), the resource (CEP MCP server), and distinguishes from the sibling workspace tool, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use only for CEP MCP server and mentions the alternative for Google Workspace, providing clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cep_auth_statusA
Reports the current OAuth credential status and cached scopes for the Chrome Enterprise Premium (CEP) MCP server. Use this tool only for the CEP MCP server; the Google Workspace MCP server has its own separate status tool.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must carry the full burden. It reports 'status and cached scopes' but doesn't mention side effects (presumably none), permissions, or output details. With annotations like readOnlyHint absent, a score of 3 is reasonable as it's adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the purpose and usage guidance. No unnecessary words, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter status tool with an output schema, the description adequately covers what it does and when to use it. Minor gap: no mention of whether it's read-only, but the output schema likely fills in return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and 100% coverage, so the baseline is 4. The description adds no parameter info, which is acceptable since none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reports 'current OAuth credential status and cached scopes' for the CEP MCP server, with a specific verb and resource. It also distinguishes from the Google Workspace MCP server's status tool, though not from sibling tools like cep_auth.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance to use only for the CEP MCP server and mentions the Workspace server has its own tool. It doesn't address when to use cep_auth or cep_auth_clear, but those are for different actions (authentication) rather than status checking.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_cep_subscriptionA
Verifies the current Chrome Enterprise Premium (CEP) license assignments for an organization. This is useful for checking the actual protection state of users.
| Name | Required | Description | Default |
|---|---|---|---|
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| isActive | Yes | |
| assignments | No | |
| assignmentCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose whether the tool is read-only or has side effects. It only describes the purpose without behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, no redundant information, and directly conveys the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple parameter and presence of an output schema, the description is mostly complete. Missing behavioral transparency is a minor gap for a verification tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the baseline score is 3. The description does not add extra meaning beyond the schema's parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('verifies') and the resource ('Chrome Enterprise Premium license assignments'), and it distinguishes itself from sibling tools like 'check_user_cep_license' by focusing on organization-wide verification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for checking protection state, but it does not explicitly state when to avoid using it or compare to similar tools like check_user_cep_license.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_seb_extension_statusA
Checks if the Secure Enterprise Browser (SEB) extension is force-installed for a given Organizational Unit. The SEB extension is REQUIRED for advanced Chrome Enterprise Premium features like data masking. If not installed, use 'install_seb_extension' to fix it.
| Name | Required | Description | Default |
|---|---|---|---|
| orgUnitId | Yes | The ID of the organizational unit to check. | |
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| policies | Yes | |
| extensionId | Yes | |
| isInstalled | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It describes a read-only check but does not disclose details like whether it returns only boolean or additional info, or any permissions needed. Still, it adequately implies a safe inspection operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero redundancy. The first sentence clearly states the primary action, the second adds crucial context and next step. Perfectly front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown but reported), the description need not explain return values. It provides purpose, usage context, and a link to a sibling. A slight gap: no mention of error conditions or whether the check is synchronous, but overall sufficient for a simple check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage, so baseline is 3. The description adds minimal value beyond the schema by mentioning 'organizational unit', which maps to 'orgUnitId', but does not elaborate on 'customerId'. No significant enhancement over schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool checks if the SEB extension is force-installed for an organizational unit. The verb 'Checks' plus specific resource ('SEB extension status for given OU') makes the purpose unambiguous and distinguishes it from sibling 'install_seb_extension'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context that SEB is required for advanced features and directs to use 'install_seb_extension' if not installed. This gives a clear recommendation on when to use this tool versus the sibling. However, it does not explicitly state when not to use or compare to other related tools like 'diagnose_environment'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_user_cep_licenseA
Checks if a specific user has a Chrome Enterprise Premium (CEP) license assigned. Use this to verify if an individual user (by email or unique ID) is licensed for CEP features.
| Name | Required | Description | Default |
|---|---|---|---|
| userId | Yes | The user's primary email address or unique ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| license | Yes | |
| hasLicense | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must carry full load. It implies a read-only check, but does not disclose error handling (e.g., if user not found) or authentication requirements. For a simple check, it is minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no wasted words. The first sentence states the purpose, the second gives usage guidance. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter tool with an output schema (not shown but indicated), the description covers purpose, usage, and parameter. It lacks mention of edge cases or return format, but output schema fills that gap. Slightly incomplete for a fully self-contained description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'userId' has a schema description that matches the tool description's mention of 'email or unique ID'. With 100% schema coverage, the description adds no meaningful new semantics; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks if a user has a CEP license, using a specific verb and resource. While it doesn't explicitly differentiate from siblings like 'check_cep_subscription', the purpose is unambiguous and well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this to verify if an individual user (by email or unique ID) is licensed', providing clear context. However, it does not mention when not to use it or suggest alternatives like 'check_cep_subscription' for subscription-level checks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
count_browser_versionsA
Counts Chrome browser versions reported by managed devices. Use this for auditing and reporting on the distribution of browser versions across your organization or a specific Organizational Unit.
| Name | Required | Description | Default |
|---|---|---|---|
| orgUnitId | No | The ID of the organizational unit to filter results. | |
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| versions | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description only states 'Counts' and reporting purpose. With no annotations, it does not disclose authorization needs, rate limits, or behavior on no results. However, the operation is a simple read, so minimal disclosure is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundancy. Front-loaded with action verb. Every word contributes to purpose and usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given only two optional parameters and existence of output schema, description adequately covers context. No missing information for this simple counting tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions. Description adds no extra meaning beyond what schema provides, resulting in baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it counts Chrome browser versions reported by managed devices. Verb 'counts' and resource 'Chrome browser versions' are specific. No sibling tool performs similar counting, so differentiation is inherent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly mentions use for auditing and reporting on distribution across organization or specific OU. Provides clear context but lacks explicit when-not-to-use or alternatives, though none are present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_chrome_dlp_ruleA
Creates a new Chrome DLP rule for a specific Organizational Unit. Applies browser-level protection (uploads, downloads, printing). For safety reasons, this MCP tool is disabled from creating 'ACTIVE' rules with a 'BLOCK' action. You can create 'INACTIVE' 'BLOCK' rules and enable them later in the UI, or create 'ACTIVE' 'WARN' or 'AUDIT' rules.
To ensure technical accuracy and verify trigger compatibility, you should retrieve the full technical reference using 'get_document' for '11-dlp-rule-reference' before using this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | Rule state (defaults to ACTIVE): - ACTIVE: The rule is currently enforced. - INACTIVE: The rule is saved but not currently enforced. | |
| action | Yes | Action to take when the rule is triggered. AUDIT mode is silent and logs events without notifying or blocking the user. | |
| triggers | Yes | List of Chrome triggers: - FILE_UPLOAD: Scanning files that are uploaded. - FILE_DOWNLOAD: Scanning files that are downloaded. - WEB_CONTENT_UPLOAD: Scanning text that is copy-pasted. - PRINT: Scanning pages that are printed. - URL_NAVIGATION: Scanning URLs when visited. | |
| condition | No | CEL condition string. To ensure technical accuracy and verify trigger compatibility, you should retrieve the full technical reference using 'get_document' for '11-dlp-rule-reference' before formulating a condition. | |
| orgUnitId | Yes | The target Organizational Unit ID | |
| customerId | No | The Chrome customer ID (e.g. C012345). | |
| dataMasking | No | Data masking configurations (supports custom regular expressions and data masking detectors). The 'dataMasking' parameter is only supported with the 'URL_NAVIGATION' trigger and 'WARN' or 'AUDIT' actions. Currently, only custom regular expressions and data masking detectors are supported for data masking (word lists and URL lists are not supported). | |
| description | No | Description of the rule. | |
| displayName | Yes | The display name of the rule. Will be automatically prefixed with '🤖 '. | |
| saveContent | No | Whether to save the content that triggered the rule. | |
| customMessage | No | Custom message to display to the user. The 'customMessage' parameter is supported with 'BLOCK' and 'WARN' actions, and must be 300 characters or less. Only <a> tags with href attributes are allowed. | |
| blockScreenshot | No | Whether to block screenshots when the rule is triggered. The 'blockScreenshot' parameter (which also restricts screen-sharing) is only supported with the 'URL_NAVIGATION' trigger and 'WARN' or 'AUDIT' actions. | |
| watermarkMessage | No | Watermark message to display when the rule is triggered. The 'watermarkMessage' parameter is only supported with the 'URL_NAVIGATION' trigger and 'WARN' or 'AUDIT' actions, and must be 60 characters or less. |
Output Schema
| Name | Required | Description |
|---|---|---|
| dlpRule | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description fully carries the burden. Discloses critical behavioral constraints: forbidden combos, display name prefix, trigger-specific parameter support, and need for reference document. Exceeds expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool description is 3 concise sentences, front-loaded with purpose and usage constraints. Parameter descriptions in schema are verbose but necessary for documenting constraints. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers safety, constraints, prerequisites. Output schema exists (though not shown) so return info not needed. Could mention idempotency or error handling, but overall complete for a creation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds significant value: cross-parameter compatibility (e.g., dataMasking only with URL_NAVIGATION and WARN/AUDIT), blockScreenshot constraints, customMessage limitations. These are not in the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it creates a Chrome DLP rule for an OU. Verb 'creates' and resource 'Chrome DLP rule' are specific. Distinguishes from sibling tools like get_dlp_rule or list_dlp_rules, but could explicitly differentiate from create_default_dlp_rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit safety restrictions (no ACTIVE+BLOCK) and alternatives ('use INACTIVE BLOCK or ACTIVE WARN/AUDIT'). Advises to consult get_document for technical reference. Lacks direct comparison to other create tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_default_dlp_rulesB
Creates a "Starter Pack" of default Chrome DLP rules for a specific Organizational Unit. Rules included:
Audit visits to Generative AI sites.
Apply watermarks to sensitive sites (Gmail, Salesforce, Zendesk).
Warn users before pasting content on Generative AI sites (Gemini is excluded from warning).
| Name | Required | Description | Default |
|---|---|---|---|
| orgUnitId | Yes | The target Organizational Unit ID | |
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| failedRules | Yes | |
| createdRules | Yes | |
| failureCount | Yes | |
| successCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses the mutation (creates) and lists rules, but does not explain idempotency, whether rules are appended or replaced, or required permissions. This leaves significant behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, using a bullet list for the included rules. It front-loads the core purpose and is easy to parse. Minor room for improvement by removing redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and two parameters, the description covers the primary purpose and rules. However, it omits details like expected output format, behavior on re-run, and prerequisite customerId, making it slightly incomplete for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. The description adds context about the rules created but does not clarify parameter-specific meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a 'Starter Pack' of default Chrome DLP rules for a specific Organizational Unit, listing the three specific rules included. This distinguishes it from siblings like create_chrome_dlp_rule which creates individual rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what rules are created but does not explicitly state when to use this tool versus alternatives like create_chrome_dlp_rule for single rules or list_dlp_rules for reviewing. Usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_regex_detectorA
Creates a new DLP regular expression detector. Detectors are building blocks for DLP rules. After creating a detector, you must reference its resource name in a 'create_chrome_dlp_rule' condition (e.g., using the 'matches_detector' function).
| Name | Required | Description | Default |
|---|---|---|---|
| customerId | No | The Chrome customer ID (e.g. C012345) | |
| expression | Yes | A regular expression to match. | |
| description | No | An optional description for the detector. | |
| displayName | Yes | The display name for the detector. |
Output Schema
| Name | Required | Description |
|---|---|---|
| detector | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the creation action and the need to use the detector in a rule, but does not mention side effects, permissions, idempotency, or error conditions. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no extraneous words. The purpose is front-loaded and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, output schema exists), the description is complete enough: it explains what the tool does, how the object is used, and the schema covers parameters. Missing a brief note on output or return value, but output schema presumably covers that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by explaining that 'expression' is a regular expression and that the detector is used later, but it does not add parameter-specific details beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Creates'), the resource ('DLP regular expression detector'), and distinguishes from sibling tools like create_url_list_detector and create_word_list_detector by specifying 'regular expression'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explains that detectors are building blocks for DLP rules and that after creation you must reference the resource name in a rule condition. This provides clear context, though it does not explicitly state when not to use this tool versus alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_url_list_detectorA
Creates a new DLP URL list detector. Detectors are building blocks for DLP rules. After creating a detector, you must reference its resource name in a 'create_chrome_dlp_rule' condition (e.g., using the 'matches_detector' function).
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | A list of URLs to match. | |
| customerId | No | The Chrome customer ID (e.g. C012345) | |
| description | No | An optional description for the detector. | |
| displayName | Yes | The display name for the detector. |
Output Schema
| Name | Required | Description |
|---|---|---|
| detector | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool creates a detector and that the result is used in a rule condition. However, with no annotations, it lacks details about side effects, authorization requirements, or return value (though output schema exists). The behavioral information is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with purpose and immediate usage context. Every sentence adds value; there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool complexity (creation, part of workflow, output schema exists), the description covers the essential workflow linkage. It could mention the return value or permissible operations, but it is largely complete for an experienced agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter described in the schema. The description adds no additional parameter semantics beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Creates a new DLP URL list detector', using a specific verb and resource. It distinguishes from sibling detectors (create_regex_detector, create_word_list_detector) by the 'URL list' qualifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains that detectors are building blocks for DLP rules and that after creation the resource name must be referenced in 'create_chrome_dlp_rule'. This provides clear context for when to use the tool, but it does not explicitly compare against regex or word list detectors.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_word_list_detectorA
Creates a new DLP word list detector. Detectors are building blocks for DLP rules. After creating a detector, you must reference its resource name in a 'create_chrome_dlp_rule' condition (e.g., using the 'matches_detector' function).
| Name | Required | Description | Default |
|---|---|---|---|
| words | Yes | A list of words to match. Total character count across all words must be 12500 or less. | |
| customerId | No | The Chrome customer ID (e.g. C012345) | |
| description | No | An optional description for the detector. | |
| displayName | Yes | The display name for the detector. |
Output Schema
| Name | Required | Description |
|---|---|---|
| detector | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavior. It mentions the resource name usage but not side effects, auth needs, rate limits, or constraints beyond schema. Schema has max items and char count but description does not highlight them. Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states action, second explains next step. No redundancy, front-loaded, every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists and schema covers all parameters, the description adequately explains purpose and follow-up. Could include more about error scenarios or duplicates, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description does not add specific parameter details beyond schema, but the context of using the returned resource name indirectly adds value. No param-specific elaboration.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Describes creating a DLP word list detector, a specific building block for rules. Distinguishes from siblings like create_regex_detector and create_url_list_detector by naming the type ('word list').
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Advises that after creating, the resource name must be referenced in create_chrome_dlp_rule. Does not explicitly state when to use this vs alternatives, but the context implies word list need. Could improve by mentioning alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diagnose_environmentA
Runs a health check of the Chrome Enterprise Premium environment.
By default returns a summary with counts and pre-computed issues — no large arrays. The agent should present these findings to the user.
To drill into detail, pass a 'section' parameter:
"orgUnits" — paginated list of organizational units
"dlpRules" — paginated list of DLP rules with action types
"detectors" — paginated list of content detectors
"browserVersions" — all browser version counts
Use 'limit' and 'offset' for pagination on large datasets.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Page size for detail sections (default 50). | |
| offset | No | Pagination offset for detail sections (default 0). | |
| section | No | Drill into a specific section with paginated results. Omit for summary. | |
| customerId | No | The Chrome customer ID. Auto-resolved if omitted. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses default behavior (summary without large arrays), pagination details, drill-down capabilities, and auto-resolution of customerId. It does not explicitly state read-only nature, but the health check context implies it. Overall, transparent and sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured. Three short paragraphs front-load the purpose, then detail the default behavior, drill-down options, and pagination. Every sentence earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (duel mode, pagination, auto-resolve), 100% schema coverage, and the presence of an output schema, the description provides all necessary information. It covers usage, parameters, and output expectations without significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaningful context beyond schema: for 'section', it explains what each value returns (e.g., DLP rules with action types, browser version counts); for 'limit' and 'offset', it clarifies pagination usage; for 'customerId', it confirms auto-resolution. This adds value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool runs a health check of the Chrome Enterprise Premium environment, distinguishing it from sibling tools that focus on specific sub-resources (e.g., list_dlp_rules, list_org_units). It explains the dual behavior (summary vs. detail) and explicitly lists drill-down sections.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises using the tool for a high-level summary by default, and to drill into specific sections via the 'section' parameter. It implies alternatives exist (the dedicated list tools) but does not explicitly say when not to use this tool. The agent guidance to present findings to the user is helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enable_chrome_enterprise_connectorsA
Enables and configures selected Chrome Enterprise connectors (e.g., Print, Paste, File Upload/Download). Use this tool to ACTIVATE security protections. It will ONLY apply changes to connectors that are not already configured. To check current status without modifying, use 'get_connector_policy'.
| Name | Required | Description | Default |
|---|---|---|---|
| orgUnitId | Yes | The ID of the organizational unit where connectors will be enabled. | |
| connectors | Yes | List of connectors to enable. | |
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| connectors | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behavioral trait: only modifies connectors not already configured. However, with no annotations, could mention whether changes are reversible or require specific auth. Still adds significant value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with front-loaded purpose and no unnecessary words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and existence of output schema, description covers purpose, behavior, and alternative. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so parameters are well-documented. Description adds no extra meaning beyond listing example connectors, meeting baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool enables and configures Chrome Enterprise connectors, listing examples and contrasting with sibling tool get_connector_policy for status checking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says when to use (ACTIVATE security protections) and what it does not do (only applies to unconfigured connectors). Provides alternative tool for non-modifying check.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_chrome_activity_logA
Retrieves audit logs of Chrome browser activity (e.g., login events, policy violations, extension installs). Use this for security investigations, auditing user actions, and to help tune DLP rules.
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | The end time of the range to get activities for (RFC3339 timestamp). Defaults to now. | |
| userKey | No | The user key to get activities for. Use "all" for all users. | all |
| eventName | No | The name of the event to filter by. | |
| startTime | No | The start time of the range to get activities for (RFC3339 timestamp). Defaults to 10 days ago if not specified. | |
| customerId | No | The Chrome customer ID (e.g. C012345). | |
| maxResults | No | The maximum number of results to return. |
Output Schema
| Name | Required | Description |
|---|---|---|
| activities | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It describes what is retrieved but does not disclose potential behavioral traits such as pagination, rate limits, or required permissions. Since output schema exists, response structure is documented, but behavioral aspects beyond that are lacking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with main action, no wasted words. Perfectly concise while still providing examples and usage guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters all documented in schema and an output schema available, the description covers purpose and usage adequately. Missing some context about default behaviors (e.g., startTime defaults) but those are in schema. Overall complete for a tool with rich structured metadata.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3 applies. Description does not add extra meaning to individual parameters beyond what schema already provides. It offers general context but no additional semantic guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool retrieves audit logs of Chrome browser activity with specific examples like login events, policy violations, extension installs. Differentiates from sibling tools like DLP rule management or authentication by specifying use for security investigations and DLP tuning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this for security investigations, auditing user actions, and to help tune DLP rules,' providing clear context. Does not mention when not to use or list alternative tools, but the context is sufficient for most cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_connector_policyA
Retrieves the current configuration for a specific Chrome Enterprise connector or all connectors. Use this to AUDIT or VERIFY settings for features like "printing sensitive data", "real-time URL checks", or "event reporting". Note: The 'enable_chrome_enterprise_connectors' tool can only ACTIVATE connectors that are currently unconfigured. There is currently no tool to MODIFY an already configured connector; these must be updated manually in the Admin Console.
| Name | Required | Description | Default |
|---|---|---|---|
| policy | No | The connector type to retrieve (or "ALL" to get all connectors in one call). | ALL |
| orgUnitId | Yes | The ID of the organizational unit to check. | |
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| orgUnitId | Yes | |
| configured | Yes | True when at least one policy entry exists and any entry is enabled. |
| connectors | No | Mapping of all connector types to their individual results. Only present when policy is ALL. |
| connectorType | Yes | |
| connectorPolicies | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It clearly indicates the tool is read-only (retrieves configuration) and provides context on what is retrieved. It does not explicitly mention side effects, but retrieval operations typically have none. The note about the enable tool adds behavioral context. A score of 4 reflects slight room for improvement (e.g., stating 'This tool does not change any settings').
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences: first states the action, second gives use cases, third (note) provides important constraints and alternatives. Every sentence adds value, and the critical information is front-loaded. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 params, 1 required, output schema exists), the description covers the main purpose and usage context. It mentions the connection to the enable tool and manual updates for modifications. However, it does not describe the output format or any error conditions, though the output schema covers return values. Slightly more context on expected response would round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all three parameters. The tool description adds value by explaining the purpose of retrieving connectors and giving examples of features like 'printing sensitive data' and 'real-time URL checks'. It clarifies that 'ALL' retrieves all connectors in one call, which is not obvious from enum values alone. This adds semantic meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves current configuration for a specific or all Chrome Enterprise connectors. It explicitly lists use cases (audit/verify) and the domain of features (printing sensitive data, real-time URL checks, event reporting). This effectively distinguishes it from sibling tools that create rules or enable connectors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance: use for auditing/verifying settings, notes that the 'enable_chrome_enterprise_connectors' sibling tool only activates unconfigured connectors, and clarifies that there is no tool for modifying already configured connectors (must be updated manually). This covers when to use, when not to use, and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_customer_idA
Retrieves the unique Google customer ID for the authenticated account. This ID (often starting with 'C') is required as a parameter for many other Chrome management tools.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| language | No | The default language for the customer. |
| customerId | Yes | The unique customer ID. |
| customerDomain | No | The primary domain of the customer. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool retrieves an ID, implying read-only behavior. It does not discuss authentication details or errors, but for a simple retrieval tool, the description is adequately transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. It front-loads the core action and adds valuable context about the ID's format and necessity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters) and the presence of an output schema, the description is complete. It tells what the tool does and why it's needed, leaving no obvious gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the description adds no parameter info. According to guidelines, 0 parameters means baseline 4, which is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the unique Google customer ID for the authenticated account, including its format ('C' prefix) and purpose (required for other tools). This distinguishes it implicitly from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains that the ID is required for many other Chrome management tools, giving clear context for when to use this tool. It does not explicitly state when not to use it, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dlp_ruleA
Retrieves details for a specific Chrome DLP rule by its resource name. The response includes a direct link to the Admin Console where you can view, edit, disable, or delete the rule. Note: The agent itself cannot modify or delete rules.
| Name | Required | Description | Default |
|---|---|---|---|
| resourceName | Yes | The full resource name of the rule (e.g., policies/akajj264apk5psphei). |
Output Schema
| Name | Required | Description |
|---|---|---|
| dlpRule | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the response includes an Admin Console link and that the agent cannot modify/delete rules, adding useful context beyond a simple retrieve.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus parameter description, no wasted words. Information is front-loaded and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with an output schema, the description sufficiently explains behavior, response content, and limitations. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in the schema already matches the tool description's example. The description adds no new meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves details for a specific Chrome DLP rule by resource name, distinguishing it from list_dlp_rules which lists all rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (having a resource name for a specific rule), but does not explicitly exclude alternatives like list_dlp_rules for bulk queries. Still, it's clear enough for an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_documentA
Retrieves the full text of one or more knowledge base documents. Pass filename as a single value or an array (bundle). Each entry may be a filename string (e.g. "4-dlp-core-features") or a numeric articleId from a Markdown cross-link. Use the array form to load related articles in a single call.
Knowledge Index
This index is for locating relevant documentation by topic. Document summaries are not a source of truth; for authoritative technical details, exact roles, or procedures, the agent retrieves the content in real-time via 'get_document'.
Filename | Topics Covered | Source |
01-cep-overview | Comprehensive introduction to Chrome Enterprise Premium (CEP). Helps with product evaluation and implementation. Walks through the 5-step checklist: setting up Chrome management, configuring connector policies, verifying the CEP service, setting up DLP rules, and configuring activity alerts. Covers trial terms (60 days, 5,000 users) and manual license assignment. Keywords: $6/user price, trial terms, Licensing, 5-step checklist, manual license assignment, Workspace service settings. | Remote |
02-chrome-deployment-guide | Comprehensive browser deployment and enrollment guide. Use this to perform large-scale MSI/PKG installation via MDM and configure cloud management. Covers how to: deploy the Chrome Enterprise bundle, apply policy templates, use Cloud management enrollment tokens, force-install Endpoint Verification, and perform the two-step unenrollment process. | Remote |
03-ev-troubleshooting | Endpoint Verification (EV) troubleshooting and privacy guide. Helps resolve device posture sync errors and access denial issues. Covers how to: fix OS-level sync failures by investigating Native Helper status, EDR/Antivirus blocks, and firewalls; resolve OS update delays via manual "Sync Now"; and understand privacy boundaries (no browsing history collected). Keywords: Failed to sync, Native messaging host, manual sync, privacy statement, BYOD security. | Remote |
04-dlp-core-features | Guide for configuring DLP triggers (Paste, Print, Upload), screen capture protection, and Enterprise Cache Encryption. Helps protect sensitive data from accidental leaks or exfiltration. Covers how to: enable screenshot blocking on sensitive URLs, manage file scan latency via DelayDeliveryUntilVerdict, and configure Optical Character Recognition (OCR) for images. Keywords: Screen capture protection, Clipboard controls (Paste), Cache encryption, OCR supported types (BMP, GIF, JPEG, PNG, TIF), scan delay. | Remote |
05-evidence-locker | Setup and configuration guide for the Evidence Locker (forensic file storage). Helps secure sensitive data for legal and security investigations. Covers how to: configure the GCS bucket, manage access permissions, and handle unscannable files. Note: DLP more reliably detects password protection on ZIP archives than on PDF or Office documents. Keywords: Evidence Locker, GCS bucket permissions, service account keys, DelayDeliveryUntilVerdict, password reliability (ZIP vs PDF). | Remote |
06-dlp-rule-troubleshooting | DLP troubleshooting and diagnostics guide. Helps resolve rule deployment issues and ensures effective protection against data leaks. Covers how to: verify rule receipt via chrome://policy, confirm CEP license assignment, refine strict rules using "Audit only" mode, investigate client-side logs at chrome://safe-browsing, and analyze server-side log events in the Admin Console. Keywords: chrome://policy, chrome://safe-browsing, audit only mode, license assignment, investigation tool. | Remote |
07-caa-dlp-integration | Context-Aware Access (CAA) and Security Gateway integration guide. Helps protect corporate apps by ensuring only compliant devices gain access. Covers how to: troubleshoot "401 Unauthorized" errors via IAP logs and Access Level definitions, secure native applications using Certificate-Based Access (CBA), and verify Device Trust Connector (Okta) status in chrome://connectors-internals. Keywords: 401 Unauthorized, IAP policy, Security Gateway, BeyondCorp, native app security. | Remote |
08-certificate-based-access | Certificate-Based Access (CBA) and Identity Provider guide. Helps enforce high-assurance access for managed and unmanaged devices. Covers how to: upload Root CA certificates to the Admin Console and configure the "AutoSelectCertificateForUrls" policy for seamless user authentication. Keywords: CBA, Root CA upload, AutoSelectCertificateForUrls, client certificates. | Remote |
09-chrome-log-events | Chrome Reporting Connector and SIEM integration guide. Helps search security event logs in the Admin Console and stream events to SIEMs like Splunk. Covers event descriptions for Threat and Data Protection events, and how to verify local event generation and policy receipt on client machines. Keywords: Chrome log events, Audit & investigation, Threat events, Data Protection events, chrome://policy, chrome://safe-browsing, Splunk integration. | Remote |
10-chrome-policy-management | Chrome policy management and URL filtering guide. Helps control web access and manage policy conflicts. Covers how to: use wildcard syntax—example.com (includes subdomains) vs .example.com (exact host only); give cloud policies precedence via "CloudPolicyOverridesPlatformPolicy"; and bypass Safe Browsing warnings for internal sites using "SafeBrowsingAllowlistDomains". | Remote |
12-security-posture-guide | Internal evaluation criteria the agent uses to assess a Chrome Enterprise Premium environment and recommend next steps. Walks through whether the prerequisites (licenses, connectors, SEB extension) are present, whether DLP rules exist, whether they are tuned, and whether they are enforcing. Covers the telemetry dependency (logs require active rules). For agent-internal use only — do not surface labels or framework names to users. | Local |
15-rule-quality-guidelines | Internal evaluation criteria the agent uses to identify logic flaws and noise in Chrome Enterprise Premium DLP rule JSON. Covers context blindness (missing destination vectors), false negatives from broad file-type exclusions, root-OU over-scoping, low match thresholds that cause false positives, missing compound logic, mixed triggers, disproportionate actions, audit-first deployment, and orphaned rules. For agent-internal use only — do not surface heuristic names or category labels to users. | Local |
16-configurable-timeouts | Guide for configuring timeout deadlines (evaluation time limit) for Data Loss Prevention (DLP) and malware scans, including the paste action. Covers UI navigation paths, Admin privileges required, and background scan behavior. Keywords: Configurable timeouts, evaluation time limit, deep scanning protection settings, Chrome Enterprise Security Services, Chrome Enterprise Premium, scan deadline, paste deadline. | Remote |
21-dlp-limits | DLP content and scanning limits guide. Helps explain why certain files are unscanned or blocked. Covers constraints for file size, text extraction, and spreadsheets. Keywords: 50MB file limit, 10MB text limit, 50,000 cell limit, unscannable files. | Remote |
22-dlp-data-masking | Helps protect sensitive UI data in the browser using data masking. Covers configuration of masking rules and requirements for the Secure Enterprise Browser (SEB) extension. Keywords: Data masking, SEB extension, PII protection, Light/Hard obfuscation. | Remote |
23-insider-risk-monitoring | Insider risk and data loss monitoring guide. Covers how to turn on insider risk monitoring via the 1-click "Monitor data leaks and insider risk" flow, and how to configure the "Data protection insight scanning and report" setting. Explains how this automatically configures Chrome connectors, event logging, and DLP scanning. Keywords: Insider risk, 1-click enablement, Data protection insight scanning, Chrome security event logging, turn off monitoring. | Remote |
24-security-reports | Overview of Chrome security reports in the Admin Console. Helps administrators monitor threat and data protection events. Covers Malware, Unsafe Sites, PII transfers, and high-volume upload/download reports. Keywords: Data protection reports, Threat protection dashboard, security telemetry. | Remote |
27-url-blocklist-format | Detailed technical format for URL blocklist and allowlist filters. Helps with precise web access control. Covers wildcard syntax rules: example.com (matches domain and all subdomains) vs .example.com (matches exact host only). Keywords: wildcard (*), subdomain (.), URL filter syntax, blocklist vs allowlist. | Remote |
28-safe-browsing-allowlists | Helps administrators exempt trusted internal sites from Safe Browsing warnings. Covers how to bypass malware, phishing, and password reuse checks. Keywords: SafeBrowsingAllowlistDomains, trusted domains, bypass warnings. | Remote |
29-admin-privilege-definitions | Reference for administrator privileges required to manage Google Workspace and CEP features in the Admin Console. Helps resolve "Access Denied" errors. Covers privileges for User management, Reports, Security Center, Data Loss Prevention (DLP) rule management, Chrome Management, and Data Security (Context-Aware Access). Keywords: Admin console privileges, Manage DLP rules, Security Center, Service Settings, custom roles. | Remote |
30-ev-device-attributes | Comprehensive list of device posture attributes collected by Endpoint Verification. Helps with creating granular Context-Aware Access (CAA) levels. Covers OS version, serial numbers, disk encryption, and screen lock status. Keywords: Device attributes, postural data, hardware identifiers, encryption status. | Remote |
31-security-insights-data | Guide to querying Chrome Enterprise Security Insights data. Covers methods for retrieving summaries and breakdowns of content transfers and URL visits. Helps with understanding security posture and data movement. | Local |
98-agent-knowledge-addendum | Mandatory Technical "Golden Facts" and operational memory for Chrome Enterprise Premium. Covers Extension IDs for EV and SEB, Windows Certificate Store requirements for CBA, URL filtering syntax rules, and troubleshooting "Something went wrong" errors for Security Insights using specific privileges. Keywords: callobklhcbilhphinckomhgkigmfocg, ekajlcmdfcigmdbphhifahdfjbkciflj, Windows Store requirements, Security Insights Error, Chrome DLP insight setting management, SafeBrowsingAllowlistDomains. | Local |
| Name | Required | Description | Default |
|---|---|---|---|
| filename | Yes | A single filename/articleId, or an array of them (up to 20). Numeric articleIds are coerced to strings. |
Output Schema
| Name | Required | Description |
|---|---|---|
| missing | Yes | |
| documents | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not disclose any behavioral traits such as idempotency, side effects, permissions required, rate limits, or error behaviors. The read-only nature is implied but not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely long due to the full knowledge index table. While the table is informative, it significantly reduces conciseness. The first paragraph is efficiently front-loaded, but the bulk of the description is a large table that could be a separate resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is comprehensive: it explains the input format, includes a detailed index of available documents (with topics and keywords), and references cross-links. Since an output schema exists, return value explanation is not needed. This provides the agent with all necessary context to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a description of the 'filename' parameter. The description adds value by explaining that entries can be numeric articleIds from cross-links, which is not in the schema's description. Schema coverage is 100%, so the description enhances understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Retrieves the full text') and the resource ('knowledge base documents'). It explains the two input forms (single string or array) and distinguishes from sibling tools like get_dlp_rule by focusing exclusively on knowledge base content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on when to use the array form ('load related articles in a single call') and includes a comprehensive knowledge index table that helps the agent decide which documents to fetch. However, it does not explicitly state when not to use the tool or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
install_seb_extensionB
Force-installs the Secure Enterprise Browser (SEB) extension for a given Organizational Unit. The SEB extension is REQUIRED for advanced Chrome Enterprise Premium features like data masking.
| Name | Required | Description | Default |
|---|---|---|---|
| orgUnitId | Yes | The ID of the organizational unit where the extension will be force-installed. | |
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | Yes | |
| newlyInstalled | Yes | |
| alreadyInstalled | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'force-installs' but doesn't disclose behavioral traits such as permission requirements, reversibility, side effects, or what happens if the extension is already installed. For a force-install action, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The main action is front-loaded, and the additional sentence adds important context about why the extension is needed. Very concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a force-install operation and the presence of an output schema, the description is incomplete. It doesn't mention what the output provides, post-conditions, or relationship to sibling tools like 'check_cep_subscription'. Behavioral transparency is also lacking, reducing completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already documented. The description adds no additional meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Force-installs the Secure Enterprise Browser (SEB) extension for a given Organizational Unit.' The verb 'force-installs' and resource 'SEB extension' are specific, and it distinguishes from siblings like 'check_seb_extension_status' which is a check operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, when not to use it, or any prerequisites. For example, it doesn't mention that a subscription or license check might be needed first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_customer_profilesB
Lists Chrome browser profiles for the customer. These profiles represent managed browser instances and provide details like OS version, platform, and associated user email.
| Name | Required | Description | Default |
|---|---|---|---|
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| profiles | Yes | |
| totalCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions that the tool returns details like OS version and user email, but does not specify whether the operation is read-only, if authentication is required, or if there are any rate limits or pagination. This is insufficient for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and contains no redundant information. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the basic purpose and output details. However, it does not address prerequisites like authentication (given sibling auth tools) or whether the customerId is required or optional. The output schema exists but is not fully described. Overall, it is adequate but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with a clear description of the customerId parameter. The description adds minimal extra meaning beyond 'for the customer', which is already implied by the parameter. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Lists Chrome browser profiles for the customer' and specifies the resource. It distinguishes from siblings like list_detectors or list_org_units by naming the specific resource type. However, it does not explicitly differentiate from other list tools, but the resource is unique enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives, such as when authentication is needed via cep_auth or when to use other list tools. The description only states what the tool does, without any context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_detectorsA
Lists all custom Chrome DLP detectors (URL lists, word lists, or regular expressions). Detectors are used within DLP rules to identify sensitive content. Use this to find the 'policyName' of a detector to include in a rule.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| detectors | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It indicates a read-only list operation and adds context about detectors' purpose, but does not disclose potential limitations like pagination, permissions, or response size. Acceptable for a simple list tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first defines scope and types, second gives practical usage. No wasted words, front-loaded with core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and presence of output schema (unshown but noted), description covers purpose, types, and real-world usage. Could mention if all detectors are returned or if there is pagination, but sufficient for most cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so 100% schema coverage by default. The description does not need to add parameter semantics. Baseline score of 4 for zero-parameter tools is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Describes exactly what the tool does: lists custom Chrome DLP detectors with specific types (URL lists, word lists, regex). Verb 'lists' plus resource 'detectors' is clear. Distinguishes from create/update siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states use case: find 'policyName' to include in a rule. Does not mention when not to use or alternatives, but the sibling tools list makes the differentiation clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_dlp_rulesA
Lists all Chrome DLP rules currently configured in the organization. These rules protect sensitive data by monitoring browser actions like uploads, printing, and screenshots.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| dlpRules | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description explains the purpose (list all rules) and the type of data protected, but does not mention read-only nature, pagination, or limits. However, it is a simple read operation with no side effects, so transparency is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences efficiently deliver the purpose and context without extraneous information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and an output schema present, the description fully explains the tool's function and the domain (DPR rules, browser actions). No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, and schema coverage is 100%. The description does not add parameter-specific meaning, but the baseline for 0 params is 4, and the tool is straightforward.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Lists all Chrome DLP rules' with a specific verb and resource, distinguishing it from siblings like create_chrome_dlp_rule (creation) and get_dlp_rule (likely single rule retrieval).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for viewing all rules but provides no explicit guidance on when to use this tool versus alternatives like get_dlp_rule or search tools. No context on exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_org_unitsA
Lists the Organizational Units (OUs) for the customer. Use this tool to find the 'orgUnitId' required by most other Chrome management and policy tools. It provides the human-readable path and unique ID for each OU.
| Name | Required | Description | Default |
|---|---|---|---|
| customerId | No | The Chrome customer ID (e.g. C012345). |
Output Schema
| Name | Required | Description |
|---|---|---|
| orgUnits | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description carries burden. Mentions output provides path and unique ID, but does not disclose other traits like auth needs or rate limits. Adequate given simplicity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences with no waste. First sentence states action, rest provide context. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one parameter, full schema coverage, and output schema, the description covers purpose, usage, and output format adequately. Complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for single parameter. Description does not add parameter details beyond schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states tool lists OUs for the customer. Specifies the purpose: to find 'orgUnitId' needed by other tools. Differentiates from siblings implicitly by focusing on OUs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use this tool to find orgUnitId required by other tools. Provides clear context for when to use. Lacks explicit exclusions or alternatives, but sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
security_insightsA
Manages the enablement status of Chrome Security Insights for a customer. Use this to check, enable, or disable the security insights feature customer-wide.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | The action to perform: check status, enable insights, or disable insights. | |
| targetOus | No | Optional Organizational Unit paths relative to root (e.g. ["/corp/sales"]) to set up Chrome connectors for. Only applicable when action is "enable". Defaults to root OU if omitted. | |
| customerId | No | The Chrome customer ID (e.g. C012345). Defaults to "my_customer". |
Output Schema
| Name | Required | Description |
|---|---|---|
| insightsState | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It indicates the tool can modify state (enable/disable) but does not disclose potential impacts (e.g., disabling affects all users), required permissions, or any side effects. The description is minimal and lacks depth needed for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise sentences. The first sentence states the purpose, and the second provides usage guidance. There is no redundant or extraneous information, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has low complexity with three parameters, and the output schema exists (though not shown). The description covers the core actions and scope. It does not explain the result of 'check' or the applicability of 'targetOus', but those are documented in the schema. Overall, it is adequate given the schema coverage and output schema presence, missing only minor contextual details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already described in the schema. The tool description merely reiterates the actions without adding new meaning, such as examples, formatting, or behavior nuances. Since coverage is high, the baseline score is 3; the description adds no extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Manages' and the resource 'enablement status of Chrome Security Insights'. It explicitly lists the specific actions (check, enable, disable) and implies customer-wide scope. The tool name and description distinguish it from siblings, which focus on other Chrome Enterprise features like CEP, DLP, and connectors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool: 'Use this to check, enable, or disable the security insights feature customer-wide.' It provides clear context but does not explicitly mention when not to use it or suggest alternative tools. However, given the sibling tools are for different features, the intended usage is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
25 tool updates
v1.9.0- First observed
cep_auth - First observed
cep_auth_clear - First observed
cep_auth_status - First observed
check_cep_subscription - First observed
check_seb_extension_status - First observed
check_user_cep_license - First observed
count_browser_versions - First observed
create_chrome_dlp_rule - First observed
create_default_dlp_rules - First observed
create_regex_detector - First observed
create_url_list_detector - First observed
create_word_list_detector - First observed
diagnose_environment - First observed
enable_chrome_enterprise_connectors - First observed
get_chrome_activity_log - First observed
get_connector_policy - First observed
get_customer_id - First observed
get_dlp_rule - First observed
get_document - First observed
install_seb_extension - First observed
list_customer_profiles - First observed
list_detectors - First observed
list_dlp_rules - First observed
list_org_units - First observed
security_insights
TDQS
Most tools have clear, distinct purposes (auth, DLP rules, detectors, browser management). However, there is slight overlap between some diagnostic tools (diagnose_environment, security_insights) and multiple DLP-related tools (create_chrome_dlp_rule, create_default_dlp_rules, list_dlp_rules, get_dlp_rule) could confuse an agent, though descriptions help differentiate.
All tools follow a consistent verb_noun pattern (e.g., check_cep_subscription, create_chrome_dlp_rule, list_dlp_rules). Even auth tools use cep_auth as a prefix. No mixing of camelCase or other conventions, making it predictable for an agent.
With 25 tools, the server is slightly above the ideal range (3-15). While all tools serve a purpose in Chrome Enterprise Premium management, the count feels a bit heavy, especially with many DLP and detector tools. Still, it remains manageable and not overly bloated.
The tool surface covers core operations like listing, creating, and checking licenses, but there are notable gaps: no tools to update or delete DLP rules, and no OU management beyond listing. Agents will hit dead ends when trying to modify or remove existing configurations.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
The Google GKE MCP server is a managed Model Context Protocol server that provides AI applications with tools to manage Google Kubernetes Engine (GKE) clusters and Kubernetes resources. It exposes a structured, discoverable interface that allows AI agents to interact with GKE and Kubernetes APIs, enabling them to inspect cluster configurations, retrieve Kubernetes resource YAMLs, monitor operations like cluster upgrades, diagnose issues, and optimize costs—all without needing to parse text output or use complex kubectl commands.
The Google Compute Engine MCP server is a fully-managed Model Context Protocol server that provides tools to manage Google Compute Engine resources through AI agents. It enables capabilities including instance management (creating, starting, stopping, resetting, listing), disk management, handling instance templates and group managers, viewing machine and accelerator types, managing images, and accessing reservation and commitment information. The server operates as a zero-deployment, enterprise-grade endpoint at https://compute.googleapis.com/mcp with built-in IAM-based security.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
The Mercado Pago MCP Server implements the Model Context Protocol to provide AI agents and LLMs with access to Mercado Pago's APIs and tools within compatible development environments. It acts as an intermediary that translates Mercado Pago resources into executable functions (tools) that AI applications can invoke to perform actions and automate flows. The server simplifies integration, enables using documentation to implement or improve code, and optimizes operations through natural language interactions without manual implementations.
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables AI assistants like Claude to interact with Google Cloud Platform environments through natural language, allowing users to query and manage GCP resources during conversations.99,698200MIT
- AlicenseAqualityDmaintenanceA Model Context Protocol server that enables AI agents to interact with Google Workspace services including Drive, Docs, and Sheets through natural language commands.8MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to control a real Google Chrome instance using specific user profiles, cookies, and extensions. It provides 18 tools for browser navigation, element interaction, and page inspection via the Chrome DevTools Protocol.-
- AlicenseBqualityCmaintenanceAn MCP server that provides AI models with full browser automation capabilities through Chrome. It enables navigation, interaction, screenshots, and complete DevTools access by bridging AI clients with a companion Chrome extension.99163Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/google/chrome-enterprise-premium-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server