Skip to main content
ClaudeWave

Community registry of WebMCP packages for sites that have not implemented WebMCP.

MCP ServersOfficial Registry2 stars0 forksTypeScriptNOASSERTIONUpdated today
ClaudeWave Trust Score
72/100
· OK
Passed
  • Actively maintained (<30d)
  • Clear description
  • Documented (README)
Flags
  • !Licence file present but not machine-readable
Last scanned: 8/28/2026
Install in Claude Code / Claude Desktop
Method: NPX · skills
Claude Code CLI
claude mcp add webmcp-today -- npx -y skills
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "webmcp-today": {
      "command": "npx",
      "args": ["-y", "skills"],
      "env": {
        "BETTER_AUTH_URL": "<better_auth_url>"
      }
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
Detected environment variables
BETTER_AUTH_URL
Use cases

MCP Servers overview

# ⚡ WebMCP Today

WebMCP Today is a registry for declarative packages that add WebMCP tools to
sites that do not expose them. A package describes a site's tools and the API
requests they use. The browser extension installs packages locally and
registers their tools on matching pages.

The registry is live at [webmcp.today](https://webmcp.today).

## Agent Skill

Install the public skill for researching, creating, validating, and safely testing a
WebMCP Today package:

```bash
npx skills@1.5.22 add robertn702/webmcp-today --skill create-webmcp-package
```

The skill creates `webmcp-package.json` and stops before registry publication.

## Packages

| Path              | What                                                                                                        |
| ----------------- | ----------------------------------------------------------------------------------------------------------- |
| `packages/schema` | `@webmcp-today/schema` — published zod package format                                                       |
| `packages/engine` | `@webmcp-today/engine` — API execution engine                                                               |
| `packages/db`     | Drizzle + Neon schema and client                                                                            |
| `packages/mcp`    | `@webmcp-today/mcp-bridge` — published public-beta registry MCP server + local bridge for live WebMCP tools |
| `apps/web`        | Next.js registry UI + public REST API                                                                       |
| `apps/extension`  | WXT extension: package lookup + WebMCP tool injection                                                       |

## Quickstart

```bash
bun install
bunx turbo run build --filter="@webmcp-today/mcp-bridge..."
bun run typecheck && bun run lint && bun run test

# web (needs apps/web/.env — see .env.example)
cd packages/db && bun run db:migrate   # fresh local Neon only
cd apps/web && bun run dev             # http://localhost:3000
bun run scripts/seed.ts                # optional: seed the curated packages

# extension (Chrome 149+; enable chrome://flags/#enable-webmcp-testing only for Chrome native-agent discovery)
cd apps/extension && bun run dev
```

The extension's local bridge fallback works without the WebMCP testing flag. Enable
the flag when you want Chrome's native agent to discover the extension's tools.

## Development

**Prerequisites:** `bun@1.3.14` (pinned in root `package.json` `packageManager`), Node for Next.js/WXT and some CLIs. The local MCP bridge requires Node 20 or newer or Bun.

**Setup:**

```bash
bun install
bunx turbo run build --filter="@webmcp-today/mcp-bridge..." # creates the opencode.json MCP entrypoint
cp apps/web/.env.example apps/web/.env   # then fill real values
```

`apps/web/.env` needs `DATABASE_URL` (Neon), a per-environment `BETTER_AUTH_SECRET` (`openssl rand -base64 32`), a shared `OAUTH_PROXY_SECRET` for local/Preview/Production (`openssl rand -base64 32`), the development GitHub OAuth App credentials (callback `http://localhost:3000/api/auth/callback/github`), and `BETTER_AUTH_URL=http://localhost:3000`. Leave `OAUTH_PROXY_PRODUCTION_URL` unset locally; in Vercel Preview and Production it is `https://webmcp.today` and routes OAuth through the production GitHub OAuth App callback.

```bash
bun run --filter @webmcp-today/db db:migrate   # or cd packages/db && bun run db:migrate — applies Drizzle migrations to Neon
# schema changes: bun run --filter @webmcp-today/db db:generate && db:migrate (db:push for quick prototyping)

bun run --filter @webmcp-today/web db:seed     # or cd apps/web && bun run db:seed — runs scripts/seed.ts, seeds curated packages
```

These are ordinary fresh-database setup commands. They do not reset an existing
database.

**Historical migration baseline:**
`packages/db/migrations/0000_init.sql` is the initial schema baseline and will
not replay against an existing deployed Neon database. Never reset or recreate
production data to apply it. For schema changes, generate and review a new
Drizzle migration and apply it with `db:migrate`. Run `db:seed` only for fresh
or local databases until it is idempotent and version-aware; use a reviewed
production procedure for curated seed changes.

**Running locally:**

- Web: `cd apps/web && bun run dev` → `http://localhost:3000` (Next.js). Extension's default registry URL points here.
- Extension: `cd apps/extension && bun run dev` → WXT dev server on `http://localhost:5173`, launches a dedicated Chrome profile at `.wxt/chrome-profile/` with `--enable-features=WebMCP,WebMCPTesting` force-enabled (`chrome://flags` still shows "Default" — check `chrome://version`). One instance only — second crashes on profile lock and corrupts `.output/`. Model Context Tool Inspector is installed once into that profile and persists.
- Local bridge: configure the native host in `packages/mcp/README.md`, then start `node packages/mcp/dist/index.js`. Its MCP tools invoke live WebMCP tools in the selected normal Chrome tab without Chrome DevTools MCP, a remote-debugging port, or `chrome.debugger`. The built-in fallback works without the WebMCP testing flag; enable it only for Chrome's native agent to discover the tools.
- Ports: web 3000 / WXT 5173. Find strays with `lsof -nP -i :3000 -i :5173`; killing a bun wrapper does NOT kill its node child.

**Quality gates:** `bun run typecheck && bun run lint && bun run test` before every commit — same as CI (`.github/workflows/ci.yml` via `oven-sh/setup-bun@v2` `1.3.14` + `--frozen-lockfile`). Pre-commit runs `husky` + `lint-staged` (eslint + prettier on staged source, prettier on json/md/css/yaml) and enforces `CLAUDE.md -> AGENTS.md` symlink drift.

**Deeper context:** root `AGENTS.md` (stack, conventions, decisions log, cross-cutting gotchas) and nested `apps/web/AGENTS.md` (package-install registry model, served truth, env/t3-env notes) + `apps/extension/AGENTS.md` (dev browser, silent-fallback trap, selector-rot recipe).

## License

Split, so the pieces worth adopting stay permissive:

- **AGPL-3.0-only** — the server: `apps/web` and `packages/db` (root `LICENSE`). Run a modified copy as a network service and you owe your users the source.
- **MIT** — everything built to be adopted freely: `packages/schema` (package format), `packages/engine` (execution engine), `packages/mcp` (MCP server), `packages/curated-packages` (curated packages), and `apps/extension` (browser extension). Each carries its own `LICENSE`.

Community-submitted packages are not code and are not covered by either license. Publishing one grants the registry a permanent license to host and redistribute it, and offers it onward under **CC0 1.0** — see [the terms](https://webmcp.today/terms) (`apps/web/app/(registry)/terms`). `packages/curated-packages` is the first-party exception: it ships as MIT source.

Contributions are covered by the agreement in [CONTRIBUTING.md](CONTRIBUTING.md).

What people ask about webmcp-today

What is robertn702/webmcp-today?

+

robertn702/webmcp-today is mcp servers for the Claude AI ecosystem. Community registry of WebMCP packages for sites that have not implemented WebMCP. It has 2 GitHub stars and its last recorded update is dated 2026-08-27.

How do I install webmcp-today?

+

You can install webmcp-today by cloning the repository (https://github.com/robertn702/webmcp-today) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is robertn702/webmcp-today safe to use?

+

Our security agent has analyzed robertn702/webmcp-today and assigned a Trust Score of 72/100 (tier: OK). See the full breakdown of passed checks and flags on this page.

Who maintains robertn702/webmcp-today?

+

robertn702/webmcp-today is maintained by robertn702. The last recorded GitHub activity is dated 2026-08-27, with 6 open issues.

Are there alternatives to webmcp-today?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy webmcp-today to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: robertn702/webmcp-today
[![Featured on ClaudeWave](https://claudewave.com/api/badge/robertn702-webmcp-today)](https://claudewave.com/repo/robertn702-webmcp-today)
<a href="https://claudewave.com/repo/robertn702-webmcp-today"><img src="https://claudewave.com/api/badge/robertn702-webmcp-today" alt="Featured on ClaudeWave: robertn702/webmcp-today" width="320" height="64" /></a>

More MCP Servers

webmcp-today alternatives