Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion apps/web/src/lib/security-headers.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ export const buildPolicy = ({ styleNonce } = {}) =>
* styleNonce for its first use): @profullstack/footer 0.4.0 puts it on the
* inline script that posts the newsletter form and reports the result inline.
*/
`script-src 'self' https://crawlproof.com${styleNonce ? ` 'nonce-${styleNonce}'` : ''}`,
`script-src 'self' https://crawlproof.com https://cdn.jsdelivr.net${styleNonce ? ` 'nonce-${styleNonce}'` : ''}`,
/*
* The inline <style>s are @profullstack/footer's and the pit.world network
* footer's, allowed by a per-request nonce rather than 'unsafe-inline' or a
Expand Down
12 changes: 11 additions & 1 deletion apps/web/src/views/Layout.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,16 @@ export const Layout = (props) => {
async
/>
) : null}
{/* WebMCP (@profullstack/webmcp): site_info, open_page, search_site (public JSON search) and the
search form for the AI agent in the visitor's browser. */}
<script
type="module"
data-webmcp=""
src="https://cdn.jsdelivr.net/npm/@profullstack/webmcp@0/src/embed.js"
data-search-api="/api/v1/search?q={query}&limit={limit}"
data-search="/search?q={query}"
data-pages={JSON.stringify({ live: '/live', results: '/results', watch: '/watch', multiview: '/multiview', radio: '/radio', following: '/following', premium: '/premium', about: '/about' })}
/>
</head>
{/* Carries the zone the server has on file, so app.js can report a correction
from any page rather than only from settings -- someone who never opens
Expand Down Expand Up @@ -249,7 +259,7 @@ export const Layout = (props) => {
refining a search means editing what you typed rather than retyping it.
*/}
<search class="topsearch">
<form class="topsearch-form" method="get" action="/search">
<form class="topsearch-form" method="get" action="/search" toolname="search_form" tooldescription="Search teams, games, leagues and channels and show the results page" toolautosubmit="">
<label class="sr-only" for="topsearch-q">
Search
</label>
Expand Down
Loading