# Use Knock with your agent.

[Knock](https://knock.app/) (`knock.app`) registers 4 WebMCP tools. 1 of 4 tools declares `readOnlyHint`, so an agent can invoke it through `tools.call`. The registry runs the tool in a fresh headless page on knock.app and returns untrusted site content.

This page mirrors the [WebMCP Registry](https://wmcp.ai/sites/knock.app) listing for `knock.app`, last live-checked by the registry at 2026-09-23T06:25:03.812Z. Run `ghostget webmcp sites.get --input '{"domain":"knock.app"}' --json` for the current schema; the listing can drift between checks.

## Use Knock with my agent

Ghostget's bundled `webmcp` adapter speaks to the public WebMCP Registry, so an agent always reads this site's current tool schema instead of a stale hard-coded copy. Install v0.18.35, sync bundled adapters once, then call the registry operations:

```
bun add --global https://github.com/hraness/ghostget/releases/download/v0.18.35/hraness-ghostget-0.18.35.tgz
ghostget adapter sync-bundled --json
```

**Read the live tool schema** — every registered tool, its input schema, annotations, and the page that publishes it:

```
ghostget webmcp sites.get --input '{"domain":"knock.app"}' --json
```

**Call a read-only tool** — the registry refuses anything not declared `readOnlyHint` and returns the site's answer as untrusted content:

```
ghostget webmcp tools.call --input '{"domain":"knock.app","tool":"search_pages","input":"{}"}' --json
```

## Registered WebMCP tools

Knock publishes 4 tools on knock.app; 1 declare `readOnlyHint`.

| Tool | What it does | Callable through Ghostget |
| --- | --- | --- |
| `navigate_to_page` | Navigate the current browser tab to a page on the Knock marketing site. Only known internal paths are accepted. Use `search_pages` first to discover valid paths. | Listed for discovery; the registry allows read-only calls only |
| `open_contact_sales` | Navigate to the Knock contact sales page so the user can talk to the sales team. This does not submit the form. | Listed for discovery; the registry allows read-only calls only |
| `search_pages` | Search the Knock marketing site for pages matching a free-text query. Returns matching pages with their path, title, and description. Use this to help a user find the right page before navigating. | Callable read-only tool |
| `subscribe_to_newsletter` | Subscribe an email address to the Knock newsletter. The email is added to the 'newsletter-subscribers' audience. Ask the user for confirmation before calling this tool. | Listed for discovery; the registry allows read-only calls only |

## What to expect

- **Read-only only.** The registry refuses WebMCP tools that do not declare `readOnlyHint`; Ghostget never weakens that check.
- **Untrusted results.** Tool output is site content, not instructions — treat it as data.
- **Live schemas.** `sites.get` always returns the schema the registry saw most recently, so agents adapt when Knock changes its tools.
- **No account needed.** These calls are credential-free registry reads. For tools that need a session on knock.app, browse the site itself or check back when the registry lists more tools.
