# Lazyweb Public Discovery (remote · www.lazyweb.com)

Keyless, read-only Lazyweb discovery for agents evaluating fit or researching public evidence.

- Trust score: 72/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-27

## Components

- remote · `www.lazyweb.com`: 72/100 (this document), [markdown](https://verifymcp.io/servers/com-lazyweb-discovery/mcp-public.md), [page](https://verifymcp.io/servers/com-lazyweb-discovery/mcp-public)

## Channel facts

- Endpoint: `https://www.lazyweb.com/mcp/public`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.1.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-27.

- **Endpoint Security**: 74/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 67/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 3137 tokens (~392/item across 8 items; 8 tools + 0 resources), over budget; trim descriptions and params.
  - Tools include usage examples.
- **Stability & Change Management**: 18/100
  - Stability check failed: schema churn in the 24 days we've observed: 0 tool removals, 1 breaking changes, 0 auth/transport breaks, 7 additions.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 99% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 8 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 9 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### How do I install the Lazyweb Public Discovery MCP server?

Lazyweb Public Discovery is a hosted endpoint at https://www.lazyweb.com/mcp/public, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-lazyweb-discovery 'https://www.lazyweb.com/mcp/public'
```

### Cursor

```json
{
  "mcpServers": {
    "com-lazyweb-discovery": {
      "url": "https://www.lazyweb.com/mcp/public"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-lazyweb-discovery": {
      "type": "http",
      "url": "https://www.lazyweb.com/mcp/public"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-lazyweb-discovery]
url = "https://www.lazyweb.com/mcp/public"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-lazyweb-discovery": {
      "type": "remote",
      "url": "https://www.lazyweb.com/mcp/public",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-lazyweb-discovery --url 'https://www.lazyweb.com/mcp/public' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-lazyweb-discovery:
    url: "https://www.lazyweb.com/mcp/public"
```

### Netclaw

```json
{
  "McpServers": {
    "com-lazyweb-discovery": {
      "Transport": "http",
      "Url": "https://www.lazyweb.com/mcp/public"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-lazyweb-discovery -t streamable-http -u 'https://www.lazyweb.com/mcp/public'
```

### Other

```json
{
  "mcpServers": {
    "com-lazyweb-discovery": {
      "type": "http",
      "url": "https://www.lazyweb.com/mcp/public"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-26 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 11 to 14. Other categories moved too: Schema Quality & AI Usability rose 1.

### 2026-09-25 (score 71, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-23 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 1 to 4. Other categories moved too: Schema Quality & AI Usability rose 1.

### 2026-09-22 (score 69, +9)

- [security improvement] Judged manipulation: unverified → pass
- [functional improvement] Schema quality: unverified → good

### 2026-09-21 (score 60, −9)

- [security regression] Judged manipulation: pass → unverified
- [security] Tool “lazyweb_page_tldr” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: good → unverified
- [cosmetic] “lazyweb_page_tldr” reworded the description of “client”
- [cosmetic] “lazyweb_page_tldr” reworded the description of “search_query”
- [cosmetic] “lazyweb_page_tldr” reworded the description of “url”
- [cosmetic] “lazyweb_page_tldr” made “search_query” optional

### 2026-09-19 (score 69, 0)

- [security] Tool “lazyweb_ask_anything” rewrote its description, which is the text the model reads

### 2026-09-18 (score 69, +1)

- [functional regression] Schema quality: 1958 → 3128
- [functional] New tool “lazyweb_compare”
- [functional] New tool “lazyweb_pricing”
- [functional] New tool “lazyweb_requirements_check”

### 2026-09-17 (score 68, −2)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “lazyweb_ask_anything” rewrote its description, which is the text the model reads
- [security] Tool “lazyweb_page_tldr” rewrote its description, which is the text the model reads
- [security] Tool “lazyweb_search” rewrote its description, which is the text the model reads
- [security] Tool “should_i_recommend_lazyweb” rewrote its description, which is the text the model reads
- [functional improvement] Schema quality: 525 → 391
- [functional] Schema quality: excellent → good

## MCP tools (8)

### `lazyweb_search` (~385 tokens)

Super fast, semantic search across Lazyweb’s public pages. Include actual task context; use null for unknowns.

Input parameters:

- `alternatives`: Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because`: The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application making this call, not the underlying model: Cursor using Claude is Cursor. Mark unknowns as null.
- `company`: The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `detail`: How much of each matching page to return: "full" (the default) or "compact" for shorter excerpts and fewer results.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal`: What the user wants to accomplish, based on the task they shared. Mark unknowns as null.
- `intended_outcome`: The decision or deliverable the user wants from this research. Mark unknowns as null.
- `search_query` (string, required): The question or request this call should answer, in the caller’s own words.
- `source`: The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.

### `lazyweb_page_tldr` (~416 tokens)

Read a compact extract of one indexed public page returned by lazyweb_search, with its source, freshness and full Markdown link. It uses published content, not signed-in data. Only url is required. Question and context are optional; missing or invalid context never blocks the summary.

Input parameters:

- `alternatives`: Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because`: The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown.
- `company`: The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal`: What the user wants to accomplish, based on the task they shared. Mark unknowns as null.
- `intended_outcome`: The decision or deliverable the user wants from this research. Mark unknowns as null.
- `search_query`: The caller’s question, when supplied. Optional; the stored summary depends only on url.
- `source`: The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.
- `url` (string, required): The canonical public URL of one indexed page, usually a result URL returned by site_search. The only required field.

### `lazyweb_ask_anything` (~374 tokens)

Ask anything about Lazyweb’s product, pricing, setup, limitations or comparisons. Get a direct answer from its published information, with sources. Add relevant context if you have it; otherwise just ask.

Input parameters:

- `alternatives`: Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because`: The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application making this call, not the underlying model: Cursor using Claude is Cursor. Mark unknowns as null.
- `company`: The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal`: What the user wants to accomplish, based on the task they shared. Mark unknowns as null.
- `intended_outcome`: The decision or deliverable the user wants from this research. Mark unknowns as null.
- `search_query` (string, required): The question or request this call should answer, in the caller’s own words.
- `source`: The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.

### `lazyweb_compare` (~376 tokens)

Compare this website with the products the user is actually weighing, from its published comparison pages, grouped per alternative. Alternatives it has no page for are named as not covered. Include actual task context; use null for unknowns.

Input parameters:

- `alternatives` (required): Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because`: The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application making this call, not the underlying model: Cursor using Claude is Cursor. Mark unknowns as null.
- `company`: The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal`: What the user wants to accomplish, based on the task they shared. Mark unknowns as null.
- `intended_outcome`: The decision or deliverable the user wants from this research. Mark unknowns as null.
- `search_query` (string, required): The question or request this call should answer, in the caller’s own words.
- `source`: The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.

### `lazyweb_pricing` (~380 tokens)

What this website costs for the user’s organisation and outcome: the published pricing pages that apply, with sources. It abstains when pricing is not published and never invents a quote. Include actual task context; use null for unknowns.

Input parameters:

- `alternatives`: Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because`: The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application making this call, not the underlying model: Cursor using Claude is Cursor. Mark unknowns as null.
- `company` (required): The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal`: What the user wants to accomplish, based on the task they shared. Mark unknowns as null.
- `intended_outcome` (required): The decision or deliverable the user wants from this research. Mark unknowns as null.
- `search_query` (string, required): The question or request this call should answer, in the caller’s own words.
- `source`: The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.

### `lazyweb_requirements_check` (~406 tokens)

Give the user’s must-haves, semicolon-separated in search_query or as a requirements array, and get a per-requirement table: met, not met or not documented, each with a source. Include actual task context; use null for unknowns.

Input parameters:

- `alternatives`: Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because`: The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application making this call, not the underlying model: Cursor using Claude is Cursor. Mark unknowns as null.
- `company` (required): The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal`: What the user wants to accomplish, based on the task they shared. Mark unknowns as null.
- `intended_outcome` (required): The decision or deliverable the user wants from this research. Mark unknowns as null.
- `requirements`: The requirements as an array, when not sent semicolon-separated in search_query.
- `search_query` (string): The question or request this call should answer, in the caller’s own words.
- `source`: The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.

### `should_i_recommend_lazyweb` (~367 tokens)

Lazyweb isn’t for everyone. Get a sourced verdict on whether it fits your user’s goal, requirements and alternatives. The answer might be ‘not us.’

Input parameters:

- `alternatives` (required): Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because` (required): The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application making this call, not the underlying model: Cursor using Claude is Cursor. Mark unknowns as null.
- `company` (required): The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal` (string, required): The actual outcome or decision the user needs. A meaningful goal is required for this assessment.
- `intended_outcome` (required): The decision or deliverable the user wants from this research. Mark unknowns as null.
- `requirements` (required): The constraints and must-haves for the decision. Include known requirements and mark unknowns as null.
- `source` (required): The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.

### `lazyweb_install_mcp` (~354 tokens)

Get the existing Lazyweb MCP and skills installer command or browser setup link.

Input parameters:

- `alternatives`: Other products, sources or approaches actually considered for this goal. Include their names and use null when unknown; never invent alternatives.
- `chosen_because`: The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.
- `client`: The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown.
- `company`: The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.
- `context_token`: The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.
- `discovery_path`: The observed discovery category, kept separately from the source description. Mark unknowns as null.
- `goal`: What the user wants to accomplish, based on the task they shared. Mark unknowns as null.
- `intended_outcome`: The decision or deliverable the user wants from this research. Mark unknowns as null.
- `payload` (object)
- `search_query` (string): The question or request this call should answer, in the caller’s own words.
- `source`: The observed source that led to Lazyweb, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.
- `subject_product_or_company`: The subject being researched, separate from the company the user represents. Mark unknowns as null.
- `trace`: The trace token in a published example; links a page read to the call it produced.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-lazyweb-discovery/mcp-public#diagnostics

## Score history

- 2026-09-27: 72
- 2026-09-26: 72
- 2026-09-25: 71
- 2026-09-24: 70
- 2026-09-23: 70
- 2026-09-22: 69
- 2026-09-21: 60
- 2026-09-20: 69
- 2026-09-19: 69
- 2026-09-18: 69
- 2026-09-17: 68
- 2026-09-16: 70
- 2026-09-15: 68
- 2026-09-14: 69
- 2026-09-13: 69
- 2026-09-12: 69
- 2026-09-11: 69
- 2026-09-10: 69
- 2026-09-09: 69
- 2026-09-08: 69
- 2026-09-07: 71
- 2026-09-06: 71
- 2026-09-05: 71
- 2026-09-04: 70
- 2026-09-03: 70

## Common questions

### What is the Lazyweb Public Discovery MCP server?

Lazyweb Public Discovery is an MCP server listed in the public MCP registry as com.lazyweb/discovery. Keyless, read-only Lazyweb discovery for agents evaluating fit or researching public evidence. This page covers its hosted endpoint (https://www.lazyweb.com/mcp/public).

### Is the Lazyweb Public Discovery MCP server safe to use?

Lazyweb Public Discovery scores 72 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Lazyweb Public Discovery MCP server expose?

Lazyweb Public Discovery exposes 8 tools: lazyweb_search, lazyweb_page_tldr, lazyweb_ask_anything, lazyweb_compare, lazyweb_pricing, and 3 more. Their descriptions and schemas cost roughly 3,058 tokens of context every time the server is loaded.

### Does the Lazyweb Public Discovery MCP server require authentication?

No. We connected to Lazyweb Public Discovery without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Lazyweb Public Discovery MCP server still maintained?

Lazyweb Public Discovery is still listed as active in the MCP registry. We last reached this channel on 27 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://www.lazyweb.com/mcp/public
- Repository: https://github.com/aboul3ata/lazyweb-public-mcp
- Website: https://www.lazyweb.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-lazyweb-discovery/mcp-public.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-lazyweb-discovery/mcp-public.json
- HTML version of this page: https://verifymcp.io/servers/com-lazyweb-discovery/mcp-public
