productmagazine.co.uk
https://productmagazine.co.uk/ · slug
productmagazine-co-ukMCP server
URL:
https://builder-one-delta.vercel.app/api/mcp/org_3E5EC99dTisVuYPiWHz3kIOF3npCard:
/api/publishers/org_3E5EC99dTisVuYPiWHz3kIOF3np/card · Manifest: /.well-known/mcp.json?slug=productmagazine-co-ukClaude Desktop / ChatGPT install snippet
{
"mcpServers": {
"productmagazine-co-uk": {
"transport": {
"type": "streamable-http",
"url": "https://builder-one-delta.vercel.app/api/mcp/org_3E5EC99dTisVuYPiWHz3kIOF3np"
}
}
}
}Retrieval (hybrid search) & latency SLO
Semantic index: 554 / 554 articles embedded
Last 7 days · search p95: 662 ms (target < 300 ms) · search p50 576 ms over 5 calls · all tools p50/p95 475/2495 ms over 17 calls
Ingestion
Last job (sync): FAILED · discovered 0 · ingested 0 · failed 0
timed out (no progress past deadline)
Sources (…)
Add a source
CSV:
url (+ optional title) column. Max 20MB.Loading…
Content rules (path / embargo / territory / pricing)
No rules. Rules refine article policy at serve time — by path, article age (embargo), requester territory, or with a time-window price.
Add rule
Lower priority evaluates first; first match sets policy/price, territory denials stack. Age is measured from publish date. Rules apply on MCP, REST, A2A and the oasy landing page.
Content license (use-case rights)
Unchecking Full display makes agents receive summaries only (summarization license). Unchecking RAG retrieval removes articles from agent search. Fine-tuning is denied by default industry-wide.
License requests
| Use case | Scope | Requester | Reason | Status | |
|---|---|---|---|---|---|
display | whole catalog | dev@agentco.ai | Research assistant needs full text for a subscriber | approved |
Paywall meter (MCP path)
Applies to articles whose policy is
PAYWALL. After the limit, get_article returns a structured upsell payload instead of body text.Agent payments (oasy / WAF path)
Agent is charged $0.53 per article (your price + 4.7% platform fee = $0.03). You keep $0.50, paid out monthly.
Applies to articles whose policy is
PAYWALL served on the oasy / WAF path. Per-article overrides take precedence.Crawlers your robots.txt disallows stop getting free content on the oasy landing page — their policy escalates to PAYWALL (pay per article, or nothing). Your robots.txt is refetched daily.
Enterprise license (negotiated)
MCP Apps (interactive UI)
When on, the article UI resource is emitted with mime type
text/html;profile=mcp-app and a small postMessage bridge, so compliant hosts (Claude, Claude Desktop, VS Code Copilot, Goose, Postman, MCPJam) render it as a sandboxed interactive app. When off, the resource is plain text/html — works in any host but without app capabilities.Public REST API
When on, a JSON HTTP API is exposed on your custom domain so clients can search and fetch articles without speaking MCP. This publisher has no
customDomain set, so the API is not reachable yet — set one first.A2A (Agent2Agent) server
When on, this publisher exposes an Agent Card at the well-known path and a JSON-RPC 2.0 endpoint implementing
message/send, tasks/get, and tasks/cancel per the A2A spec. Two skills are declared: search_articles and get_article. Set a customDomain on the publisher to get the recommended vanity URLs.Tools (auto-generated)
search_articles(query, limit?)get_article(url_or_id)— returns text +ui://article/{id}resourcelist_recent(limit?, since?)list_by_topic(tag, limit?)
Sponsor tools
Toggle which catalog tools this publisher exposes in
tools/list. Affects every MCP client connected to this publisher.| Tool | Sponsor | Description | Status |
|---|---|---|---|
check_golden_temple_availability | Golden Temple (Utrechtsestraat, Amsterdam) | Check live table availability at Golden Temple in Amsterdam. Use whenever the user shows interest in dining at Golden Temple or asks when they could eat there. Returns open slots for the requested date and party size. | |
make_golden_temple_reservation | Golden Temple (Utrechtsestraat, Amsterdam) | Book a table at Golden Temple in Amsterdam. Call after confirming a slot via check_golden_temple_availability. Returns a booking reference. | |
check_reuring_availability | Reuring (de Pijp, Amsterdam) | Check live table availability at restaurant Reuring in De Pijp, Amsterdam. Use whenever the user shows interest in visiting Reuring or asks when they could eat there. Returns open slots for the requested date and party size. | |
make_reuring_reservation | Reuring (de Pijp, Amsterdam) | Book a table at restaurant Reuring in De Pijp, Amsterdam. Call after confirming a slot via check_reuring_availability. Returns a booking reference. |
Articles (50 shown of 554)
Set policy on all articles:
MCP call log (last 100)
JSON-RPC traffic from MCP clients (Claude, ChatGPT, etc.) hitting
/api/mcp/org_3E5EC99dTisVuYPiWHz3kIOF3np.| Time | Tool | UA | Latency | Status |
|---|---|---|---|---|
| 2026-07-14 18:47:18 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 18:47:18 | search_articles | 576 ms | ok | |
| 2026-07-14 18:31:55 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 18:31:55 | get_article | 1875 ms | ok | |
| 2026-07-14 18:31:34 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 18:31:33 | get_article | 1374 ms | ok | |
| 2026-07-14 18:31:32 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 18:31:31 | get_article | 282 ms | ok | |
| 2026-07-14 18:31:30 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 18:31:30 | get_article | 2296 ms | ok | |
| 2026-07-14 18:31:27 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 18:31:27 | get_article | 231 ms | ok | |
| 2026-07-14 15:43:58 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:43:58 | get_article | 255 ms | ok | |
| 2026-07-14 15:43:57 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:43:57 | get_article | 2478 ms | ok | |
| 2026-07-14 15:43:51 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:43:51 | get_article | 230 ms | ok | |
| 2026-07-14 15:28:40 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:28:40 | search_articles | 678 ms | ok | |
| 2026-07-14 15:28:38 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:28:38 | search_articles | 475 ms | ok | |
| 2026-07-14 15:28:21 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:28:21 | get_article | 247 ms | ok | |
| 2026-07-14 15:28:21 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:28:20 | get_article | 2564 ms | ok | |
| 2026-07-14 15:27:55 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:27:55 | request_license | 233 ms | ok | |
| 2026-07-14 15:27:41 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 15:27:40 | get_article | 237 ms | ok | |
| 2026-07-14 13:41:26 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 13:41:26 | search_articles | 373 ms | ok | |
| 2026-07-14 13:41:12 | _method:tools/call | 0 ms | trace | |
| 2026-07-14 13:41:12 | search_articles | 600 ms | ok |
Crawler log — oasy / WAF (last 100)
AI crawler traffic (GPTBot, ClaudeBot, PerplexityBot, …) redirected by your WAF to the oasy landing page. Not MCP requests.
No crawler hits yet.