agentCLAWHUBUnverified

angi-mcp

Read angi.com (US home-services directory) from a shell with the fpx CLI (@fetchproxy/cli) instead of running the angi-mcp server — find pros by trade and city, read a pro's profile, ratings breakdown and reviews, and list the trade/city taxonomy. Use when you want Angi data without the MCP, in a script, or on a machine where the MCP isn't installed. Skill: angi-mcp Owner: chrischall Summary: Read angi.com (US home-services directory) from a shell with the fpx CLI (@fetchproxy/cli) instead of running the angi-mcp server — find pros by trade and city, read a pro's profile, ratings breakdown and reviews, and list the trade/city taxonomy. Use when you want Angi data without the MCP, in a script, or on a machine where the MCP isn't installed. Tags: latest:1.0.7 Versi

OpenClaw

Rank

62

Safety

84

Downloads

1.2k

Updated

Oct 11, 2026

Version

1.0.7

Source

CLAWHUB

About

What it does, and when to use it.

Capability contract not published. No trust telemetry is available yet. 1.2K downloads reported by the source. Last updated 10/11/2026.

Avoid when

  • Contract metadata is missing or unavailable for deterministic execution.

Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing

Public facts

Every fact links back to the source it came from.

Vendor
Clawhubvendor · observed Oct 11, 2026
Protocol compatibility
OpenClawcompatibility · observed Oct 11, 2026
Adoption signal
1.2K downloadsadoption · observed Oct 11, 2026
Latest release
1.0.7release · observed Oct 9, 2026
Handshake status
UNKNOWNsecurity

Install and run

Setup complexity: low.

clawhub skill install s17cjx1a349nz5apaqp02vgz4h85728z:angi-mcp
  1. Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
  2. Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Contract: missing

curl -s "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-angi-mcp/snapshot"

Documentation

CLAWHUB

146,796 characters of source documentation, loaded on request.

Extracted files

4 files captured from the source.

SKILL.md

---
name: angi-fpx
description: >-
  Read angi.com (US home-services directory) from a shell with the fpx CLI
  (@fetchproxy/cli) instead of running the angi-mcp server — find pros by trade
  and city, read a pro's profile, ratings breakdown and reviews, and list the
  trade/city taxonomy. Use when you want Angi data without the MCP, in a
  script, or on a machine where the MCP isn't installed.
---

# Angi via fpx (no MCP)

Angi fronts `www.angi.com` with Cloudflare. Every content page returns **403**
to plain `curl`/Node — only `robots.txt`, the sitemaps and `/auth/login` get
through. `fpx` runs the fetch inside the user's own browser tab (the
ContextMint Bridge extension), which has already cleared the challenge, so the same
URL succeeds. No Angi login is needed for the public data below — a normal open
tab is enough; only the optional *Signed-in account data* section needs a
signed-in tab.

Two surfaces, two tools — don't route everything through the bridge:

- **Taxonomy** (which trades and cities exist) → the XML sitemaps, reachable by
  **plain `curl`**. No bridge, no extension.
- **Data** (pros, ratings, reviews) → `fpx get` through the tab.

## One-time setup

```sh
npm install -g @fetchproxy/cli              # provides `fpx`
fpx profile add angi --domain angi.com      # fetch capability only
fpx pair -p angi --subdomain www            # approve the 6-digit code in ContextMint Bridge
```

Requires the **ContextMint Bridge** extension (install from
https://github.com/nullnet-app/contextmint-bridge/releases — load the Chrome zip
unpacked; Safari isn't available yet, so use Chrome for now) with an open
`www.angi.com` tab and its *Site access* allowing `angi.com`. Pairing persists
across invocations.

ContextMint Bridge is the renamed fetchproxy extension (same maintainer; source at
https://github.com/nullnet-app/contextmint-bridge — build it or verify a release
zip with `shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256`).

**Pair per host you intend to fetch, and keep a tab open on it.** The bridge
relays through a tab on the request's own host, so a bare `fpx pair -p angi`
fails with `no tab matching https://angi.com/` — the apex serves no page. Pass
`--subdomain www`, and if you also want the signed-in account data below, open
a `my.angi.com` tab and run `fpx pair -p angi --subdomain my` as well.
(Alternatively `--via-tab <url>` names the relaying tab explicitly.)

No cookie, storage or header scope is declared — Angi's data is server-rendered
and rides the tab's own session, so nothing needs to be read out of the
browser. Keep it that way: widening scope later forces a fresh pairing.

## The one rule: resolve the trade slug first

Angi URLs are `/companylist/us/<state>/<city>/<trade>.htm`. The trade is a
fixed slug (`plumbing`, `roofing`, `air-duct-cleaning`, …), not free text, and
a wrong slug 404s. Resolve from the sitemaps before fetching — plain `curl`:

```sh
# All ~312 trade slugs
curl -s https://www.angi.com/sitemap/

_meta.json

{
  "ownerId": "kn700jq4sjtf2anb0rk3ft4p7n856872",
  "slug": "angi-mcp",
  "version": "1.0.7",
  "publishedAt": 1791588177065
}

references/angi-pages.md

# Angi page shapes and recipes

Every shape below was read off live angi.com bytes (Charlotte, NC / plumbing,
2026-08-10), not inferred from docs. Angi publishes no consumer API — the
search page fires zero XHR, so these pages *are* the API.

Extraction key per page type:

- search / company list → key **`legacyId`** (the provider wrapper)
- pro profile → key **`reviewId`** (the review records)

## 1. Search — pros by trade + city

`GET /companylist/us/<state>/<city>/<trade>.htm[?page=N]`

10 unique pros per page. Each appears **twice** in the payload, so
`--dedupe id` is mandatory.

```sh
fpx get 'https://www.angi.com/companylist/us/nc/charlotte/plumbing.htm' -p angi \
  | node rsc.mjs legacyId --dedupe id > pros.json
jq length pros.json            # 10
```

Provider record (references already resolved by `rsc.mjs`):

```jsonc
{
  "id": "019bea94-1c41-11ee-b010-12f6eb045c11",   // stable uuid — dedupe on this
  "legacyId": "158675609",                        // numeric HomeAdvisor id
  "profileUrl": "/companylist/us/nc/monroe/superior-plumbing-and-drains-reviews-1.htm",
  "logoPhotoUrl": "https://cdn.homeadvisor.com/…",
  "businessType": "LEADS",
  "isSponsored": true,                            // paid placement, not a ranking signal
  "isCorporateAccount": false,
  "recentLeadCount": 2,
  "businessInfo": {
    "businessName": "Superior Plumbing and Drains",
    "businessDescription": "…",
    "yearsInBusiness": 21,
    "serviceArea": "Serving Charlotte, NC and surrounding areas",
    "responseRate": 42,                           // percent
    "responseTime": "1223",                       // string; units undocumented — pass through
    "isAdvertiser": true,
    "amenities": {
      "acceptedPaymentMethods": ["CREDIT_CARD"],
      "emergencyServices": true, "freeEstimates": false, "warrantiesOffered": true,
      "bilingual": false, "veteranOwned": false,
      "smallJobsWelcome": false, "offersCommercialServices": false
    },
    "serviceHours": [...], "presentationCapabilities": {...}
  },
  "contactInfo": { "address": { "street1": "…", "city": "Monroe", "state": "NC", "postalCode": "28110", "country": "US" } },
  "rating": {
    "reviewCount": 34,
    "recommendedRate": 87,                        // percent who'd recommend
    "averageOverallRating": 4.5,                  // rounded, display value
    "averageRatings": {                           // unrounded, per dimension
      "OVERALL": 4.65625, "QUALITY": 4.769, "VALUE": 4.423,
      "PUNCTUALITY": 4.807, "PROFESSIONALISM": 4.769, "RESPONSIVENESS": 4.846
    },
    "bestReview": { "reviewId": "f31be34d-…", "comment": "…", "createdOn": "2020-03-28T23:48:23Z" }
  },
  "tasksOffered": ["Faucets, Fixtures and Pipes - Repair or Replace", …],
  "awards": [...], "proSuppliedPhotos": [...]
}
```

`averageOverallRating` (4.5) and `averageRatings.OVERALL` (4.65625) differ —
the first is the rounded display value. Rank on `averageRatings.OVERALL`.

Recipes:

```sh
# Rank by true overall rating, 

skill-card.md

## Description:

Guides agents in reading Angi's US home-service listings, provider profiles, ratings, reviews, and trade and city directories from a shell without running an MCP server.

This skill is ready for commercial/non-commercial use.

## Publisher:

[chrischall](https://clawhub.ai/user/chrischall)

### License/Terms of Use:

MIT-0

## Use Case:

Developers and agents can find US home-service professionals by trade and city, compare profiles and reviews, and inspect available trade and city directories. An optional workflow reads the user's own Angi account pages when explicitly paired with a signed-in browser tab.

### Deployment Geography for Use:

United States

## Known Risks and Mitigations:

Risk: Pairing a signed-in Angi account tab may expose the user's account pages to the agent.

Mitigation: Pair my.angi.com only when account data is needed, and review retrieved information before sharing it.

Risk: Reading Angi pages requires the fpx CLI and ContextMint Bridge extension in the user's browser.

Mitigation: Install and pair these components only if comfortable fetching pages through the browser; use public sitemaps without the extension for directory lookup.

## Reference(s):

- [angi-mcp release on ClawHub](https://clawhub.ai/chrischall/skills/angi-mcp)
- [Angi page shapes and recipes](artifact/references/angi-pages.md)
- [ContextMint Bridge releases](https://github.com/nullnet-app/contextmint-bridge/releases)
- [Angi trade directory sitemap](https://www.angi.com/sitemap/statecat-sitemap.xml)

## Skill Output:

**Output Type(s):** [Guidance, Shell commands, JSON data]

**Output Format:** [Markdown guidance with shell commands and JSON examples]

**Output Parameters:** [1D]

**Other Properties Related to Output:** [Public listings and reviews; optional signed-in account data only when the user pairs an account tab.]

## Skill Version(s):

1.0.7 (source: ClawHub release metadata)

## Ethical Considerations:

Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
Github ReposUpdated 1d agoRank 70

AionUi

Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!

MCPOPENCLAW
Github ReposUpdated 6mo agoRank 70

activepieces

AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents

OPENCLAW
Github ReposUpdated 6mo agoRank 70

cherry-studio

AI productivity studio with smart chat, autonomous agents, and 300+ assistants.

MCPOPENCLAW
Github ReposUpdated 7mo agoRank 70

CopilotKit

The Frontend for Agents & Generative UI. React + Angular

OPENCLAW

Machine-readable data

The same record, as JSON, for agents and crawlers.

{
  "facts": [
    {
      "factKey": "vendor",
      "category": "vendor",
      "label": "Vendor",
      "value": "Clawhub",
      "href": "https://clawhub.ai/chrischall/skills/angi-mcp",
      "sourceUrl": "https://clawhub.ai/chrischall/skills/angi-mcp",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-11T01:41:02.124Z",
      "isPublic": true
    },
    {
      "factKey": "protocols",
      "category": "compatibility",
      "label": "Protocol compatibility",
      "value": "OpenClaw",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-angi-mcp/contract",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-angi-mcp/contract",
      "sourceType": "contract",
      "confidence": "medium",
      "observedAt": "2026-10-11T01:41:02.124Z",
      "isPublic": true
    },
    {
      "factKey": "traction",
      "category": "adoption",
      "label": "Adoption signal",
      "value": "1.2K downloads",
      "href": "https://clawhub.ai/chrischall/angi-mcp",
      "sourceUrl": "https://clawhub.ai/chrischall/angi-mcp",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-11T01:41:02.124Z",
      "isPublic": true
    },
    {
      "factKey": "latest_release",
      "category": "release",
      "label": "Latest release",
      "value": "1.0.7",
      "href": "https://clawhub.ai/chrischall/angi-mcp",
      "sourceUrl": "https://clawhub.ai/chrischall/angi-mcp",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-10-09T23:22:57.065Z",
      "isPublic": true
    },
    {
      "factKey": "handshake_status",
      "category": "security",
      "label": "Handshake status",
      "value": "UNKNOWN",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-angi-mcp/trust",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-angi-mcp/trust",
      "sourceType": "trust",
      "confidence": "medium",
      "observedAt": null,
      "isPublic": true
    }
  ],
  "events": [
    {
      "eventType": "release",
      "title": "Release 1.0.7",
      "description": "angi-mcp 1.0.7 - Removed outdated or redundant skill-card document (skill-card.md). - Updated logic or documentation in references/rsc.mjs. - No impact to user-facing functionality; documentation and internal references cleanup.",
      "href": "https://clawhub.ai/chrischall/angi-mcp",
      "sourceUrl": "https://clawhub.ai/chrischall/angi-mcp",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-10-09T23:22:57.065Z",
      "isPublic": true
    }
  ]
}

Record generated Oct 11, 2026.

Sponsored

Ads related to angi-mcp and adjacent AI workflows.