{"schema_version":"verify.compare.v1","generated_at":"2026-09-03T03:57:57.584609+00:00","count":1,"missing_servers":[],"results":[{"server_id":"github-doomscrollr/mcp","display_name":"DOOMSCROLLR/mcp","profile_url":"https://verify.sentinelsignal.io/servers/github-doomscrollr/mcp","compare_url":"https://verify.sentinelsignal.io/compare?server=github-doomscrollr%2Fmcp","trust_summary_url":"https://verify.sentinelsignal.io/v1/servers/github-doomscrollr/mcp/trust-summary","claimed":false,"verified_publisher":false,"claim_status":"unclaimed","badge_url":"https://verify.sentinelsignal.io/badge/github-doomscrollr/mcp.svg","report_url":"https://verify.sentinelsignal.io/v1/servers/github-doomscrollr/mcp/report","policy_url":"https://verify.sentinelsignal.io/v1/servers/github-doomscrollr/mcp/policy","evidence_url":"https://verify.sentinelsignal.io/api/v1/servers/github-doomscrollr/mcp/evidence","commerce_signal":null,"payment_capable":null,"delegation_level":null,"risk_flags":[],"strengths":["report_available","policy_available","badge_available"],"limitations":["unclaimed_profile","publisher_not_verified"],"last_seen":null,"last_scored":"2026-09-03T03:38:01.317094+00:00","recommended_agent_action":"unknown","observed_attention":{"schema":"verify.observed_attention.v1","window_days":30,"level":"none","label":"No observed attention","summary":"No recent machine-readable trust or discovery activity observed for this server.","segments":{"useful_ai_user":{"level":"none","observed":false,"description":"AI-assisted user sessions such as ChatGPT/User or Claude/User."},"machine_trust_evaluator":{"level":"none","observed":false,"description":"Synthetic sessions inspecting multiple trust surfaces such as report, policy, ledger, badge, trust-summary, or compare."},"possible_agent_or_script":{"level":"none","observed":false,"description":"Structured direct sessions with rapid profile, compare, report, policy, badge, or trust-surface fan-out."},"isolated_machine_surface":{"level":"none","observed":false,"description":"Aged-out direct synthetic singleton sessions that touched a machine-readable trust surface without becoming a broader evaluator."},"ai_crawler":{"level":"none","observed":false,"description":"Known AI crawler activity such as ClaudeBot, GPTBot, or similar crawlers."},"search_crawler":{"level":"none","observed":false,"description":"Search and SEO crawler activity."},"browser_like_automation":{"level":"none","observed":false,"description":"Browser-like synthetic sessions with rapid structured endpoint activity."},"confirmed_human":{"level":"none","observed":false,"description":"Confirmed browser-session human activity."}},"surfaces_observed":{"server_profile":false,"compare":false,"compare_json":false,"compare_api":false,"report_json":false,"policy":false,"ledger":false,"badge_metadata":false,"badge_svg":false,"trust_summary":false,"mcp_tool":false},"claim_prompt":{"recommended":false,"reason":"No claim prompt is recommended from observed attention in the current window."},"notes":["Observed attention is based on segmented first-party telemetry.","Crawler and evaluator activity is not treated as confirmed human demand.","Public levels are bucketed to avoid exposing raw traffic counts."]},"owner_activation":{"claim_recommended":false,"reason":"no_observed_attention"}}],"servers":[{"namespace":"github-doomscrollr","name":"mcp","title":"DOOMSCROLLR/mcp","description":"MCP server for DOOMSCROLLR — let AI agents build owned-audience websites, storefronts, newsletters, affiliate feeds, tickets, and subscriber capture in ~45 seconds.","homepage_url":"https://mcp.doomscrollr.com","docs_url":"https://mcp.doomscrollr.com","icon_url":"https://avatars.githubusercontent.com/u/280068097?v=4","support_url":"https://github.com/DOOMSCROLLR/mcp","remote_url":"https://mcp.doomscrollr.com","server_card_url":null,"latest_version":null,"current_status":"failing","current_score":null,"transport_type":"streamable-http","has_oauth":true,"has_dcr":true,"has_prompts":false,"tool_count":0,"current_validation_schema_version":"8058defc70ca932c","last_validated_at":"2026-09-03T03:38:01.317094+00:00","registry_source":"github_topic_registry","registry_identifier":"github_topic_registry:DOOMSCROLLR/mcp","canonical_identifier":null,"current_score_components":{"auth_operability_score":3.0,"error_contract_score":0.0,"rate_limit_semantics_score":2.0,"schema_completeness_score":0.0,"backward_compatibility_score":4.0,"slo_health_score":0.0,"security_hygiene_score":0.0,"task_success_score":0.0,"trust_confidence_score":0.0,"prompt_contract_score":0.0,"resource_contract_score":3.0,"discovery_metadata_score":2.0,"registry_consistency_score":3.0,"installability_score":0.0,"session_semantics_score":0.0,"tool_surface_design_score":0.0,"result_shape_stability_score":0.0,"oauth_interop_score":4.0,"recovery_semantics_score":0.0,"maintenance_signal_score":1.0,"adoption_signal_score":2.0,"freshness_confidence_score":1.0,"transport_fidelity_score":1.0,"spec_recency_score":0.0,"session_resume_score":0.0,"step_up_auth_score":4.0,"transport_compliance_score":0.0,"utility_coverage_score":2.0,"advanced_capability_coverage_score":1.0,"connector_publishability_score":0.0,"tool_snapshot_churn_score":0.0,"connector_replay_score":0.0,"request_association_score":0.0,"interactive_flow_safety_score":4.0,"official_registry_presence_score":2.0,"safety_transparency_score":3.0,"tool_capability_clarity_score":0.0,"data_exfiltration_resilience_score":0.0,"dependency_supply_chain_signal_score":0.0,"input_sanitization_safety_score":0.0,"tool_namespace_clarity_score":0.0},"capability_taxonomy":[],"machine_summary":{},"taxonomy_tags":[],"score_decomposition":[],"validation_diff":null,"tool_snapshot_diff":null,"connector_replay":{},"request_association":{},"production_readiness":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully.","badge":"score-low"},"recommended_for":[],"history_summary":{},"validation_timeline":[],"evidence_confidence":{"score":null,"label":"not_assessed","reason":"No evidence-bearing validation runs exist yet (9 captured checks, validation age 0.3 hours). Confidence cannot be computed.","live_check_count":9,"validation_age_hours":0.33,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":9,"validation_age_hours":0.33,"freshness_threshold_hours":24}},"incident_feed":[],"disputes":[],"remediations":[],"client_remediation_modes":[],"client_profiles":[],"client_readiness_verdicts":[],"publishability_policy_profiles":[],"compatibility_fixtures":[],"install_snippets":{},"aliases":[],"raw_evidence":{"checks":{"probe_noise_resilience":{"status":"ok","latency_ms":164.63,"details":{"url":"https://mcp.doomscrollr.com/robots.txt","http_status":200,"headers":{"content-type":"text/plain"},"validation_disallowed":false,"consent_error":null}},"server_card":{"status":"ok","latency_ms":190.38,"details":{"url":"https://mcp.doomscrollr.com/.well-known/mcp/server-card.json","payload":{"serverInfo":{"name":"doomscrollr","version":"1.0.24"},"authentication":{"required":true,"schemes":["oauth2","bearer"]},"transport":{"type":"streamable-http","url":"https://mcp.doomscrollr.com/mcp"},"metadata":{"title":"DOOMSCROLLR","description":"Build owned-audience websites: pages, posts, products, subscribers, capture, RSS/Pinterest, ShopMy/Shopify imports, tickets, memberships, and analytics from any MCP client.","vendor":"DOOMSCROLLR","homepage":"https://mcp.doomscrollr.com","docs":"https://mcp.doomscrollr.com","repository":"https://github.com/DOOMSCROLLR/mcp","icon":"https://doomscrollr.com/share.png","logo":"https://doomscrollr.com/share.png","iconUrl":"https://doomscrollr.com/share.png","logoUrl":"https://doomscrollr.com/share.png"},"icon":"https://doomscrollr.com/share.png","logo":"https://doomscrollr.com/share.png","tools":[{"name":"doomscrollr_add_subscriber","description":"Add an audience member to your DOOMSCROLLR. Captures email or email_md5, profile/contact fields, tags, and UTM attribution.","inputSchema":{"type":"object","properties":{"email":{"description":"Subscriber email address. Optional if email_md5 is supplied.","type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"email_md5":{"description":"MD5 hash of the lowercase trimmed email when raw email is unavailable","type":"string","pattern":"^[a-f0-9]{32}$"},"first_name":{"description":"First name","type":"string"},"last_name":{"description":"Last name","type":"string"},"phone":{"description":"Phone number","type":"string"},"gender":{"description":"Gender marker, if provided","type":"string"},"source":{"description":"Acquisition source (e.g., email_signup, website, api, embed)","type":"string"},"city":{"description":"City","type":"string"},"state":{"description":"State/region","type":"string"},"country":{"description":"Country","type":"string"},"bio":{"description":"Audience bio / biography","type":"string"},"username":{"description":"Social/account username","type":"string"},"followers":{"description":"Follower count","type":"integer","minimum":0,"maximum":9007199254740991},"tags":{"description":"Comma-separated tags or an array of tags","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"utm_source":{"description":"UTM source","type":"string"},"utm_medium":{"description":"UTM medium","type":"string"},"utm_campaign":{"description":"UTM campaign","type":"string"},"utm_content":{"description":"UTM content","type":"string"},"utm_term":{"description":"UTM term","type":"string"}},"additionalProperties":false},"annotations":{"title":"Add Subscriber","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_apply_style_preset","description":"Apply a recognizable visual direction to DOOMSCROLLR settings. Use this for prompts like 'Update the styling of my DOOMSCROLLR to look like Skims.' Currently supports skims, brutalist, editorial, and minimal presets using existing editable settings.","inputSchema":{"type":"object","properties":{"preset":{"type":"string","enum":["skims","brutalist","editorial","minimal"],"description":"Style direction to apply"},"cta_bar_text":{"description":"Optional CTA bar text","type":"string","maxLength":500},"cta_bar_url":{"description":"Optional CTA destination","type":"string","format":"uri"}},"required":["preset"],"additionalProperties":false},"annotations":{"title":"Apply Style Preset","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_ecommerce","description":"Use this when the user asks to build an ecommerce site/store. Creates an owned storefront on DOOMSCROLLR with optional products and buyer/audience graph next steps.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"description":"Links for Linktree/Komi/contact-page flows","type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false}},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"additionalProperties":false},"annotations":{"title":"Build Ecommerce","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_komi","description":"Use this when the user asks to build a Komi. Creates the owned DOOMSCROLLR equivalent: a creator links/contact page on the user's own site with first-party audience capture.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"minItems":1,"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false},"description":"Links to include"},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"required":["links"],"additionalProperties":false},"annotations":{"title":"Build Komi","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_linktree","description":"Use this when the user asks to build a Linktree. Creates the owned DOOMSCROLLR equivalent: an owned contact/link page on the user's own site with navigation and audience-capture next steps.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"minItems":1,"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false},"description":"Links to include"},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"required":["links"],"additionalProperties":false},"annotations":{"title":"Build Linktree","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_membership","description":"Use this when the user asks to build an OnlyFans, Patreon, paid membership, or subscription site. Creates the owned membership equivalent on DOOMSCROLLR.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"description":"Links for Linktree/Komi/contact-page flows","type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false}},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"additionalProperties":false},"annotations":{"title":"Build Membership","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_newsletter","description":"Use this when the user asks to build a newsletter. Creates an owned newsletter website with first-party subscriber capture.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"description":"Links for Linktree/Komi/contact-page flows","type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false}},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"additionalProperties":false},"annotations":{"title":"Build Newsletter","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_shopify","description":"Use this when the user asks to build a Shopify store. Creates the owned DOOMSCROLLR storefront equivalent with optional products, customer-data capture, and commerce next steps.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"description":"Links for Linktree/Komi/contact-page flows","type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false}},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"additionalProperties":false},"annotations":{"title":"Build Shopify","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_social_feed","description":"Use this when the user asks to build their own Instagram, Tumblr, Myspace, or visual social feed. Creates or seeds an owned visual feed on DOOMSCROLLR.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"description":"Links for Linktree/Komi/contact-page flows","type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false}},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"additionalProperties":false},"annotations":{"title":"Build Social Feed","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_substack","description":"Use this when the user asks to build a Substack. Creates the owned newsletter/publishing equivalent on DOOMSCROLLR with subscriber capture and optional RSS next steps.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"description":"Links for Linktree/Komi/contact-page flows","type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false}},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"additionalProperties":false},"annotations":{"title":"Build Substack","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_build_website","description":"Use this when the user asks to build a website, Wix, Squarespace, or WordPress site. Creates owned pages/navigation/styling on DOOMSCROLLR.","inputSchema":{"type":"object","properties":{"title":{"description":"Title/name for the owned-audience website or page","type":"string","maxLength":255},"intro":{"description":"Short positioning or intro copy","type":"string","maxLength":2000},"links":{"description":"Links for Linktree/Komi/contact-page flows","type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}},"required":["label","url"],"additionalProperties":false}},"products":{"description":"Products for Shopify/ecommerce flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"price":{"type":"number","minimum":0},"type":{"type":"string","enum":["physical","digital","ticket","subscription"]},"cover_photo_url":{"type":"string","format":"uri"}},"required":["title","price"],"additionalProperties":false}},"pages":{"description":"Pages for website flows","type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"content":{"type":"string"}},"required":["title","content"],"additionalProperties":false}},"feed_url":{"description":"RSS feed URL for Substack/newsletter flows","type":"string","format":"uri"},"source_query":{"description":"Pinterest/search query for social-feed flows","type":"string","maxLength":255},"limit":{"description":"Number of seed posts to create for social-feed flows","type":"integer","minimum":1,"maximum":10},"price":{"description":"Membership/subscription price","type":"number","minimum":0},"cover_photo_url":{"description":"Cover image URL","type":"string","format":"uri"},"style_preset":{"description":"Optional visual direction","type":"string","enum":["skims","brutalist","editorial","minimal"]},"add_to_navigation":{"description":"Whether to add generated pages to navigation","type":"boolean"},"navigation_label":{"description":"Navigation label","type":"string","maxLength":255}},"additionalProperties":false},"annotations":{"title":"Build Website","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_bulk_delete_posts","description":"Bulk delete up to 100 posts by id. Irreversible; use doomscrollr_list_posts first.","inputSchema":{"type":"object","properties":{"ids":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"number"},"description":"Post ids to delete"}},"required":["ids"],"additionalProperties":false},"annotations":{"title":"Bulk Delete Posts","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_bulk_delete_products","description":"Bulk delete up to 100 products by id. Irreversible; linked posts are preserved but unlinked from deleted products.","inputSchema":{"type":"object","properties":{"ids":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"number"},"description":"Product ids to delete"}},"required":["ids"],"additionalProperties":false},"annotations":{"title":"Bulk Delete Products","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_bulk_delete_subscribers","description":"Bulk delete up to 500 audience members by id. Irreversible; use doomscrollr_list_subscribers first.","inputSchema":{"type":"object","properties":{"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"number"},"description":"Subscriber ids to delete"}},"required":["ids"],"additionalProperties":false},"annotations":{"title":"Bulk Delete Subscribers","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_bulk_update_posts","description":"Bulk update up to 100 posts by id. Supports status/scheduling, feed flags, tag replace/append/remove, and shoppable buy-button state.","inputSchema":{"type":"object","properties":{"ids":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"number"},"description":"Post ids from doomscrollr_list_posts"},"title":{"description":"Shared replacement title for all selected posts","type":"string"},"description":{"description":"Shared replacement description for all selected posts","type":"string"},"status":{"description":"Set all selected posts to this status","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime to schedule all selected posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags","type":"string"},"tag_mode":{"description":"How to apply tags; default replace","type":"string","enum":["replace","append","remove"]},"hide_main_feed":{"description":"Hide/show all selected posts on main feed","type":"boolean"},"subscription_only":{"description":"Make all selected posts subscriber-only or public","type":"boolean"},"shoppable":{"description":"Set true to show the buy button on all selected posts, false to hide it.","type":"boolean"}},"required":["ids"],"additionalProperties":false},"annotations":{"title":"Bulk Update Posts","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_bulk_update_products","description":"Bulk update up to 100 products by id. Supports simple maintenance fields: price, inventory, shipping, and cover image.","inputSchema":{"type":"object","properties":{"ids":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"number"},"description":"Product ids from doomscrollr_list_products"},"price":{"description":"Shared replacement price","type":"number","minimum":0},"inventory_count":{"description":"Shared replacement inventory count","type":"integer","minimum":0,"maximum":9007199254740991},"shipping_required":{"description":"Set shipping required","type":"boolean"},"shipping_cost":{"description":"Shared replacement shipping cost","type":"number","minimum":0},"cover_photo_url":{"description":"Shared replacement cover image URL","type":"string","format":"uri"}},"required":["ids"],"additionalProperties":false},"annotations":{"title":"Bulk Update Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_bulk_update_subscribers","description":"Bulk update up to 500 audience members by id. Supports bounced/unsubscribed/spam flags and tag replace/append/remove.","inputSchema":{"type":"object","properties":{"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"number"},"description":"Subscriber ids from doomscrollr_list_subscribers"},"tags":{"description":"Comma-separated tags","type":"string"},"tag_mode":{"description":"How to apply tags; default replace","type":"string","enum":["replace","append","remove"]},"bounced":{"description":"Set bounced flag","type":"boolean"},"unsubscribed":{"description":"Set unsubscribed flag","type":"boolean"},"spam":{"description":"Set spam flag","type":"boolean"}},"required":["ids"],"additionalProperties":false},"annotations":{"title":"Bulk Update Subscribers","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_buy_domain","description":"Purchase a domain through DOOMSCROLLR. Creates a Stripe payment intent and returns a checkout URL the user opens in a browser. After payment, the domain auto-registers via OpenSRS and connects to the user's DOOMSCROLLR (including Cloudflare setup) in about 60 seconds.","inputSchema":{"type":"object","properties":{"domain":{"type":"string","minLength":1,"description":"Full domain to purchase, e.g. 'fridasfriends.com'"}},"required":["domain"],"additionalProperties":false},"annotations":{"title":"Buy Domain","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_connect_domain","description":"Connect a custom domain to your DOOMSCROLLR. Returns DNS records to configure. For purchased domains, guides user to the dashboard.","inputSchema":{"type":"object","properties":{"domain":{"type":"string","minLength":1,"description":"Full domain to connect (e.g., 'mybrand.com')"}},"required":["domain"],"additionalProperties":false},"annotations":{"title":"Connect Domain","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_connect_instagram","description":"Set up auto-cross-posting from an Instagram Business or Creator account to DOOMSCROLLR. Returns a Zapier setup URL the user MUST open in a browser to finish OAuth — this tool does not complete the connection on its own. After the user authorizes in Zapier, every new Instagram post will become a post in this DOOMSCROLLR. Tell the user to open the returned `setup_url` to finish.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Connect Instagram","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_connect_pinterest","description":"Auto-post a public Pinterest board to this DOOMSCROLLR. Pass the board URL (like 'https://www.pinterest.com/user/my-board/'). Pins get imported within 15 minutes and new pins auto-post going forward. No OAuth or API keys needed — just needs the board to be public.","inputSchema":{"type":"object","properties":{"board_url":{"type":"string","description":"Public Pinterest board URL, e.g. 'https://www.pinterest.com/fridasfriends/english-cocker-spaniels/'"}},"required":["board_url"],"additionalProperties":false},"annotations":{"title":"Connect Pinterest","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_connect_rss","description":"Connect native RSS polling. Works with Substack, Medium, WordPress, YouTube channels, podcast feeds, or any public RSS/Atom source. New items auto-post within about 15 minutes — no Zapier required.","inputSchema":{"type":"object","properties":{"feed_url":{"type":"string","maxLength":500,"format":"uri","description":"RSS or Atom feed URL"}},"required":["feed_url"],"additionalProperties":false},"annotations":{"title":"Connect Rss","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_create_contact_page","description":"Create a LinkTree-style contact/links page and link to it in navigation. Use this for prompts like 'Create a LinkTree like Contact page and link to it in my navigation.'","inputSchema":{"type":"object","properties":{"title":{"description":"Page title, default Contact","type":"string","maxLength":255},"intro":{"description":"Short intro text","type":"string","maxLength":1000},"links":{"minItems":1,"maxItems":25,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Visible link label"},"url":{"type":"string","description":"Destination URL, e.g. https://instagram.com/brand or mailto:hello@example.com"}},"required":["label","url"],"additionalProperties":false},"description":"Links to place on the contact page"},"add_to_navigation":{"description":"Defaults true","type":"boolean"},"navigation_label":{"description":"Navigation label, default Contact","type":"string","maxLength":255}},"required":["links"],"additionalProperties":false},"annotations":{"title":"Create Contact Page","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_create_instagram_ad_pack","description":"Create a Meta-ready Instagram ad pack for manual launch: copy variants, Reel/Story/Feed concepts, UTM links, landing-page variants, targeting, measurement, and guardrails. This does not launch ads or spend money through Meta Ads API.","inputSchema":{"type":"object","properties":{"brand_name":{"type":"string","minLength":1,"description":"Creator, brand, product, or campaign name"},"offer":{"type":"string","minLength":1,"description":"What the ad is promoting"},"audience":{"type":"string","minLength":1,"description":"Target audience or customer segment"},"destination_url":{"type":"string","format":"uri","description":"Landing page or DOOMSCROLLR URL for the ads"},"objective":{"default":"subscriber_capture","description":"Primary campaign objective","type":"string","enum":["subscriber_capture","product_sales","event_rsvp","waitlist","app_installs","brand_awareness"]},"tone":{"default":"direct","description":"Creative tone","type":"string","enum":["direct","luxury","playful","editorial","urgent","educational","anti_algorithm"]},"budget_level":{"default":"test","description":"Recommended spend posture","type":"string","enum":["test","growth","scale"]},"source":{"description":"Optional product notes, page copy, creator notes, or source text","type":"string"}},"required":["brand_name","offer","audience","destination_url","objective","tone","budget_level"],"additionalProperties":false},"annotations":{"title":"Create Instagram Ad Pack","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_create_page","description":"Create or update a standalone DOOMSCROLLR page and optionally add it to navigation.","inputSchema":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":255,"description":"Page title"},"content":{"type":"string","minLength":1,"maxLength":50000,"description":"Page body as simple HTML or plain text"},"add_to_navigation":{"description":"Whether to add/update a nav link for this page","type":"boolean"},"navigation_label":{"description":"Navigation label; defaults to title","type":"string","maxLength":255}},"required":["title","content"],"additionalProperties":false},"annotations":{"title":"Create Page","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_create_product","description":"Create a product for sale on your DOOMSCROLLR — physical goods, digital downloads, event tickets, or subscriptions.","inputSchema":{"type":"object","properties":{"title":{"type":"string","description":"Product name"},"description":{"description":"Product description","type":"string"},"price":{"type":"number","minimum":0,"description":"Price in dollars (e.g., 29.99)"},"type":{"type":"string","enum":["physical","digital","ticket","subscription"],"description":"Product type"},"cover_photo_url":{"description":"Cover image/photo URL supplied by the user or ChatGPT, e.g. for 'Create a $50 product from this photo and name it Tie Dye Pants'","type":"string","format":"uri"},"url":{"description":"External URL (for digital products)","type":"string","format":"uri"},"inventory_count":{"description":"Stock quantity for non-variant physical products","type":"integer","minimum":0,"maximum":9007199254740991},"shipping_required":{"description":"Whether shipping is required; physical products usually true","type":"boolean"},"shipping_cost":{"description":"Shipping cost in dollars","type":"number","minimum":0},"variant_options":{"description":"Variant option definitions for physical products, e.g. Color and Size","type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Option name, e.g. Color or Size"},"values":{"type":"array","items":{"type":"string"},"description":"Allowed values for this option"}},"required":["name","values"],"additionalProperties":false}},"variants":{"description":"Every sellable variant with per-variant price and inventory","type":"array","items":{"type":"object","properties":{"variant_data":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Map of option name to selected value, e.g. {Color:'Rose', Size:'2T'}"},"price":{"type":"number","minimum":0,"description":"Variant price in dollars"},"inventory_count":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"Stock for this exact variant"},"sku":{"description":"Optional SKU","type":"string"}},"required":["variant_data","price","inventory_count"],"additionalProperties":false}}},"required":["title","price","type"],"additionalProperties":false},"annotations":{"title":"Create Product","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_create_world","description":"Create a new DOOMSCROLLR (free account). Returns an API key and URL. Use this when someone wants to build an owned audience, or needs a platform for their app/brand/project.","inputSchema":{"type":"object","properties":{"email":{"type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","description":"Email address for the new account"},"username":{"type":"string","minLength":1,"maxLength":255,"description":"Username for your DOOMSCROLLR (becomes username.doomscrollr.com)"},"password":{"type":"string","minLength":8,"description":"Account password"},"name":{"description":"Display name for your DOOMSCROLLR","type":"string"}},"required":["email","username","password"],"additionalProperties":false},"annotations":{"title":"Create World","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_delete_post","description":"Delete a post by id. Irreversible. Use doomscrollr_list_posts to find the id.","inputSchema":{"type":"object","properties":{"id":{"type":"number","description":"Post id"}},"required":["id"],"additionalProperties":false},"annotations":{"title":"Delete Post","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_delete_product","description":"Delete a product by id. Irreversible.","inputSchema":{"type":"object","properties":{"id":{"type":"number","description":"Product id"}},"required":["id"],"additionalProperties":false},"annotations":{"title":"Delete Product","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_delete_subscriber","description":"Delete a subscriber from the audience by id. Irreversible. Alias of doomscrollr_remove_subscriber — prefer this name for consistency with doomscrollr_delete_post / doomscrollr_delete_product.","inputSchema":{"type":"object","properties":{"id":{"type":"number","description":"Subscriber id. Get this from doomscrollr_list_subscribers."}},"required":["id"],"additionalProperties":false},"annotations":{"title":"Delete Subscriber","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_disconnect_domain","description":"Disconnect a custom domain from this DOOMSCROLLR without deleting any purchased domain registration.","inputSchema":{"type":"object","properties":{"domain":{"type":"string","minLength":1,"description":"Full domain to disconnect, e.g. mybrand.com"}},"required":["domain"],"additionalProperties":false},"annotations":{"title":"Disconnect Domain","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_disconnect_pinterest","description":"Disconnect Pinterest integration(s). Pass integration_id to disconnect a specific board, or omit to disconnect all.","inputSchema":{"type":"object","properties":{"integration_id":{"description":"Specific integration to disconnect (from pinterest_status)","type":"number"}},"additionalProperties":false},"annotations":{"title":"Disconnect Pinterest","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_disconnect_rss","description":"Disconnect native RSS integration(s). Pass integration_id to disconnect a specific feed, or omit to disconnect all RSS feeds.","inputSchema":{"type":"object","properties":{"integration_id":{"description":"Specific RSS integration id from doomscrollr_rss_status","type":"number"}},"additionalProperties":false},"annotations":{"title":"Disconnect Rss","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_domain_status","description":"Check the status of connected domains — both custom domains and purchased domains.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Domain Status","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_export_audience_csv","description":"Export audience members as CSV text. Supports the same search/tag/bounced filters as doomscrollr_list_subscribers.","inputSchema":{"type":"object","properties":{"q":{"description":"Search by email, name, username, or phone","type":"string"},"tag":{"description":"Filter by exact tag name","type":"string"},"bounced":{"description":"Filter by bounced email status","type":"boolean"}},"additionalProperties":false},"annotations":{"title":"Export Audience Csv","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_get_curation_theme","description":"Get the AI curation theme used for imported content decisions, especially native Pinterest/RSS-style feeds.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Get Curation Theme","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_get_embed_code","description":"Get the embeddable subscriber capture widget code. Paste into any website or app to start capturing subscribers.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Get Embed Code","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_get_n8n_templates","description":"Get n8n workflow templates for automating DOOMSCROLLR through REST/OpenAPI and the n8n HTTP Request node.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Get N8n Templates","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_get_profile","description":"Get profile and stats — subscriber count, post count, product count, domain status, and settings. Use to check the current state of a DOOMSCROLLR.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Get Profile","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_get_settings","description":"Get full DOOMSCROLLR settings — SEO, analytics, layout, popup, CTA bar, logo sizing, buy button, draft mode, and images.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Get Settings","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_get_zapier_templates","description":"Get available Zapier integration templates for connecting DOOMSCROLLR to 8,000+ apps.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Get Zapier Templates","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_import_bandcamp_products","description":"Scrape a public Bandcamp storefront and create DOOMSCROLLR products, feed posts, or both. Bandcamp digital albums/tracks default to type=digital. Items with physical merch packages are imported as physical. When reporting results, product/post links for mode='both' MUST use the direct /products/{encodedId} product URL from product_url or link_url; never use the generic /products collection page. Never append import attribution, source URLs, or phrases like 'Imported from... Original listing...' to product or post descriptions; source URLs belong only in metadata/tool results.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Bandcamp artist/label URL (https://artist.bandcamp.com), /music page, or album/track URL"},"mode":{"type":"string","enum":["products","posts","both"],"description":"products = create DOOMSCROLLR products; posts = create feed posts linking to source products; both = do both"},"limit":{"description":"Maximum products to import. Default 20, max 50.","type":"integer","minimum":1,"maximum":50},"status":{"description":"Post status when creating posts. Use draft unless the user clearly asked to publish now.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime for scheduled posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags to attach to created posts","type":"string"},"shoppable":{"description":"When creating posts, turn on the feed buy button.","type":"boolean"},"display_order":{"description":"Desired top-to-bottom order when creating posts. source preserves the storefront's listing order.","type":"string","enum":["source","source_reversed","newest_first","oldest_first"]},"shipping_cost":{"description":"Optional default shipping cost for created physical products. Ignored for virtual/digital products.","type":"number","minimum":0}},"required":["url","mode"],"additionalProperties":false},"annotations":{"title":"Import Bandcamp Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_import_bigcartel_products","description":"Scrape a public Big Cartel storefront and create DOOMSCROLLR products, feed posts, or both. Big Cartel products are imported as physical with variant/inventory data when available. When reporting results, product/post links for mode='both' MUST use the direct /products/{encodedId} product URL from product_url or link_url; never use the generic /products collection page. Never append import attribution, source URLs, or phrases like 'Imported from... Original listing...' to product or post descriptions; source URLs belong only in metadata/tool results.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Big Cartel storefront URL (https://store.bigcartel.com) or product URL"},"mode":{"type":"string","enum":["products","posts","both"],"description":"products = create DOOMSCROLLR products; posts = create feed posts linking to source products; both = do both"},"limit":{"description":"Maximum products to import. Default 20, max 50.","type":"integer","minimum":1,"maximum":50},"status":{"description":"Post status when creating posts. Use draft unless the user clearly asked to publish now.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime for scheduled posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags to attach to created posts","type":"string"},"shoppable":{"description":"When creating posts, turn on the feed buy button.","type":"boolean"},"display_order":{"description":"Desired top-to-bottom order when creating posts. source preserves the storefront's listing order.","type":"string","enum":["source","source_reversed","newest_first","oldest_first"]},"shipping_cost":{"description":"Optional default shipping cost for created physical products. Ignored for virtual/digital products.","type":"number","minimum":0}},"required":["url","mode"],"additionalProperties":false},"annotations":{"title":"Import Big Cartel Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_import_gumroad_products","description":"Scrape a public Gumroad storefront and create DOOMSCROLLR products, feed posts, or both. Gumroad products are typically digital downloads; created DOOMSCROLLR products default to type=digital and skip shipping. When reporting results, product/post links for mode='both' MUST use the direct /products/{encodedId} product URL from product_url or link_url; never use the generic /products collection page. Never append import attribution, source URLs, or phrases like 'Imported from... Original listing...' to product or post descriptions; source URLs belong only in metadata/tool results.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Gumroad profile URL (https://username.gumroad.com) or product URL (https://username.gumroad.com/l/slug or https://gumroad.com/l/slug)"},"mode":{"type":"string","enum":["products","posts","both"],"description":"products = create DOOMSCROLLR products; posts = create feed posts linking to source products; both = do both"},"limit":{"description":"Maximum products to import. Default 20, max 50.","type":"integer","minimum":1,"maximum":50},"status":{"description":"Post status when creating posts. Use draft unless the user clearly asked to publish now.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime for scheduled posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags to attach to created posts","type":"string"},"shoppable":{"description":"When creating posts, turn on the feed buy button.","type":"boolean"},"display_order":{"description":"Desired top-to-bottom order when creating posts. source preserves the storefront's listing order.","type":"string","enum":["source","source_reversed","newest_first","oldest_first"]},"shipping_cost":{"description":"Optional default shipping cost for created physical products. Ignored for virtual/digital products.","type":"number","minimum":0}},"required":["url","mode"],"additionalProperties":false},"annotations":{"title":"Import Gumroad Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_import_payhip_products","description":"Scrape a public Payhip storefront and create DOOMSCROLLR products, feed posts, or both. Payhip products are typically digital; created DOOMSCROLLR products default to type=digital and skip shipping. When reporting results, product/post links for mode='both' MUST use the direct /products/{encodedId} product URL from product_url or link_url; never use the generic /products collection page. Never append import attribution, source URLs, or phrases like 'Imported from... Original listing...' to product or post descriptions; source URLs belong only in metadata/tool results.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Payhip storefront URL (https://payhip.com/username) or product URL (https://payhip.com/b/slug)"},"mode":{"type":"string","enum":["products","posts","both"],"description":"products = create DOOMSCROLLR products; posts = create feed posts linking to source products; both = do both"},"limit":{"description":"Maximum products to import. Default 20, max 50.","type":"integer","minimum":1,"maximum":50},"status":{"description":"Post status when creating posts. Use draft unless the user clearly asked to publish now.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime for scheduled posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags to attach to created posts","type":"string"},"shoppable":{"description":"When creating posts, turn on the feed buy button.","type":"boolean"},"display_order":{"description":"Desired top-to-bottom order when creating posts. source preserves the storefront's listing order.","type":"string","enum":["source","source_reversed","newest_first","oldest_first"]},"shipping_cost":{"description":"Optional default shipping cost for created physical products. Ignored for virtual/digital products.","type":"number","minimum":0}},"required":["url","mode"],"additionalProperties":false},"annotations":{"title":"Import Payhip Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_import_shopify_products","description":"Scrape a public Shopify storefront product feed, or compatible public product JSON feed, and create DOOMSCROLLR products, feed posts, or both. Use when the user asks to pull/import/copy products from a Shopify store, compatible product feed, or collection. Prefer mode='products' for storefront imports, mode='posts' for feed/content posts, and mode='both' when they want sellable DOOMSCROLLR products plus posts. When reporting results, product/post links for mode='both' MUST use the direct /products/{encodedId} product URL from product_url or link_url; never use the generic /products collection page. Never append import attribution, source URLs, or phrases like 'Imported from... Original listing...' to product or post descriptions; source URLs belong only in metadata/tool results.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Shopify store, collection, products.json URL, or compatible product JSON feed"},"mode":{"type":"string","enum":["products","posts","both"],"description":"products = create DOOMSCROLLR products; posts = create feed posts linking to source Shopify products; both = do both"},"limit":{"description":"Maximum products to import. Default 20, max 50.","type":"integer","minimum":1,"maximum":50},"status":{"description":"Post status when creating posts. Use draft unless the user clearly asked to publish now.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime for scheduled posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags to attach to created posts","type":"string"},"shoppable":{"description":"When creating posts that link to source Shopify products, turn on the feed buy button.","type":"boolean"},"display_order":{"description":"Desired top-to-bottom order when creating posts. source preserves Shopify collection/page order; newest_first sorts by Shopify created_at. The importer creates posts bottom-to-top internally so the final DOOMSCROLLR feed displays correctly.","type":"string","enum":["source","source_reversed","newest_first","oldest_first"]},"shipping_cost":{"description":"Optional default shipping cost for created physical products","type":"number","minimum":0}},"required":["url","mode"],"additionalProperties":false},"annotations":{"title":"Import Shopify Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_import_url_products","description":"Auto-detect the storefront platform from a URL (shopify, gumroad, payhip, bandcamp, bigcartel) and create DOOMSCROLLR products, feed posts, or both. When reporting results, product/post links for mode='both' MUST use the direct /products/{encodedId} product URL from product_url or link_url; never use the generic /products collection page. Never append import attribution, source URLs, or phrases like 'Imported from... Original listing...' to product or post descriptions; source URLs belong only in metadata/tool results.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public storefront, collection, or product URL on a supported platform"},"mode":{"type":"string","enum":["products","posts","both"],"description":"products = create DOOMSCROLLR products; posts = create feed posts linking to source products; both = do both"},"limit":{"description":"Maximum products to import. Default 20, max 50.","type":"integer","minimum":1,"maximum":50},"status":{"description":"Post status when creating posts. Use draft unless the user clearly asked to publish now.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime for scheduled posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags to attach to created posts","type":"string"},"shoppable":{"description":"When creating posts, turn on the feed buy button.","type":"boolean"},"display_order":{"description":"Desired top-to-bottom order when creating posts.","type":"string","enum":["source","source_reversed","newest_first","oldest_first"]},"shipping_cost":{"description":"Optional default shipping cost for created physical products. Ignored for virtual/digital products.","type":"number","minimum":0}},"required":["url","mode"],"additionalProperties":false},"annotations":{"title":"Import URL Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_list_posts","description":"List recent posts from your DOOMSCROLLR.","inputSchema":{"type":"object","properties":{"per_page":{"description":"Posts per page (max 50)","type":"number","minimum":1,"maximum":50},"page":{"description":"Page number","type":"number","minimum":1},"q":{"description":"Search title, description, or URL","type":"string"},"status":{"description":"Filter by post status","type":"string","enum":["published","draft","scheduled"]},"tag":{"description":"Filter by exact tag name","type":"string"}},"additionalProperties":false},"annotations":{"title":"List Posts","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_list_products","description":"List products on your DOOMSCROLLR.","inputSchema":{"type":"object","properties":{"per_page":{"description":"Results per page","type":"number","minimum":1,"maximum":50},"page":{"description":"Page number","type":"number","minimum":1},"q":{"description":"Search title, description, or SKU","type":"string"},"type":{"description":"Filter by product type","type":"string","enum":["physical","digital","ticket","subscription"]},"min_price":{"description":"Minimum price filter in dollars; includes matching variant prices","type":"number","minimum":0},"max_price":{"description":"Maximum price filter in dollars; includes matching variant prices","type":"number","minimum":0}},"additionalProperties":false},"annotations":{"title":"List Products","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_list_subscribers","description":"List audience members from your DOOMSCROLLR.","inputSchema":{"type":"object","properties":{"per_page":{"description":"Results per page","type":"number","minimum":1,"maximum":50},"page":{"description":"Page number","type":"number","minimum":1},"q":{"description":"Search by email, name, username, or phone","type":"string"},"tag":{"description":"Filter by exact tag name","type":"string"},"bounced":{"description":"Filter by bounced email status","type":"boolean"}},"additionalProperties":false},"annotations":{"title":"List Subscribers","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_pinterest_status","description":"Check status of connected Pinterest boards — last poll time, total posts created, any errors.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Pinterest Status","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_post_shopmy_products","description":"Post ShopMy affiliate product recommendations to DOOMSCROLLR. Use after finding ShopMy product/affiliate URLs for gift guides, outfit edits, beauty routines, home finds, travel kits, or other influencer recommendations. DOOMSCROLLR crawls the final retail page for title/description/photo while preserving the ShopMy URL as the click target so affiliate commission attribution remains intact.","inputSchema":{"type":"object","properties":{"products":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"ShopMy affiliate/product URL to post"},"title":{"description":"Optional override title; otherwise crawled from the final linked product page","type":"string"},"description":{"description":"Optional override description; otherwise crawled from the final linked product page","type":"string"},"note":{"description":"Creator recommendation note, e.g. why this product fits the edit","type":"string"}},"required":["url"],"additionalProperties":false},"description":"ShopMy products to post"},"collection_title":{"description":"Collection/edit title, e.g. 'Clean girl beauty under $50'","type":"string"},"use_case":{"description":"Use case/category, e.g. skincare routine, outfit edit, gift guide, home finds","type":"string"},"tags":{"description":"Comma-separated tags; shopmy, affiliate, and product-recommendation are added automatically by the API","type":"string"},"status":{"description":"Post status; default is draft so creators can approve affiliate picks","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime to schedule publication","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["products"],"additionalProperties":false},"annotations":{"title":"Post Shopmy Products","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_prepare_user_questions","description":"Prepare clear options/questions for the end user before taking an action. Use this when a DOOMSCROLLR workflow needs a human choice (for example products vs posts vs both, draft vs publish, domain choice, style direction, or missing required setup details). Return the questions to the user and wait for their answer before calling write tools.","inputSchema":{"type":"object","properties":{"context":{"type":"string","enum":["shopify_import","product_drop","domain","style","audience_capture","replacement_flow","generic"],"description":"Workflow context for the decision prompt"},"goal":{"description":"What the user is trying to accomplish, in plain language","type":"string"},"details":{"description":"Known facts such as source URL, product count, brand name, or candidate domains","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["context"],"additionalProperties":false},"annotations":{"title":"Prepare User Questions","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_publish_image_post","description":"Publish an image post to your DOOMSCROLLR. Share visual content, artwork, product photos, or screenshots.","inputSchema":{"type":"object","properties":{"image":{"type":"string","description":"Base64-encoded image data or image URL"},"title":{"description":"Post title","type":"string"},"description":{"description":"Post description","type":"string"},"tags":{"description":"Comma-separated tags","type":"string"},"status":{"description":"Post status (default: published; scheduled when publish_at is supplied)","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime to schedule publication, e.g. 2026-05-01T17:00:00Z","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"shoppable":{"description":"Show a buy button on this post.","type":"boolean"}},"required":["image"],"additionalProperties":false},"annotations":{"title":"Publish Image Post","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_publish_polymarket_post","description":"Publish a Polymarket market/event URL to your DOOMSCROLLR as an owned iframe embed. Use this when the user gives a Polymarket URL or asks to post betting/market odds; DOOMSCROLLR automatically renders it through the owned Polymarket widget instead of a plain link card.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Polymarket event/market URL, e.g. https://polymarket.com/event/los-angeles-mayoral-election-117"},"title":{"description":"Optional post title","type":"string"},"description":{"description":"Optional post description","type":"string"},"tags":{"description":"Comma-separated tags","type":"string"},"status":{"description":"Post status (default: published; scheduled when publish_at is supplied)","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime to schedule publication, e.g. 2026-05-01T17:00:00Z","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Publish Polymarket Post","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_publish_post","description":"Publish a link post to your DOOMSCROLLR. Share articles, products, events, or any URL with subscribers. DOOMSCROLLR tries to fetch/repair preview metadata before publishing and returns a clear diagnostic without creating the post if the source would render broken. Polymarket URLs automatically render as owned widget embeds; use doomscrollr_publish_polymarket_post when the user specifically asks for a Polymarket odds post. Set shoppable=true to show a buy button for product/commerce links.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"URL to share"},"title":{"description":"Post title","type":"string"},"description":{"description":"Post description","type":"string"},"tags":{"description":"Comma-separated tags","type":"string"},"status":{"description":"Post status (default: published; scheduled when publish_at is supplied)","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime to schedule publication, e.g. 2026-05-01T17:00:00Z","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"shoppable":{"description":"Show a buy button on this post. Use true for product/Shopify/commerce links when the user asks for buy buttons.","type":"boolean"},"allow_no_image":{"description":"Advanced override: allow publishing even when DOOMSCROLLR cannot find a usable preview image/embed after server-side repair. Defaults to false to prevent broken posts.","type":"boolean"}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Publish Post","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_remove_subscriber","description":"Remove a subscriber from the audience by id. Irreversible. Alias: doomscrollr_delete_subscriber.","inputSchema":{"type":"object","properties":{"id":{"type":"number","description":"Subscriber id. Get this from doomscrollr_list_subscribers."}},"required":["id"],"additionalProperties":false},"annotations":{"title":"Remove Subscriber","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true}},{"name":"doomscrollr_rss_status","description":"Check status of native RSS integrations — last poll time, latest item, total posts created, and errors.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Rss Status","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_scrape_bandcamp_products","description":"Scrape a public Bandcamp storefront or product page without creating anything. Returns normalized products, images, prices, variants, and source URLs.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Bandcamp artist/label URL (https://artist.bandcamp.com), /music page, or album/track URL"},"limit":{"description":"Maximum products to return. Default 50.","type":"integer","minimum":1,"maximum":100}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Scrape Bandcamp Products","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_scrape_bigcartel_products","description":"Scrape a public Big Cartel storefront or product page without creating anything. Returns normalized products, images, prices, variants, and source URLs.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Big Cartel storefront URL (https://store.bigcartel.com) or product URL"},"limit":{"description":"Maximum products to return. Default 50.","type":"integer","minimum":1,"maximum":100}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Scrape Bigcartel Products","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_scrape_gumroad_products","description":"Scrape a public Gumroad storefront or product page without creating anything. Returns normalized products, images, prices, variants, and source URLs.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Gumroad profile URL (https://username.gumroad.com) or product URL (https://username.gumroad.com/l/slug or https://gumroad.com/l/slug)"},"limit":{"description":"Maximum products to return. Default 50.","type":"integer","minimum":1,"maximum":100}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Scrape Gumroad Products","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_scrape_payhip_products","description":"Scrape a public Payhip storefront or product page without creating anything. Returns normalized products, images, prices, variants, and source URLs.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Payhip storefront URL (https://payhip.com/username) or product URL (https://payhip.com/b/slug)"},"limit":{"description":"Maximum products to return. Default 50.","type":"integer","minimum":1,"maximum":100}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Scrape Payhip Products","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_scrape_shopify_products","description":"Scrape a public Shopify storefront product feed without creating anything. Pass a Shopify homepage, collection URL, or /products.json URL; compatible public product JSON feeds may work when they expose normal product fields. Returns normalized products, images, prices, variants, inventory hints, and source product URLs.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public Shopify store, collection, products.json URL, or compatible product JSON feed, e.g. https://shop.example.com or https://shop.example.com/collections/shirts"},"limit":{"description":"Maximum products to return. Default 50.","type":"integer","minimum":1,"maximum":100}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Scrape Shopify Products","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_scrape_url_products","description":"Scrape products from a public storefront URL on any supported platform (shopify, gumroad, payhip, bandcamp, bigcartel). Auto-detects the platform from the URL host (and falls back to trying Shopify for custom domains).","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public storefront, collection, or product URL on a supported platform"},"limit":{"description":"Maximum products to return. Default 50.","type":"integer","minimum":1,"maximum":100}},"required":["url"],"additionalProperties":false},"annotations":{"title":"Scrape Url Products","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_search_domains","description":"Search domain availability for your DOOMSCROLLR. Checks .com, .io, .co, and .world TLDs.","inputSchema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":63,"description":"Base domain name to search (without TLD, e.g., 'mybrand')"}},"required":["name"],"additionalProperties":false},"annotations":{"title":"Search Domains","readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_search_pinterest","description":"Search public Pinterest pins by keyword without connecting a board. Use this to discover visual content ideas before posting anything.","inputSchema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":255,"description":"Pinterest search query, e.g. 'air cooled Porsche'"},"limit":{"description":"Maximum pins to return","type":"integer","minimum":1,"maximum":25}},"required":["query"],"additionalProperties":false},"annotations":{"title":"Search Pinterest","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_search_pinterest_and_post","description":"Search public Pinterest for visual content and create image posts from the best results. Use this for prompts like 'Search Pinterest for Air Cooled Porsche content and post it to my DOOMSCROLLR.' Prefer status='draft' when the user has not explicitly approved immediate publishing.","inputSchema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":255,"description":"Pinterest search query, e.g. 'air cooled Porsche'"},"limit":{"description":"Number of Pinterest results to turn into DOOMSCROLLR posts","type":"integer","minimum":1,"maximum":10},"status":{"description":"Post status. Use draft unless the user clearly asked to publish now.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime for scheduled posts","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags, e.g. 'porsche,cars,air-cooled'","type":"string"}},"required":["query"],"additionalProperties":false},"annotations":{"title":"Search Pinterest And Post","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_set_curation_theme","description":"Set the AI curation theme used for imported content decisions. Pass null/empty text to clear it.","inputSchema":{"type":"object","properties":{"theme":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"description":"Theme description, e.g. 'Cute English Cocker Spaniel photos; drop text-only images and ads.'"}},"required":["theme"],"additionalProperties":false},"annotations":{"title":"Set Curation Theme","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_top_liked_posts","description":"Show which posts are getting the most likes over a recent time window. Use this for prompts like 'Tell me which posts are getting the most likes.'","inputSchema":{"type":"object","properties":{"limit":{"description":"How many top posts to return","type":"integer","minimum":1,"maximum":50},"days":{"description":"Lookback window in days; default 30","type":"integer","minimum":1,"maximum":3650}},"additionalProperties":false},"annotations":{"title":"Top Liked Posts","readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}},{"name":"doomscrollr_update_post","description":"Update a post — change its title, description, publish status, tags, or shoppable buy-button state. Only fields you pass are changed; omitted fields stay as they were. Use doomscrollr_list_posts to find the id.","inputSchema":{"type":"object","properties":{"id":{"type":"number","description":"Post id. Get this from doomscrollr_list_posts."},"title":{"description":"New post title.","type":"string"},"description":{"description":"New post description / body text.","type":"string"},"status":{"description":"Set to published, draft, or scheduled.","type":"string","enum":["published","draft","scheduled"]},"publish_at":{"description":"Future ISO 8601 datetime to schedule publication.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"tags":{"description":"Comma-separated tags, e.g. 'sneakers,hype,summer'. Replaces existing tags.","type":"string"},"shoppable":{"description":"Set true to show the buy button, false to hide it.","type":"boolean"}},"required":["id"],"additionalProperties":false},"annotations":{"title":"Update Post","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_update_product","description":"Update an existing product's title, description, price, inventory, or cover image. Only fields you pass are changed; omitted fields stay as they were. Use doomscrollr_list_products to find the id.","inputSchema":{"type":"object","properties":{"id":{"type":"number","description":"Product id. Get this from doomscrollr_list_products."},"title":{"description":"New product name.","type":"string"},"description":{"description":"New product description.","type":"string"},"price":{"description":"New price in dollars (e.g. 29.99). Must be >= 0.","type":"number","minimum":0},"inventory_count":{"description":"New stock count (integer >= 0). Only meaningful for non-variant physical/ticket products.","type":"integer","minimum":0,"maximum":9007199254740991},"cover_photo_url":{"description":"New cover image URL (must be publicly reachable).","type":"string","format":"uri"},"variant_options":{"description":"Replace product variant option definitions","type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Option name, e.g. Color or Size"},"values":{"type":"array","items":{"type":"string"},"description":"Allowed values for this option"}},"required":["name","values"],"additionalProperties":false}},"variants":{"description":"Replace all sellable variants with per-variant inventory","type":"array","items":{"type":"object","properties":{"variant_data":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Map of option name to selected value"},"price":{"type":"number","minimum":0,"description":"Variant price in dollars"},"inventory_count":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"Stock for this exact variant"},"sku":{"description":"Optional SKU","type":"string"}},"required":["variant_data","price","inventory_count"],"additionalProperties":false}}},"required":["id"],"additionalProperties":false},"annotations":{"title":"Update Product","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_update_settings","description":"Update appearance and settings — name/bio, SEO, logo/favicon/OG image, logo max width, advanced layout, custom CSS/JS, Google Translate, email capture, subscriptions, popup, CTA bar, and buy button styling.","inputSchema":{"type":"object","properties":{"name":{"description":"Display name","type":"string"},"bio":{"description":"Bio/description","type":"string"},"title":{"description":"SEO title","type":"string"},"description":{"description":"SEO description","type":"string"},"logo":{"description":"Logo image URL","type":"string"},"favicon":{"description":"Favicon image URL","type":"string"},"og_image":{"description":"Open Graph/social share image URL","type":"string"},"logo_max_width":{"description":"Maximum rendered logo width in pixels","type":"integer","minimum":1,"maximum":2000},"font_id":{"description":"Google Font ID","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"user_theme":{"description":"Theme identifier","type":"string"},"desktop_grid":{"description":"Desktop grid columns","type":"integer","minimum":1,"maximum":10},"mobile_grid":{"description":"Mobile grid columns","type":"integer","minimum":1,"maximum":5},"text_alignment":{"description":"Text alignment","type":"string","enum":["left","center","right"]},"post_spacing":{"description":"Post spacing","type":"integer","minimum":0,"maximum":2000},"grid_row_spacing":{"description":"Desktop grid row spacing in pixels","type":"integer","minimum":0,"maximum":800},"grid_column_spacing":{"description":"Desktop grid column spacing in pixels","type":"integer","minimum":0,"maximum":800},"grid_alignment":{"description":"Grid alignment","type":"string","enum":["left","center","right"]},"mobile_grid_row_spacing":{"description":"Mobile grid row spacing in pixels","type":"integer","minimum":0,"maximum":200},"mobile_grid_column_spacing":{"description":"Mobile grid column spacing in pixels","type":"integer","minimum":0,"maximum":200},"mobile_post_spacing":{"description":"Mobile post spacing in pixels","type":"integer","minimum":0,"maximum":400},"css":{"description":"Custom CSS","type":"string"},"js":{"description":"Custom JavaScript","type":"string"},"custom_cursor":{"description":"Custom cursor URL or CSS cursor value","type":"string"},"secret_emoji":{"description":"Secret emoji trigger","type":"string"},"cookie_banner_show":{"description":"Show cookie banner","type":"boolean"},"draft_mode":{"description":"Enable draft mode (hides your DOOMSCROLLR from public)","type":"boolean"},"pages_settings_enabled":{"description":"Enable public pages/navigation settings","type":"boolean"},"google_analytics_account_id":{"description":"Google Analytics tracking ID","type":"string"},"facebook_pixel_id":{"description":"Facebook Pixel ID","type":"string"},"google_translate":{"description":"Enable Google Translate widget","type":"boolean"},"google_translate_default_language":{"description":"Default language code for Google Translate","type":"string"},"cta_bar_text":{"description":"CTA bar text","type":"string"},"cta_bar_url":{"description":"CTA bar URL","type":"string"},"cta_bar_scroll":{"description":"CTA bar scroll behavior","type":"boolean"},"email_subject":{"description":"Default email capture/welcome subject","type":"string"},"email_copy":{"description":"Default email capture/welcome copy","type":"string"},"email_cta":{"description":"Default email capture/welcome CTA","type":"string"},"pre_check_consent":{"description":"Pre-check subscriber consent checkbox","type":"boolean"},"countdown_timer":{"description":"Enable countdown timer when the account plan allows it","type":"boolean"},"countdown_timer_date":{"description":"Countdown timer target date","type":"string"},"popup_number_posts":{"description":"Show popup after this many posts","type":"integer","minimum":0,"maximum":9007199254740991},"popup_options_enabled":{"description":"Enable popup options","type":"boolean"},"popup_show_to_users":{"description":"Show popup to users","type":"boolean"},"popup_time_delay":{"description":"Popup delay in seconds","type":"integer","minimum":0,"maximum":9007199254740991},"buy_button_max_width":{"description":"Buy button max width","type":"integer","minimum":100,"maximum":2000},"buy_button_position":{"description":"Buy button position","type":"string","enum":["above","below"]},"buy_button_mode":{"description":"Buy button display mode","type":"string","enum":["smart","always","manual"]},"buy_button_background_color":{"description":"Buy button background color","type":"string"},"buy_button_text_color":{"description":"Buy button text color","type":"string"},"buy_button_outline_color":{"description":"Buy button outline color","type":"string"},"subscription_enabled":{"description":"Enable paid subscription/membership","type":"boolean"},"subscription_price":{"description":"Subscription price in cents","type":"integer","minimum":100,"maximum":9007199254740991},"subscription_interval":{"description":"Subscription billing interval","type":"string","enum":["monthly","yearly"]},"subscription_gate_mode":{"description":"Subscription content gating mode","type":"string","enum":["all","tags","manual"]},"subscription_gate_tag_ids":{"description":"Tag ids gated when subscription_gate_mode is tags","type":"array","items":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}}},"additionalProperties":false},"annotations":{"title":"Update Settings","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"doomscrollr_update_subscriber","description":"Update an existing audience member by id, including tags, profile/contact fields, and UTM attribution.","inputSchema":{"type":"object","properties":{"id":{"type":"number","description":"Subscriber id. Get this from doomscrollr_list_subscribers."},"email":{"description":"Subscriber email address. Optional if email_md5 is supplied.","type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"email_md5":{"description":"MD5 hash of the lowercase trimmed email when raw email is unavailable","type":"string","pattern":"^[a-f0-9]{32}$"},"first_name":{"description":"First name","type":"string"},"last_name":{"description":"Last name","type":"string"},"phone":{"description":"Phone number","type":"string"},"gender":{"description":"Gender marker, if provided","type":"string"},"source":{"description":"Acquisition source (e.g., email_signup, website, api, embed)","type":"string"},"city":{"description":"City","type":"string"},"state":{"description":"State/region","type":"string"},"country":{"description":"Country","type":"string"},"bio":{"description":"Audience bio / biography","type":"string"},"username":{"description":"Social/account username","type":"string"},"followers":{"description":"Follower count","type":"integer","minimum":0,"maximum":9007199254740991},"tags":{"description":"Comma-separated tags or an array of tags","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"utm_source":{"description":"UTM source","type":"string"},"utm_medium":{"description":"UTM medium","type":"string"},"utm_campaign":{"description":"UTM campaign","type":"string"},"utm_content":{"description":"UTM content","type":"string"},"utm_term":{"description":"UTM term","type":"string"}},"required":["id"],"additionalProperties":false},"annotations":{"title":"Update Subscriber","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}}],"resources":[{"uri":"ui://doomscrollr/widgets/pinterest-v1.html","name":"doomscrollr-pinterest-widget","mimeType":"text/html;profile=mcp-app","description":"Pinterest search results card with imageable pins ready to draft."},{"uri":"ui://doomscrollr/widgets/product-v1.html","name":"doomscrollr-product-widget","mimeType":"text/html;profile=mcp-app","description":"Product / Shopify import card with title, price, image, and CTA."},{"uri":"ui://doomscrollr/widgets/style-v1.html","name":"doomscrollr-style-widget","mimeType":"text/html;profile=mcp-app","description":"Style preset preview card showing applied brand styling."},{"uri":"ui://doomscrollr/widgets/analytics-v1.html","name":"doomscrollr-analytics-widget","mimeType":"text/html;profile=mcp-app","description":"Top-liked posts analytics card for the last N days."}],"prompts":[]},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8"}}},"oauth_protected_resource":{"status":"ok","latency_ms":113.7,"details":{"url":"https://mcp.doomscrollr.com/.well-known/oauth-protected-resource","payload":{"resource":"https://mcp.doomscrollr.com/mcp","authorization_servers":["https://mcp.doomscrollr.com"],"bearer_methods_supported":["header"],"resource_documentation":"https://mcp.doomscrollr.com"},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8"}}},"oauth_authorization_server":{"status":"ok","latency_ms":110.16,"details":{"url":"https://mcp.doomscrollr.com/.well-known/oauth-authorization-server","payload":{"issuer":"https://mcp.doomscrollr.com","authorization_endpoint":"https://mcp.doomscrollr.com/oauth/authorize","token_endpoint":"https://mcp.doomscrollr.com/oauth/token","registration_endpoint":"https://mcp.doomscrollr.com/oauth/register","response_types_supported":["code"],"grant_types_supported":["authorization_code","refresh_token"],"token_endpoint_auth_methods_supported":["none"],"code_challenge_methods_supported":["S256"],"scopes_supported":["mcp"],"authorization_response_iss_parameter_supported":true,"service_documentation":"https://mcp.doomscrollr.com"},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8"}}},"openid_configuration":{"status":"ok","latency_ms":104.35,"details":{"url":"https://mcp.doomscrollr.com/.well-known/openid-configuration","payload":{"issuer":"https://mcp.doomscrollr.com","authorization_endpoint":"https://mcp.doomscrollr.com/oauth/authorize","token_endpoint":"https://mcp.doomscrollr.com/oauth/token","registration_endpoint":"https://mcp.doomscrollr.com/oauth/register","response_types_supported":["code"],"grant_types_supported":["authorization_code","refresh_token"],"token_endpoint_auth_methods_supported":["none"],"code_challenge_methods_supported":["S256"],"scopes_supported":["mcp"],"authorization_response_iss_parameter_supported":true,"service_documentation":"https://mcp.doomscrollr.com"},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8"}}},"initialize":{"status":"error","latency_ms":115.04,"details":{"url":"https://mcp.doomscrollr.com","error":"Client error '404 Not Found' for url 'https://mcp.doomscrollr.com'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404","http_status":404,"payload":{},"headers":{"content-type":"text/html; charset=utf-8"}}},"protocol_version_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_protocol_version","validator_protocol_version":"2025-03-26","latest_known_version":"2025-11-25"}},"tools_list":{"status":"skipped","latency_ms":null,"details":{"reason":"initialize_unreachable"}},"prompts_list":{"status":"skipped","latency_ms":null,"details":{"reason":"initialize_unreachable"}},"prompt_get":{"status":"missing","latency_ms":null,"details":{"reason":"not_advertised"}},"resources_list":{"status":"skipped","latency_ms":null,"details":{"reason":"initialize_unreachable"}},"resource_read":{"status":"missing","latency_ms":null,"details":{"reason":"no_resource_uri"}},"determinism_probe":{"status":"skipped","latency_ms":null,"details":{"reason":"initialize_unreachable"}},"instruction_tool_reference_probe":{"status":"not_assessed","latency_ms":null,"details":{"reason":"initialize_or_tools_unavailable"}},"session_resume_probe":{"status":"skipped","latency_ms":null,"details":{"reason":"initialize_unreachable"}},"step_up_auth_probe":{"status":"ok","latency_ms":null,"details":{"oauth_present":true,"auth_required_checks":[],"supported_scopes":["mcp"],"scope_specificity_ratio":0.5,"broad_scopes":[],"challenge_headers":[],"step_up_signals":[],"minimal_scope_documented":true}},"transport_compliance_probe":{"status":"skipped","latency_ms":null,"details":{"reason":"initialize_unreachable"}},"utility_coverage_probe":{"status":"ok","latency_ms":null,"details":{"completions":{"advertised":true,"sample_target":{"type":"resource","uri":"ui://doomscrollr/widgets/pinterest-v1.html"},"live_probe":"not_executed"},"pagination":{"supported":true,"next_cursor_methods":[],"metadata_signal":true},"tasks":{"advertised":false,"probe_status":"skipped","http_status":null},"initialize_capability_keys":[]}},"advanced_capabilities_probe":{"status":"warning","latency_ms":null,"details":{"capabilities":{"prompts":false,"resources":true,"completions":true,"roots":false,"sampling":false,"elicitation":false,"structured_outputs":false,"resource_links":true},"enabled_count":3,"enabled":["completions","resource_links","resources"],"initialize_capability_keys":[]}},"tool_snapshot_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_tools"}},"connector_replay_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_tools"}},"request_association_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_request_association_capabilities_advertised"}},"interactive_flow_probe":{"status":"ok","latency_ms":null,"details":{"risk_hits":[],"safe_hits":["oauth","browser","consent"],"oauth_supported":true,"prompt_available":false}},"action_safety_probe":{"status":"not_assessed","latency_ms":null,"details":{"summary":{"tool_count":0,"high_risk_tools":0,"destructive_tools":0,"exec_tools":0,"egress_tools":0,"secret_tools":0,"bulk_access_tools":0,"declared_non_read_only_tools":0,"annotation_conflict_tools":0,"risk_distribution":{"low":0,"medium":0,"high":0,"critical":0},"capability_distribution":{},"has_mutating_capability":false,"has_non_read_capability":false},"auth_present":true,"safeguard_count":0,"confirmation_signals":[],"reason":"empty_observation_set"}},"official_registry_probe":{"status":"missing","latency_ms":null,"details":{"registry_source":"github_topic_registry","direct_match":false,"official_peer_count":0}},"provenance_divergence_probe":{"status":"not_assessed","latency_ms":null,"details":{"direct_official_match":false,"registry_title":null,"server_card_title":"doomscrollr","registry_version":null,"server_card_version":"1.0.24","registry_homepage":null,"server_card_homepage":null,"registry_repository":null,"server_card_repository":null,"drift_fields":[],"metadata_document_count":2,"compared_fields":["title","version","homepage","repository"],"readable_sources":["server_card"],"comparable_field_count":0}},"schema_divergence_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_live_tools","compared_tool_count":0,"compared_dimensions":["server_name","server_version","declared_vs_observed_auth","tool_membership","parameter_names","required_parameters","parameter_types","output_schema_presence"],"server_name_mismatch":false,"card_server_name":"doomscrollr","live_server_name":null,"server_version_mismatch":false,"card_server_version":"1.0.24","live_server_version":null,"auth_scheme_mismatch":false}},"connector_publishability_probe":{"status":"error","latency_ms":null,"details":{"transport":"streamable-http","tool_count":0,"high_risk_tools":0,"blockers":["initialize","tools_list","protocol_version","session_resume","transport_compliance","connector_replay","request_association","action_safety","tool_surface","auth_flow"],"criteria":{"remote_transport":true,"initialize":false,"tools_list":false,"protocol_version":false,"session_resume":false,"step_up_auth":true,"transport_compliance":false,"connector_replay":false,"request_association":false,"action_safety":false,"server_card":true,"tool_surface":false,"auth_flow":false}}}}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing","message":"Core MCP flows did not validate successfully on the latest run.","addressee":"publisher"}],"maintainer_analytics":{},"public_server_reputation":{},"maintainer_response_quality":{},"maintainer_annotations":[],"maintainer_rebuttals":[],"security_posture_summary":{},"tool_security_inventory":[],"transport_compliance":{},"utility_coverage":{},"write_action_governance":{},"provenance_divergence":{},"alias_consolidation":{},"alert_routing":{},"authenticated_validation":{},"hosted_runtime":{},"action_controls_diff":null,"benchmark_tasks":[],"latest_capability_counts":{},"point_loss_breakdown":[],"verdict_traces":{},"current_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_7dc8023a9606565f","generated_at":"2026-09-03T03:57:57.603558+00:00","trust_evaluated_at":"2026-09-03T03:57:57.603558+00:00","evidence_revision":"8e5ede679db93f6a8e33a67d","source":"current_snapshot","server":"github-doomscrollr/mcp","last_validated_at":"2026-09-03T03:38:01.317094+00:00","validation_age_hours":0.33,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-09-03T03:38:01.317094+00:00","age_hours":0.33,"bucket":"verified_last_24h","label":"Verified in last 24h","badges":["verified_last_24h"],"freshness_sla_hours":720.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":null,"raw_score":null,"confidence_score":null,"confidence_weighted_score":null,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":true,"priority_revalidation":true}]},"current_status":"failing","current_score":null,"display_score":null,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Not assessed","why":"tool surface has not been observed by any completed validation run","next_action":"revalidate so the tool surface can be inspected before a production decision is made","reason_count":0},"production_readiness_class":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully."},"evidence_confidence":{"score":null,"label":"not_assessed","validation_age_hours":0.33,"live_check_count":9,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":9,"validation_age_hours":0.33,"freshness_threshold_hours":24}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing"}],"active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-09-03T03:57:57.603558+00:00"}},"trust_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_7dc8023a9606565f","generated_at":"2026-09-03T03:57:57.603558+00:00","trust_evaluated_at":"2026-09-03T03:57:57.603558+00:00","evidence_revision":"8e5ede679db93f6a8e33a67d","source":"current_snapshot","server":"github-doomscrollr/mcp","last_validated_at":"2026-09-03T03:38:01.317094+00:00","validation_age_hours":0.33,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-09-03T03:38:01.317094+00:00","age_hours":0.33,"bucket":"verified_last_24h","label":"Verified in last 24h","badges":["verified_last_24h"],"freshness_sla_hours":720.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":null,"raw_score":null,"confidence_score":null,"confidence_weighted_score":null,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":true,"priority_revalidation":true}]},"current_status":"failing","current_score":null,"display_score":null,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Not assessed","why":"tool surface has not been observed by any completed validation run","next_action":"revalidate so the tool surface can be inspected before a production decision is made","reason_count":0},"production_readiness_class":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully."},"evidence_confidence":{"score":null,"label":"not_assessed","validation_age_hours":0.33,"live_check_count":9,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":9,"validation_age_hours":0.33,"freshness_threshold_hours":24}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing"}],"active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-09-03T03:57:57.603558+00:00"}},"agent_commerce":{},"latest_claim":null,"maintainer_profile_slug":null,"watch_summary":{},"partial":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"trust_evaluated_at":"2026-09-03T03:57:57.603558+00:00","evidence_revision":"8e5ede679db93f6a8e33a67d","active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-09-03T03:57:57.603558+00:00"},"owner_opted_out":false,"observed_attention":{"schema":"verify.observed_attention.v1","window_days":30,"level":"none","label":"No observed attention","summary":"No recent machine-readable trust or discovery activity observed for this server.","segments":{"useful_ai_user":{"level":"none","observed":false,"description":"AI-assisted user sessions such as ChatGPT/User or Claude/User."},"machine_trust_evaluator":{"level":"none","observed":false,"description":"Synthetic sessions inspecting multiple trust surfaces such as report, policy, ledger, badge, trust-summary, or compare."},"possible_agent_or_script":{"level":"none","observed":false,"description":"Structured direct sessions with rapid profile, compare, report, policy, badge, or trust-surface fan-out."},"isolated_machine_surface":{"level":"none","observed":false,"description":"Aged-out direct synthetic singleton sessions that touched a machine-readable trust surface without becoming a broader evaluator."},"ai_crawler":{"level":"none","observed":false,"description":"Known AI crawler activity such as ClaudeBot, GPTBot, or similar crawlers."},"search_crawler":{"level":"none","observed":false,"description":"Search and SEO crawler activity."},"browser_like_automation":{"level":"none","observed":false,"description":"Browser-like synthetic sessions with rapid structured endpoint activity."},"confirmed_human":{"level":"none","observed":false,"description":"Confirmed browser-session human activity."}},"surfaces_observed":{"server_profile":false,"compare":false,"compare_json":false,"compare_api":false,"report_json":false,"policy":false,"ledger":false,"badge_metadata":false,"badge_svg":false,"trust_summary":false,"mcp_tool":false},"claim_prompt":{"recommended":false,"reason":"No claim prompt is recommended from observed attention in the current window."},"notes":["Observed attention is based on segmented first-party telemetry.","Crawler and evaluator activity is not treated as confirmed human demand.","Public levels are bucketed to avoid exposing raw traffic counts."]},"owner_activation":{"claim_recommended":false,"reason":"no_observed_attention"},"snapshot_id":"trustsnap_7dc8023a9606565f"}],"rows":[{"label":"Snapshot ID","values":["trustsnap_7dc8023a9606565f"]},{"label":"Status","values":["failing"]},{"label":"Score","values":[null]},{"label":"Production readiness","values":["Failing"]},{"label":"Production trust decision","values":["Not assessed"]},{"label":"Recommended policy","values":["Not assessed"]},{"label":"Observed Attention","values":["No observed attention"]},{"label":"Evidence confidence","values":[null]},{"label":"Freshness","values":["n/a"]},{"label":"Latency","values":["n/a"]},{"label":"Spec recency","values":[0.0]},{"label":"Session resume","values":[0.0]},{"label":"Step-up auth","values":[4.0]},{"label":"Transport compliance","values":[0.0]},{"label":"Utility coverage","values":[2.0]},{"label":"Publishability","values":[0.0]},{"label":"Connector replay","values":[0.0]},{"label":"Request association","values":[0.0]},{"label":"Action safety","values":[null]},{"label":"Registry presence","values":[2.0]},{"label":"Provenance divergence","values":[null]},{"label":"Client compatibility: ChatGPT","values":["unknown"]},{"label":"Client compatibility: Claude","values":["unknown"]},{"label":"Write-action publishing","values":["unknown"]},{"label":"Snapshot churn risk","values":["unknown"]},{"label":"Transport","values":["streamable-http"]},{"label":"Auth","values":["OAuth"]},{"label":"Tools","values":[0]},{"label":"Prompts","values":[0]},{"label":"Resources","values":[0]},{"label":"OAuth","values":[true]},{"label":"DCR","values":[true]},{"label":"Taxonomy","values":[""]},{"label":"Recommended for","values":["none"]},{"label":"Top alerts","values":["Latest validation is failing"]}],"partial":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"cache_note":"Compact compare fallback response; deep compare evidence is deferred to protect web capacity.","trust_evaluated_at":"2026-09-03T03:57:57.603558+00:00","materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-09-03T03:57:57.606682+00:00"}}