{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_fkbgmpf8qnvz","handle":"adam-hale-tools-web-research-and-open-data","url":"https://wellknown.network/agents/adam-hale-tools-web-research-and-open-data","links":{"self":"https://wellknown.network/agents/adam-hale-tools-web-research-and-open-data/record.json","html":"https://wellknown.network/agents/adam-hale-tools-web-research-and-open-data","markdown":"https://wellknown.network/agents/adam-hale-tools-web-research-and-open-data/record.md","api":"https://wellknown.network/api/v1/agents/adam-hale-tools-web-research-and-open-data","status":"https://wellknown.network/api/v1/agents/adam-hale-tools-web-research-and-open-data/status","claim":"https://wellknown.network/agents/adam-hale-tools-web-research-and-open-data/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/adam-hale-tools-web-research-and-open-data/claim.json","badge":"https://wellknown.network/agents/adam-hale-tools-web-research-and-open-data/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/adam-hale-tools-web-research-and-open-data/history","tools":"https://wellknown.network/api/v1/agents/adam-hale-tools-web-research-and-open-data/tools"},"ard":{"identifier":"urn:air:tools.adamhaleworks.workers.dev:server:adam-hale-tools-web-research-and-open-data","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Adam Hale Tools: Web Research and Open Data","summary":"Free web lookups; PDF to Markdown, audio transcripts, screenshots, WHOIS/DNS paid per call via x402.","description":"Free web lookups; PDF to Markdown, audio transcripts, screenshots, WHOIS/DNS paid per call via x402.","publisher":{"name":"dev.workers.adamhaleworks.tools","url":null},"homepage":"https://tools.adamhaleworks.workers.dev/x402/#mcp","repository":null,"version":"1.1.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://tools.adamhaleworks.workers.dev/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-12T09:01:29.125326Z","publishedAt":"2026-10-12T09:01:29.125326Z","registryName":"dev.workers.adamhaleworks.tools/web-research"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"media.speech-recognition","name":"Speech Recognition","confidence":1,"provenance":"derived"},{"slug":"documents.spreadsheets","name":"Spreadsheets","confidence":1,"provenance":"derived"},{"slug":"data.news","name":"News & Feeds","confidence":1,"provenance":"derived"},{"slug":"infra.browser-automation","name":"Browser Automation","confidence":1,"provenance":"derived"},{"slug":"content.seo","name":"SEO","confidence":0.977,"provenance":"derived"},{"slug":"documents.conversion","name":"Document Conversion","confidence":0.977,"provenance":"derived"},{"slug":"documents.contracts","name":"Contracts & Legal","confidence":0.525,"provenance":"derived"},{"slug":"content.social","name":"Social Media","confidence":0.51,"provenance":"derived"}],"categories":["content","data","documents","infra","media"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 4h ago.","lastOkAt":"2026-10-24T13:29:31.324Z","lastProbedAt":"2026-10-24T13:29:31.324Z","statusComputedAt":"2026-10-24T13:32:21.751Z","reliability30d":{"probes":44,"successRate":1,"p50Ms":100,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":44,"ok":44,"authBoundaryOk":0,"serviceOk":44,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-24T13:29:31.324Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":97,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-24T06:27:51.326Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":48,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-23T23:25:47.922Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":65,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-23T16:29:48.540Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":138,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-23T09:30:34.135Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":118,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-23T02:23:55.551Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":68,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T19:32:07.660Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":105,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T13:28:58.734Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":171,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T06:27:45.618Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":163,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-21T23:29:01.145Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":95,"error":null,"detail":{"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"toolCount":12,"toolsHash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","serverName":"adam-hale-tools","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"tech_stack_lookup","description":"Detect what a website is built with: CMS, frameworks, analytics, CDN, hosting, email and DNS providers (MX, SPF, DMARC) and a security-header grade, from one fe"},{"name":"seo_meta_tags_check","description":"On-page SEO audit of web pages: title and meta description lengths, canonical, robots/noindex and X-Robots-Tag, H1/H2, hreflang, Open Graph, Twitter card and JS"},{"name":"url_status_check","description":"Check whether links are alive: HTTP status, every redirect hop, final URL and a classification (ok, redirect, broken, restricted, blocked_by_site, disallowed_by"},{"name":"sitemap_urls","description":"List the pages of a website from its sitemaps: finds them via robots.txt or common paths, follows sitemap indexes, reads gzip, text and feed sitemaps, returns U"},{"name":"rss_to_json","description":"Read news feeds or blogs as clean JSON: accepts feed URLs or plain site URLs (finds the feed via <link rel=alternate>), normalises RSS 0.9x/2.0, RDF, Atom and J"},{"name":"ted_tender_search","description":"Search EU public procurement notices (tenders, contract notices, awards) on TED through the official API v3: keywords, optional buyer country and open-deadline "},{"name":"page_to_markdown","description":"Read web pages: returns each page's main content as clean Markdown without navigation, scripts or ads (headings, lists, absolute links, tables, code blocks), pl"},{"name":"domain_intel","description":"Who a domain is registered with and since when (RDAP: registrar, created, expires, age, status, nameservers, DNSSEC), its DNS records (A, AAAA, MX, NS, TXT, CAA"},{"name":"robots_txt_check","description":"Crawl preflight: whether each user agent may fetch each URL under the site's robots.txt (RFC 9309, longest match, '*' fallback), with crawl-delay, the sitemaps "},{"name":"document_to_markdown","description":"Convert one document at a public URL to Markdown from its text layer: PDF, Word DOCX, Excel XLSX/XLSM/XLSB/XLS, OpenDocument ODS/ODT, CSV, HTML, XML or Apple Nu"},{"name":"transcribe_short_audio","description":"Transcribe one short audio file (direct public URL to MP3, WAV, M4A, OGG, FLAC or WebM; one file up to 2 MB and 20 minutes) with Whisper large-v3-turbo, or tran"},{"name":"website_screenshot","description":"Screenshot one public web page in a headless browser: desktop (1440x900) or mobile (390x844) viewport, PNG or JPEG, returned as an image. Viewport only, no logi"}],"package":null,"toolSurface":{"id":"ts_caqssq77rwd6","endpointId":"ep_fwqrdebyqmz8","hash":"4b1df06e440043eab5da10b0e784618f0b420fe9beee6c9945e920d09b04454c","toolCount":12,"serverName":"adam-hale-tools","serverVersion":"1.1.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-12T12:27:42.168Z","lastSeenAt":"2026-10-24T13:29:31.334Z","observations":44,"toolNames":["tech_stack_lookup","seo_meta_tags_check","url_status_check","sitemap_urls","rss_to_json","ted_tender_search","page_to_markdown","domain_intel","robots_txt_check","document_to_markdown","transcribe_short_audio","website_screenshot"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_fwqrdebyqmz8","url":"https://tools.adamhaleworks.workers.dev/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-17T08:24:55.780Z","auth":{"observedAt":"2026-10-17T08:24:55.850Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-17T08:24:55.861Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"adamhaleworks.workers.dev","issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validFrom":"2026-10-11T21:55:46.000Z","validTo":"2027-01-09T21:55:45.000Z","daysToExpiry":77,"sanCount":2,"fingerprint256":"30:36:85:D1:F4:26:24:4B:EF:9A:F7:C2:A4:95:E6:64:13:8F:85:98:D8:20:2B:D1:40:A9:E1:D6:02:0E:FE:25"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"dev.workers.adamhaleworks.tools/web-research","url":"https://registry.modelcontextprotocol.io/v0/servers/dev.workers.adamhaleworks.tools%2Fweb-research","firstSeenAt":"2026-10-12T12:18:40.987Z","fetchedAt":"2026-10-22T06:18:32.910Z","normalizedAt":"2026-10-22T06:18:32.910Z"}]},"firstSeenAt":"2026-10-12T12:18:40.987Z","updatedAt":"2026-10-24T13:34:01.459Z"}