Skip to main content
Glama

Add a service to a site's privacy & cookie policy

create_site_pcp_service

Add a PCP catalog service to a site. Use list_pcp_services to find available service IDs. Requires an active Privacy & Cookie Policy on the site.

Input Schema

NameRequiredDescriptionDefault
site_idYesSite ID
service_idYesAvailable service ID to add
storage_durationsNoHow long this service's cookies and trackers are stored. Replaces the service's own durations, and switches the service to them unless use_catalog_storage_durations is sent. Only for services that use cookies or trackers. Omit to use the catalog default.
third_party_serviceNoUS state privacy laws: true marks the provider as a third party; false marks it as a service provider, processor or contractor. Omit to use the catalog default.
ccpa_constitutes_saleNoProcessing by this service is a sale of personal information in California (CCPA). Omit to use the catalog default.
selected_processing_placesNoArray of processing place IDs
selected_personal_data_typesNoArray of personal data type IDs
use_catalog_storage_durationsNotrue shows the catalog's storage durations for this service and clears its own (storage_durations must then be omitted or none); false shows its own. Only for services that use cookies or trackers. Omit to use the catalog default.
other_us_laws_constitutes_saleNoProcessing by this service is a sale under the other US state privacy laws (Virginia, Colorado, Connecticut, Utah, Texas, Oregon, Nevada and other states). Omit to use the catalog default.
ccpa_sharing_personal_informationNoProcessing by this service is sharing of personal information in California (CCPA). Omit to use the catalog default.
other_us_laws_targeted_advertisingNoProcessing by this service is targeted advertising under the other US state privacy laws (Virginia, Colorado, Connecticut, Utah, Texas, Oregon and other states). Omit to use the catalog default.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / storage_durations
      Added value: +{
      +  "description": "How long this service's cookies and trackers are stored. Replaces the service's own durations, and switches the service to them unless use_catalog_storage_durations is sent. Only for services that use cookies or trackers. Omit to use the catalog default.",
      +  "properties": {
      +    "cookies": {
      +      "items": {
      +        "properties": {
      +          "duration": {
      +            "anyOf": [
      +              {
      +                "enum": [
      +                  "session",
      +                  "indefinite"
      +                ],
      +                "type": "string"
      +              },
      +              {
      +                "properties": {
      +                  "amount": {
      +                    "maximum": 2147483647,
      +                    "minimum": 1,
      +                    "type": "integer"
      +                  },
      +                  "unit": {
      +                    "enum": [
      +                      "second",
      +                      "minute",
      +                      "hour",
      +                      "day",
      +                      "month",
      +                      "year"
      +                    ],
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "amount",
      +                  "unit"
      +                ],
      +                "type": "object"
      +              }
      +            ],
      +            "description": "\"session\", \"indefinite\", or an object with a whole-number amount and a unit"
      +          },
      +          "name": {
      +            "description": "Cookie or tracker name, 1 to 50 characters, counting & < > as their HTML escapes",
      +            "maxLength": 50,
      +            "minLength": 1,
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "name",
      +          "duration"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 100,
      +      "minItems": 1,
      +      "type": "array"
      +    },
      +    "maximum_duration": {
      +      "anyOf": [
      +        {
      +          "enum": [
      +            "session",
      +            "indefinite"
      +          ],
      +          "type": "string"
      +        },
      +        {
      +          "properties": {
      +            "amount": {
      +              "maximum": 2147483647,
      +              "minimum": 1,
      +              "type": "integer"
      +            },
      +            "unit": {
      +              "enum": [
      +                "second",
      +                "minute",
      +                "hour",
      +                "day",
      +                "month",
      +                "year"
      +              ],
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "amount",
      +            "unit"
      +          ],
      +          "type": "object"
      +        }
      +      ],
      +      "description": "\"session\", \"indefinite\", or an object with a whole-number amount and a unit"
      +    },
      +    "mode": {
      +      "description": "none: not specified. maximum: one maximum duration across all cookies and trackers, given in maximum_duration (required for this mode). per_cookie: one duration for each cookie or tracker, given in cookies (required for this mode).",
      +      "enum": [
      +        "none",
      +        "maximum",
      +        "per_cookie"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "mode"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / properties / third_party_service
      Added value: +{
      +  "description": "US state privacy laws: true marks the provider as a third party; false marks it as a service provider, processor or contractor. Omit to use the catalog default.",
      +  "type": "boolean"
      +}
    • removedInput schema / properties / us_laws_third_party_service
      Removed value: -{
      -  "description": "US state privacy laws: true marks the provider as a third party; false marks it as a service provider, processor or contractor. Responses report this value as third_party_service. Omit to use the catalog default.",
      -  "type": "boolean"
      -}
    • addedInput schema / properties / use_catalog_storage_durations
      Added value: +{
      +  "description": "true shows the catalog's storage durations for this service and clears its own (storage_durations must then be omitted or none); false shows its own. Only for services that use cookies or trackers. Omit to use the catalog default.",
      +  "type": "boolean"
      +}
  2. Changed5 schema fields changed
    • addedInput schema / properties / ccpa_constitutes_sale
      Added value: +{
      +  "description": "Processing by this service is a sale of personal information in California (CCPA). Omit to use the catalog default.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / ccpa_sharing_personal_information
      Added value: +{
      +  "description": "Processing by this service is sharing of personal information in California (CCPA). Omit to use the catalog default.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / other_us_laws_constitutes_sale
      Added value: +{
      +  "description": "Processing by this service is a sale under the other US state privacy laws (Virginia, Colorado, Connecticut, Utah, Texas, Oregon, Nevada and other states). Omit to use the catalog default.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / other_us_laws_targeted_advertising
      Added value: +{
      +  "description": "Processing by this service is targeted advertising under the other US state privacy laws (Virginia, Colorado, Connecticut, Utah, Texas, Oregon and other states). Omit to use the catalog default.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / us_laws_third_party_service
      Added value: +{
      +  "description": "US state privacy laws: true marks the provider as a third party; false marks it as a service provider, processor or contractor. Responses report this value as third_party_service. Omit to use the catalog default.",
      +  "type": "boolean"
      +}
  3. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and non-idempotence, so safety is covered. The description adds a genuinely useful behavioral precondition not present in the structured data: the site must already have an active Privacy & Cookie Policy, otherwise the call presumably fails.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the action, then the ID lookup, then the precondition. Every sentence earns its place with no repetition of schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a create tool with 11 parameters and no output schema, the description covers purpose, prerequisite, and how to source IDs, leaving the parameter details to the thorough schema. It omits what happens on failure or when a service is already attached, a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the nested storage_durations, sale/sharing, and catalog-default parameters are all richly documented in the schema itself. The description only alludes to service IDs and adds no syntax or default semantics beyond what the schema provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Add a PCP catalog service to a site'), which cleanly separates it from update_site_pcp_service and delete_site_pcp_service. It also names the sibling used to obtain valid IDs, so an agent can distinguish it without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a clear precondition ('Requires an active Privacy & Cookie Policy on the site') and routes the agent to list_pcp_services for service IDs. It stops short of explicitly contrasting with update_site_pcp_service for cases where the service is already attached.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources