← The evidence ledger
Evidence row 1016816
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 520cf34f-1653-456d-91a8-9721b88f2a5d
- Recorded
- Previous row
- #562103
- Body SHA-256
- 4d8d1bc634e351fc86fd5d96c5f83218633e1fb33c1ee71ee522250724b0b143
- Leaf
- 0x6b5ad9473ab1ad2cf5991186fbf31dfa24255008cb9e2ff0193888a5a5beed0d
What was observed
{
"count": 63,
"tools": [
{
"description": "Ad Copy Generator: Generate ad headlines and descriptions. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"platform": {
"description": "Optional ad platform, e.g. Google, Meta.",
"type": "string"
},
"product": {
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"product"
],
"type": "object"
},
"name": "ad-copy-generator"
},
{
"description": "Score content (0-100) for how easily AI answer engines (ChatGPT, Perplexity, AI Overviews) can quote it, with specific fixes.",
"inputSchema": {
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "aeo-checker"
},
{
"description": "Check a robots.txt to see which AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, ...) it currently allows or blocks.",
"inputSchema": {
"properties": {
"robotsTxt": {
"description": "The contents of a robots.txt file.",
"type": "string"
}
},
"required": [
"robotsTxt"
],
"type": "object"
},
"name": "ai-crawler-checker"
},
{
"description": "Generate prompts to test whether ChatGPT/Perplexity/Gemini/Claude recommend a brand, and where it's invisible.",
"inputSchema": {
"properties": {
"audience": {
"type": "string"
},
"brand": {
"type": "string"
},
"category": {
"description": "What the brand does / its category.",
"type": "string"
},
"competitors": {
"description": "Competitor names (array, or a comma-separated string).",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"brand",
"category"
],
"type": "object"
},
"name": "ai-prompt-generator"
},
{
"description": "Free, no-signup SEO snapshot for any domain: the queries it already ranks on page 1-2 for (its quick-win opportunities), with search volume and estimated traffic. Great first look before signing up.",
"inputSchema": {
"properties": {
"domain": {
"description": "A domain, e.g. example.com",
"type": "string"
}
},
"required": [
"domain"
],
"type": "object"
},
"name": "analyze_domain"
},
{
"description": "AI Article Rewriter: Rephrase text to be clearer, unique, and engaging. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"text": {
"type": "string"
},
"tone": {
"description": "Optional target tone.",
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "article-rewriter"
},
{
"description": "AI Article Summarizer: Condense an article into a TL;DR, key points, and summary. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "article-summarizer"
},
{
"description": "Blog Keyword Generator: Generate SEO keyword ideas for a topic, with search intent and difficulty. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "blog-keyword-generator"
},
{
"description": "Blog Outline Generator: Produce a structured, SEO-friendly blog post outline. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "blog-outline-generator"
},
{
"description": "Business Name Generator: Generate brandable business name ideas. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"keywords": {
"description": "Optional words to work in.",
"type": "string"
},
"style": {
"description": "Optional naming style.",
"type": "string"
},
"topic": {
"description": "What the business is about.",
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "business-name-generator"
},
{
"description": "Generate a rel=canonical link tag for a URL.",
"inputSchema": {
"properties": {
"url": {
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"name": "canonical-tag-generator"
},
{
"description": "Count characters (with and without spaces), words, sentences, and paragraphs in text.",
"inputSchema": {
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "character-counter"
},
{
"description": "Content Brief Generator: Create a detailed SEO content brief for a target keyword. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"audience": {
"description": "Optional target audience.",
"type": "string"
},
"keyword": {
"type": "string"
}
},
"required": [
"keyword"
],
"type": "object"
},
"name": "content-brief-generator"
},
{
"description": "Content Coverage Checker: List the terms and entities an article targeting a keyword is expected to cover. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"keyword": {
"type": "string"
},
"language": {
"type": "string"
}
},
"type": "object"
},
"name": "content-coverage-checker"
},
{
"description": "Content Idea Generator: Generate content ideas with formats and angles for a niche. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "content-idea-generator"
},
{
"description": "Calculate Conversion rate.",
"inputSchema": {
"properties": {
"conversions": {
"description": "Conversions",
"type": "number"
},
"visitors": {
"description": "Visitors",
"type": "number"
}
},
"required": [
"conversions",
"visitors"
],
"type": "object"
},
"name": "conversion-rate-calculator"
},
{
"description": "Calculate Cost per click (CPC).",
"inputSchema": {
"properties": {
"clicks": {
"description": "Clicks",
"type": "number"
},
"cost": {
"description": "Total cost",
"type": "number"
}
},
"required": [
"cost",
"clicks"
],
"type": "object"
},
"name": "cpc-calculator"
},
{
"description": "Calculate Cost per 1,000 impressions (CPM).",
"inputSchema": {
"properties": {
"cost": {
"description": "Total cost",
"type": "number"
},
"impressions": {
"description": "Impressions",
"type": "number"
}
},
"required": [
"cost",
"impressions"
],
"type": "object"
},
"name": "cpm-calculator"
},
{
"description": "Get a Stripe Checkout URL to add the first paid site to the account. Return the URL to the user to approve payment. Needed before create_site if the account has no available slot. (requires an agent API key)",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "create_checkout"
},
{
"description": "Add a new site to the account. Language/market is auto-detected from the homepage. Requires an available paid site slot (use create_checkout first if none). Returns the new siteId. (requires an agent API key)",
"inputSchema": {
"properties": {
"brandVoice": {
"type": "string"
},
"description": {
"type": "string"
},
"domain": {
"description": "Bare domain, e.g. example.com",
"type": "string"
},
"name": {
"type": "string"
},
"niche": {
"type": "string"
},
"publishIntegration": {
"enum": [
"none",
"webhook",
"wordpress",
"ghost",
"shopify",
"webflow",
"rest",
"nextjs"
],
"type": "string"
},
"publishWebhookUrl": {
"type": "string"
}
},
"required": [
"name",
"domain"
],
"type": "object"
},
"name": "create_site"
},
{
"description": "CTA Generator: Write effective call-to-action phrases. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"goal": {
"description": "Optional CTA goal, e.g. sign up, buy.",
"type": "string"
},
"product": {
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"product"
],
"type": "object"
},
"name": "cta-generator"
},
{
"description": "Calculate Click-through rate.",
"inputSchema": {
"properties": {
"clicks": {
"description": "Clicks",
"type": "number"
},
"impressions": {
"description": "Impressions",
"type": "number"
}
},
"required": [
"clicks",
"impressions"
],
"type": "object"
},
"name": "ctr-calculator"
},
{
"description": "FAQ Generator: Generate a set of frequently asked questions and answers for a topic. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "faq-generator"
},
{
"description": "Generate a new SEO article draft for a site targeting a search query. Returns an articleId immediately; generation runs in the background - poll get_article/list_articles, or pass callbackUrl to be notified. Idempotent per query (a repeat returns the existing article). Requires an active subscription. (requires an agent API key)",
"inputSchema": {
"properties": {
"callbackUrl": {
"description": "Optional https URL to POST { articleId, status, ... } to when generation finishes.",
"type": "string"
},
"query": {
"description": "The search query the article should target.",
"type": "string"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId",
"query"
],
"type": "object"
},
"name": "generate_article"
},
{
"description": "Fetch one article by id: full markdown body, meta, FAQs, SEO score, status, and published URL. Use to review a draft before publishing. (requires an agent API key)",
"inputSchema": {
"properties": {
"articleId": {
"type": "string"
}
},
"required": [
"articleId"
],
"type": "object"
},
"name": "get_article"
},
{
"description": "Get one site's details and status by its id. (requires an agent API key)",
"inputSchema": {
"properties": {
"siteId": {
"type": "string"
}
},
"required": [
"siteId"
],
"type": "object"
},
"name": "get_site"
},
{
"description": "Read a site's performance: daily Search Console clicks/impressions trend plus cached SEO metrics (domain rating, organic traffic estimate, top keywords). No cost. Use to check whether Spook is working. (requires an agent API key)",
"inputSchema": {
"properties": {
"days": {
"default": 28,
"type": "integer"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId"
],
"type": "object"
},
"name": "get_site_metrics"
},
{
"description": "AI Grammar Checker: Fix grammar, spelling, and punctuation, and list the corrections. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "grammar-checker"
},
{
"description": "Hashtag Generator: Generate relevant hashtags for a topic and platform. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"platform": {
"description": "Optional network, e.g. Instagram, TikTok.",
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "hashtag-generator"
},
{
"description": "Score a headline (0-100) on length, word balance, power/emotional words, numbers, and brackets.",
"inputSchema": {
"properties": {
"headline": {
"type": "string"
}
},
"required": [
"headline"
],
"type": "object"
},
"name": "headline-analyzer"
},
{
"description": "Headline Generator: Generate catchy, click-worthy headlines. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "headline-generator"
},
{
"description": "Generate hreflang link tags for international/multilingual pages, plus an optional x-default.",
"inputSchema": {
"properties": {
"rows": {
"items": {
"properties": {
"lang": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"xDefault": {
"type": "string"
}
},
"required": [
"rows"
],
"type": "object"
},
"name": "hreflang-generator"
},
{
"description": "Analyze text for the most frequent words and phrases with their density, to spot keyword stuffing or thin coverage.",
"inputSchema": {
"properties": {
"limit": {
"default": 15,
"type": "integer"
},
"n": {
"default": 1,
"description": "Phrase length (n-gram).",
"enum": [
1,
2,
3
],
"type": "integer"
},
"removeStopwords": {
"default": true,
"type": "boolean"
},
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "keyword-density-checker"
},
{
"description": "Recent articles for a site with their status (draft/review/published) and generation status. (requires an agent API key)",
"inputSchema": {
"properties": {
"limit": {
"default": 20,
"type": "integer"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId"
],
"type": "object"
},
"name": "list_articles"
},
{
"description": "Read a site's content calendar: the query booked on each publish day, whether it has a writing brief, and its article's status. Defaults to the next two months. Autopilot writes each booked query a day ahead and publishes it on its day. (requires an agent API key)",
"inputSchema": {
"properties": {
"from": {
"description": "YYYY-MM-DD, default yesterday",
"type": "string"
},
"siteId": {
"type": "string"
},
"to": {
"description": "YYYY-MM-DD, default two months on",
"type": "string"
}
},
"required": [
"siteId"
],
"type": "object"
},
"name": "list_calendar"
},
{
"description": "The winnable search queries Spook has found for a site (scored, ranked). No cost. Pass questionsOnly to get only question-shaped queries. (requires an agent API key)",
"inputSchema": {
"properties": {
"limit": {
"default": 20,
"type": "integer"
},
"questionsOnly": {
"type": "boolean"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId"
],
"type": "object"
},
"name": "list_opportunities"
},
{
"description": "List the Spook sites on the account this API key belongs to, with each site's id, domain, autopilot state, and publishing setup. (requires an agent API key)",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_sites"
},
{
"description": "Generate an llms.txt file from a site name, one-line summary, optional details, and sections of links.",
"inputSchema": {
"properties": {
"details": {
"type": "string"
},
"sections": {
"items": {
"properties": {
"links": {
"items": {
"properties": {
"notes": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"title": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"siteName": {
"type": "string"
},
"summary": {
"type": "string"
}
},
"required": [
"siteName"
],
"type": "object"
},
"name": "llms-txt-generator"
},
{
"description": "Meta Description Generator: Write SEO meta descriptions that maximize click-through rate. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"keyword": {
"type": "string"
},
"tone": {
"description": "Optional tone, e.g. professional, playful.",
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"keyword"
],
"type": "object"
},
"name": "meta-description-generator"
},
{
"description": "Build a meta robots tag (and X-Robots-Tag header) from index/follow and snippet directives.",
"inputSchema": {
"properties": {
"follow": {
"default": true,
"type": "boolean"
},
"index": {
"default": true,
"type": "boolean"
},
"maxImagePreview": {
"enum": [
"",
"none",
"standard",
"large"
],
"type": "string"
},
"maxSnippet": {
"type": "string"
},
"maxVideoPreview": {
"type": "string"
},
"noarchive": {
"type": "boolean"
},
"noimageindex": {
"type": "boolean"
},
"nosnippet": {
"type": "boolean"
}
},
"type": "object"
},
"name": "meta-robots-generator"
},
{
"description": "Generate a complete set of HTML meta tags: title, description, canonical, Open Graph, and Twitter Cards.",
"inputSchema": {
"properties": {
"description": {
"type": "string"
},
"image": {
"description": "Social share image URL.",
"type": "string"
},
"ogType": {
"default": "website",
"enum": [
"website",
"article",
"product",
"profile"
],
"type": "string"
},
"siteName": {
"type": "string"
},
"title": {
"type": "string"
},
"twitter": {
"description": "Twitter handle.",
"type": "string"
},
"url": {
"description": "Canonical URL.",
"type": "string"
}
},
"type": "object"
},
"name": "meta-tag-generator"
},
{
"description": "Paragraph Generator: Expand a topic or sentence into a well-written paragraph. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"tone": {
"description": "Optional tone.",
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "paragraph-generator"
},
{
"description": "Product Description Generator: Write persuasive product descriptions. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"features": {
"description": "Optional key features.",
"type": "string"
},
"product": {
"type": "string"
}
},
"required": [
"product"
],
"type": "object"
},
"name": "product-description-generator"
},
{
"description": "Publish a generated article to the site's connected CMS. Enforces Spook's SEO-score floor - a draft below it is refused (returns published:false with a reason). (requires an agent API key)",
"inputSchema": {
"properties": {
"articleId": {
"type": "string"
}
},
"required": [
"articleId"
],
"type": "object"
},
"name": "publish_article"
},
{
"description": "Score text readability with Flesch Reading Ease and Flesch-Kincaid Grade, plus a reading level.",
"inputSchema": {
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "readability-checker"
},
{
"description": "Calculate ROAS, ROAS (percentage).",
"inputSchema": {
"properties": {
"adSpend": {
"description": "Ad spend",
"type": "number"
},
"revenue": {
"description": "Revenue from ads",
"type": "number"
}
},
"required": [
"revenue",
"adSpend"
],
"type": "object"
},
"name": "roas-calculator"
},
{
"description": "Build a valid robots.txt: allow or block crawlers, disallow paths, block specific bots, and link a sitemap.",
"inputSchema": {
"properties": {
"blockedBots": {
"items": {
"type": "string"
},
"type": "array"
},
"crawlDelay": {
"type": "number"
},
"disallow": {
"items": {
"type": "string"
},
"type": "array"
},
"mode": {
"default": "allow",
"enum": [
"allow",
"disallow"
],
"type": "string"
},
"sitemap": {
"type": "string"
}
},
"type": "object"
},
"name": "robots-txt-generator"
},
{
"description": "Test whether a robots.txt allows or blocks a given URL path for a given user-agent.",
"inputSchema": {
"properties": {
"robotsTxt": {
"type": "string"
},
"url": {
"type": "string"
},
"userAgent": {
"default": "*",
"type": "string"
}
},
"required": [
"robotsTxt",
"url"
],
"type": "object"
},
"name": "robots-txt-tester"
},
{
"description": "Book a query on a calendar day so autopilot writes and publishes it then, optionally with a writing brief for that article. By default the unpublished post already on that day goes back to the idea pool (returned as displaced); set replaceExisting false to add alongside it. (requires an agent API key)",
"inputSchema": {
"properties": {
"articleInstructions": {
"description": "Brief for this article: angle, facts to use, things to avoid",
"type": "string"
},
"date": {
"description": "YYYY-MM-DD",
"type": "string"
},
"query": {
"description": "The search query the article targets",
"type": "string"
},
"replaceExisting": {
"default": true,
"type": "boolean"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId",
"query",
"date"
],
"type": "object"
},
"name": "schedule_query"
},
{
"description": "Build valid JSON-LD structured data (FAQ, Article, Organization, or Product) for rich results.",
"inputSchema": {
"properties": {
"article": {
"type": "object"
},
"faqs": {
"items": {
"properties": {
"a": {
"type": "string"
},
"q": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"organization": {
"type": "object"
},
"product": {
"type": "object"
},
"type": {
"enum": [
"FAQ",
"Article",
"Organization",
"Product"
],
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"name": "schema-generator"
},
{
"description": "SEO Title Generator: Write catchy, SEO-friendly title tags for a topic. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"keyword": {
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"keyword"
],
"type": "object"
},
"name": "seo-title-generator"
},
{
"description": "Preview how a page's title and meta description render in Google search, with pixel-width truncation for desktop and mobile.",
"inputSchema": {
"properties": {
"description": {
"description": "The meta description.",
"type": "string"
},
"device": {
"default": "desktop",
"enum": [
"desktop",
"mobile"
],
"type": "string"
},
"title": {
"description": "The page title tag.",
"type": "string"
},
"url": {
"description": "The page URL.",
"type": "string"
}
},
"required": [
"title"
],
"type": "object"
},
"name": "serp-preview"
},
{
"description": "Turn a site's autopilot on or off. When on, Spook plans, writes, and publishes articles automatically. (requires an agent API key)",
"inputSchema": {
"properties": {
"enabled": {
"type": "boolean"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId",
"enabled"
],
"type": "object"
},
"name": "set_autopilot"
},
{
"description": "Build an XML sitemap from a list of URLs, with an optional lastmod date.",
"inputSchema": {
"properties": {
"lastmod": {
"type": "string"
},
"urls": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"urls"
],
"type": "object"
},
"name": "sitemap-generator"
},
{
"description": "Turn a title into a clean, SEO-friendly URL slug: lowercase, hyphenated, accent-safe, optional stopword removal.",
"inputSchema": {
"properties": {
"removeStopwords": {
"default": true,
"type": "boolean"
},
"separator": {
"default": "-",
"type": "string"
},
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "slug-generator"
},
{
"description": "Social Media Post Generator: Write platform-specific social media posts. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"platform": {
"description": "Optional network, e.g. LinkedIn, X.",
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "social-post-generator"
},
{
"description": "Email Subject Line Generator: Write high-converting email subject lines. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "subject-line-generator"
},
{
"description": "Edit an article's text: title, slug (drafts only), teaser, featured snippet, markdown body, FAQs, meta title/description or featured image alt. Only the fields you send change; HTML, SEO score and AI-phrase flags are recomputed as in the editor. Pass get_article's contentFingerprint as baseFingerprint to refuse the write if the article changed meanwhile. Hosted Next.js blogs serve the edit automatically; for other CMSs call publish_article again when republishNeeded is true. (requires an agent API key)",
"inputSchema": {
"properties": {
"articleId": {
"type": "string"
},
"baseFingerprint": {
"description": "contentFingerprint from get_article; the edit is refused if the article changed since",
"type": "string"
},
"contentMarkdown": {
"description": "The full markdown body (replaces it)",
"type": "string"
},
"faqs": {
"description": "The full FAQ list (replaces it)",
"items": {
"properties": {
"answer": {
"type": "string"
},
"question": {
"type": "string"
}
},
"required": [
"question",
"answer"
],
"type": "object"
},
"type": "array"
},
"featuredImageAlt": {
"type": "string"
},
"featuredSnippet": {
"type": "string"
},
"metaDescription": {
"type": "string"
},
"metaTitle": {
"type": "string"
},
"slug": {
"description": "Only for unpublished articles",
"type": "string"
},
"teaser": {
"type": "string"
},
"title": {
"type": "string"
}
},
"required": [
"articleId"
],
"type": "object"
},
"name": "update_article"
},
{
"description": "Configure where a site publishes. Set publishIntegration to 'nextjs' for a credential-free Spook-hosted blog (returns a blog API key), or 'webhook' with publishWebhookUrl. publishMode 'draft' or 'live'. (requires an agent API key)",
"inputSchema": {
"properties": {
"publishIntegration": {
"enum": [
"none",
"webhook",
"wordpress",
"ghost",
"shopify",
"webflow",
"rest",
"nextjs"
],
"type": "string"
},
"publishMode": {
"enum": [
"draft",
"live"
],
"type": "string"
},
"publishWebhookSecret": {
"type": "string"
},
"publishWebhookUrl": {
"type": "string"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId"
],
"type": "object"
},
"name": "update_publishing"
},
{
"description": "Set a site's writing settings: globalArticleInstructions (injected into every article Spook writes or improves for the site; an empty string restores the default self-promotion instructions), brandVoice and description. Only the fields you send change. (requires an agent API key)",
"inputSchema": {
"properties": {
"brandVoice": {
"type": "string"
},
"description": {
"type": "string"
},
"globalArticleInstructions": {
"type": "string"
},
"siteId": {
"type": "string"
}
},
"required": [
"siteId"
],
"type": "object"
},
"name": "update_site_writing"
},
{
"description": "Append UTM tracking parameters (source, medium, campaign, term, content) to a destination URL.",
"inputSchema": {
"properties": {
"campaign": {
"type": "string"
},
"content": {
"type": "string"
},
"medium": {
"type": "string"
},
"source": {
"type": "string"
},
"term": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"url",
"source",
"medium",
"campaign"
],
"type": "object"
},
"name": "utm-builder"
},
{
"description": "Count words, characters, sentences, and paragraphs in text, plus reading and speaking time.",
"inputSchema": {
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "word-counter"
},
{
"description": "YouTube Title & Description Generator: Write a YouTube title, description, and tags for a video topic. (free, AI-generated, rate-limited).",
"inputSchema": {
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "youtube-title-generator"
}
]
}What the leaf hashes
{"body":"4d8d1bc634e351fc86fd5d96c5f83218633e1fb33c1ee71ee522250724b0b143","id":1016816,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793274123619084,"prev":562103,"subject":"520cf34f-1653-456d-91a8-9721b88f2a5d","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (242798 rows).
- 0x6b5b29776580c42a2d4f62f9db06b61db4b480062efd893f74fa44047777b811
- 0x249d1f75d0f5a58eae2fefddbfc83f264085a050f1f5caef23b0f4e6578e251a
- 0x32075b800728ea0126ef76a4f2a397e7ae7a6ec8e5d94471847e1a10ce5ecbff
- 0x53f716e4988b5aaa805db595f06a4dd176a76c2e6e00c05bb1079f1e98d1fbce
- 0xb59e077330895fb917e3b05a1d9c722bf19b75c986f9775b44aa0ce0f48c25bb
- 0x2c8a6cb4eaca20171c27858ed29660895193827d635b46a66f8d253d6f6a7a46
- 0xbf196fbf8a1ef0d814afeb04c311c52d189a46eece489bf92f1e3cfc019d4966
- 0xdcc0cdcf5e0f6857a99fbba28f32c6f8ce78d14db73413cc0d81193a98eb68dd
- 0x95e06acbe64c954335eedb0f7a7506128cb729ab782805a99998e863433db15a
- 0xcd98828af8fa17ea437ac184a4c179255f294199b0d003df52f165555d0634a1
- 0xba53603ad601877200697ac6584211ddfb0d6a9ca84b94892037ea09f28ba05d
- 0xd1b026958b87e7817d492c5f8133035d465e6221f158dbb4a44448c14b220dbc
- 0x0a70f94ba839c32042590eb96f6114034cb5b3ed8dd1b48fb4158efe13cb8084
- 0xec2e740df411d32a080c5e65c8b0ca511ad665b213532cee58525a97aebd2893
- 0x60b5befbd81f025904c8a3936b7ba86e3245ad5b37c615d01d42aa3227e3ed2e
- 0xe2d603cd6f987214550319ad4fa39952b6098bc5c1b20893b6b80e8d82a79934
- 0x91f12a2db1e2c1be07cbe4de3981a37a33051a36d3c3eee5a260804add6d1d75
- 0xd56e61af23709ed9f460471e3c08400c0142ee83e1fd9057e46350d12edf9c07
- Day root
- 0xc050555c6b023f2aefb6536efb9f0760b92c30a0d06c572b7daf63db259ea17c
- Chained
- 0x4cde8bae2042512e1bec11650628f0293556311cc4ea74d99ffddf02b671a7d6
- Published
- On Arc Testnet, block 69753317: 0x9e85c340732f416e431b111fae72f7624870125f7f379af2732eb6c2ba8cf6a1