# update_web_scraping (/docs/mcp/tools/update-web-scraping)

{/* Generated by scripts/sync-mcp-tools.mjs from happierleads-api. Do not edit: change src/routes/mcp/toolDocs.json there, or add content/mcp-notes/update_web_scraping.mdx. */}

**Update Web Scraping keywords** · Changes data · Acts outside your account · Spends credits or money

Turns Web Scraping on or off and sets its keywords (exact or fuzzy match, each can be paused), the daily limit (1-500 leads, 1 credit each) and contacts-only (only companies where we found a person). Passing keywords replaces the whole list: get_web_scraping first and send the full list. Not on LTD plans.

| Connection | Account URL, team member URL or OAuth |
| --- | --- |

## Parameters [#parameters]

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `websiteId` | `string` | Yes | Website ID from list_websites. |
| `enabled` | `boolean` | No | On or off. |
| `keywords` | `object[]` | No | The full keyword list: value (a phrase your buyers write, or a domain in a script such as a competitor's tracker), matchMode (exact or fuzzy), paused. |
| `keywords[].value` | `string` | Yes | A phrase your buyers write on their own site, or a domain that appears in a script URL. |
| `keywords[].matchMode` | `"exact" \| "fuzzy"` | No | exact (the phrase as written) or fuzzy (close variants too). |
| `keywords[].paused` | `boolean` | No | true to keep the keyword but stop searching for it. |
| `dailyLimit` | `number` | No | Leads per day, 1-500. |
| `contactsOnly` | `boolean` | No | Only add companies where a person was found. |

## Tool definition [#tool-definition]

What your assistant receives from `tools/list`:

```json
{
  "name": "update_web_scraping",
  "title": "Update Web Scraping keywords",
  "annotations": {
    "title": "Update Web Scraping keywords",
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": true
  },
  "inputSchema": {
    "type": "object",
    "properties": {
      "websiteId": {
        "type": "string",
        "description": "Website ID from list_websites."
      },
      "enabled": {
        "type": "boolean",
        "description": "On or off."
      },
      "keywords": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "value": {
              "type": "string",
              "description": "A phrase your buyers write on their own site, or a domain that appears in a script URL."
            },
            "matchMode": {
              "type": "string",
              "enum": [
                "exact",
                "fuzzy"
              ],
              "description": "exact (the phrase as written) or fuzzy (close variants too)."
            },
            "paused": {
              "type": "boolean",
              "description": "true to keep the keyword but stop searching for it."
            }
          },
          "required": [
            "value"
          ]
        },
        "description": "The full keyword list: value (a phrase your buyers write, or a domain in a script such as a competitor's tracker), matchMode (exact or fuzzy), paused."
      },
      "dailyLimit": {
        "type": "number",
        "minimum": 1,
        "maximum": 500,
        "description": "Leads per day, 1-500."
      },
      "contactsOnly": {
        "type": "boolean",
        "description": "Only add companies where a person was found."
      }
    },
    "required": [
      "websiteId"
    ]
  }
}
```
