From 1b0f80701a58cd0df7322dc625516116e6314301 Mon Sep 17 00:00:00 2001
From: Anthony Ettinger
Date: Wed, 11 Nov 2026 08:02:39 +0000
Subject: [PATCH] feat: WebMCP tools via @profullstack/webmcp (bridges
/api/mcp, search + form tools)
Adds the @profullstack/webmcp embed so an AI agent in the visitor's browser (WebMCP) can use this site's tools.
Co-Authored-By: Claude Opus 5.5
---
src/app/layout.tsx | 12 ++++++++++++
src/app/page.tsx | 2 +-
src/app/podcasts/page.tsx | 2 +-
src/app/radio/page.tsx | 2 +-
src/app/search/page.tsx | 2 +-
src/app/tv/page.tsx | 2 +-
src/components/SubmitForm.tsx | 2 +-
7 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/src/app/layout.tsx b/src/app/layout.tsx
index 1182edb..259e69c 100644
--- a/src/app/layout.tsx
+++ b/src/app/layout.tsx
@@ -129,6 +129,18 @@ const siteJsonLd = {
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
+
+ {/* WebMCP: site tools + the /api/mcp server for the AI agent in the visitor's browser (@profullstack/webmcp). */}
+
+
{/*
Every internal link is a next/link on purpose. The player lives in the
layout and keeps playing across route changes — but only while the
diff --git a/src/app/page.tsx b/src/app/page.tsx
index 0c9f740..d60a820 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -51,7 +51,7 @@ export default async function Home() {
Self-hosted. Missing one?{" "}
Add it.