Complete Execution Output (JSON):
{
"analyze_page": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "analyze_page"
},
"backlink_analysis": {
"error": null,
"execution_details": {
"actual_result": {
"error": null,
"result": [
{
"annotations": null,
"text": "Error: API Error: Access denied. Visit Plans and Subscriptions to activate your subscription and get access to this API: https://app.dataforseo.com/backlinks-subscription . (Code: 40204)",
"type": "text"
}
],
"status": "success",
"tool_name": "backlinks_summary"
},
"duration_seconds": 1.241044,
"end_time": "2025-07-07T08:18:57.342535",
"message_sent": true,
"start_time": "2025-07-07T08:18:56.101491",
"timestamp": "2025-07-07T08:18:57.342535",
"worker_executed": true,
"workers_notified": true
},
"output": "Task completed successfully",
"result": [
{
"annotations": null,
"text": "Error: API Error: Access denied. Visit Plans and Subscriptions to activate your subscription and get access to this API: https://app.dataforseo.com/backlinks-subscription . (Code: 40204)",
"type": "text"
}
],
"return_code": 0,
"status": "success",
"stderr": "",
"task_id": "backlink_analysis",
"tool_name": "backlinks_summary"
},
"compile_report": {
"execution_details": {
"actual_result": {
"output": "__OUTPUTS__ {\"report_metadata\": {\"title\": \"Technical SEO Audit Report\", \"generated_at\": \"2025-07-07T08:24:56.582042\", \"target_url\": \"https://ampcome.com\", \"audit_depth\": \"standard\"}, \"executive_summary\": {\"overall_score\": 25, \"critical_issues\": 5, \"warnings\": 0, \"summary\": \"\"}, \"technical_analysis\": {\"performance_metrics\": {\"url\": null, \"size\": null, \"is_https\": false, \"load_time\": null, \"status_code\": null, \"encoded_size\": null, \"total_transfer_size\": null}, \"seo_elements\": {\"title\": null, \"robots\": null, \"h1_count\": 0, \"h2_count\": 0, \"canonical\": null, \"description\": null, \"title_length\": null, \"og_properties\": {}, \"description_length\": null, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_authority\": {}}, \"issues_and_warnings\": {\"critical_issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": []}, \"recommendations\": {\"error\": \"AI agent task requires model_client_id\"}, \"next_steps\": [\"Fix critical issues identified in the report\", \"Implement quick wins for immediate improvements\", \"Plan long-term optimization based on recommendations\", \"Re-run audit after implementing changes to measure improvement\"]}\n",
"return_code": 0,
"status": "completed",
"stderr": ""
},
"duration_seconds": 0.274999,
"end_time": "2025-07-07T08:24:56.718156",
"message_sent": true,
"start_time": "2025-07-07T08:24:56.443157",
"timestamp": "2025-07-07T08:24:56.718156",
"worker_executed": true,
"workers_notified": true
},
"executive_summary": {
"critical_issues": 5,
"overall_score": 25,
"summary": "",
"warnings": 0
},
"issues_and_warnings": {
"critical_issues": [
"Page returns None status code",
"Site is not using HTTPS",
"Missing page title",
"Missing meta description",
"Missing H1 tag"
],
"warnings": []
},
"next_steps": [
"Fix critical issues identified in the report",
"Implement quick wins for immediate improvements",
"Plan long-term optimization based on recommendations",
"Re-run audit after implementing changes to measure improvement"
],
"output": "__OUTPUTS__ {\"report_metadata\": {\"title\": \"Technical SEO Audit Report\", \"generated_at\": \"2025-07-07T08:24:56.582042\", \"target_url\": \"https://ampcome.com\", \"audit_depth\": \"standard\"}, \"executive_summary\": {\"overall_score\": 25, \"critical_issues\": 5, \"warnings\": 0, \"summary\": \"\"}, \"technical_analysis\": {\"performance_metrics\": {\"url\": null, \"size\": null, \"is_https\": false, \"load_time\": null, \"status_code\": null, \"encoded_size\": null, \"total_transfer_size\": null}, \"seo_elements\": {\"title\": null, \"robots\": null, \"h1_count\": 0, \"h2_count\": 0, \"canonical\": null, \"description\": null, \"title_length\": null, \"og_properties\": {}, \"description_length\": null, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_authority\": {}}, \"issues_and_warnings\": {\"critical_issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": []}, \"recommendations\": {\"error\": \"AI agent task requires model_client_id\"}, \"next_steps\": [\"Fix critical issues identified in the report\", \"Implement quick wins for immediate improvements\", \"Plan long-term optimization based on recommendations\", \"Re-run audit after implementing changes to measure improvement\"]}\n",
"recommendations": {
"error": "AI agent task requires model_client_id"
},
"report_metadata": {
"audit_depth": "standard",
"generated_at": "2025-07-07T08:24:56.582042",
"target_url": "https://ampcome.com",
"title": "Technical SEO Audit Report"
},
"return_code": 0,
"status": "completed",
"stderr": "",
"task_id": "compile_report",
"technical_analysis": {
"domain_authority": {},
"performance_metrics": {
"encoded_size": null,
"is_https": false,
"load_time": null,
"size": null,
"status_code": null,
"total_transfer_size": null,
"url": null
},
"seo_elements": {
"canonical": null,
"description": null,
"description_length": null,
"h1_count": 0,
"h2_count": 0,
"images_without_alt": [],
"og_properties": {},
"robots": null,
"title": null,
"title_length": null
},
"technical_checks": {}
}
},
"domain_overview": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "domain_overview"
},
"execution_summary": {
"completed_tasks": 2,
"dependencies_detected": false,
"end_time": "2025-07-07T08:27:56.720170",
"execution_mode": "distributed",
"start_time": "2025-07-07T08:15:54.885453",
"total_tasks": 11
},
"generate_recommendations": {
"error": "AI agent task requires model_client_id",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: AI agent task requires model_client_id",
"status": "FAILED",
"task_id": "generate_recommendations"
},
"get_serp_data": {
"error": null,
"execution_details": {
"actual_result": {
"error": null,
"result": [
{
"annotations": null,
"text": "{\n \"id\": \"07071121-1058-0139-0000-e69d86c978e1\",\n \"status_code\": 20000,\n \"status_message\": \"Ok.\",\n \"items\": [\n {\n \"type\": \"ai_overview\",\n \"rank_group\": 1,\n \"rank_absolute\": 1,\n \"asynchronous_ai_overview\": true\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 1,\n \"rank_absolute\": 2,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"How can I parse just the name of the site from the URL in ...\",\n \"url\": \"https://stackoverflow.com/questions/22342821/how-can-i-parse-just-the-name-of-the-site-from-the-url-in-php\",\n \"breadcrumb\": \"2 answers \u00b7 11 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Closed 11 years ago. I know that there is parse_url and then you get get the [\u0027host\u0027], but that returns the full www.example.\",\n \"highlighted\": [\n \"parse_url\"\n ],\n \"links\": [\n {\n \"type\": \"link_element\",\n \"title\": \"Parsing Domain Name only from URL In PHP ...\",\n \"url\": \"https://stackoverflow.com/questions/18515261/parsing-domain-name-only-from-url-in-php\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"Clean and extract domain name from URL - Stack ...\",\n \"url\": \"https://stackoverflow.com/questions/71419919/clean-and-extract-domain-name-from-url\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"More results from stackoverflow.com\",\n \"url\": \"https://www.google.com/search?q=$%7Bparse_content.items%5B0%5D.meta.title+%7C%7C+parse_url.domain%7D+site:stackoverflow.com\u0026sca_esv=9c54605068baa6ec\u0026hl=en\u0026gl=US\u0026glp=1\u0026sa=X\u0026ved=2ahUKEwjM77TNqKqOAxUbOEQIHVhGN5kQrQIoAnoECB8QAw\",\n \"domain\": \"www.google.com\"\n }\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 2,\n \"rank_absolute\": 3,\n \"domain\": \"gist.github.com\",\n \"title\": \"Get metadata from a URL and parse it.\",\n \"url\": \"https://gist.github.com/Explosion-Scratch/2e658fb8903cff4bbbcd32a718e5cef1\",\n \"breadcrumb\": \"https://gist.github.com \u203a Explosion-Scratch\",\n \"website_name\": \"Gist\",\n \"description\": \"Gets the metadata from a URL and organizes it into an object. * @param {String} url The url to get metadata of. * @returns {Promise.\u003cobject\u003e} A promise that\u00a0...\",\n \"highlighted\": [\n \"Gets the metadata from a URL and organizes it into an object\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 3,\n \"rank_absolute\": 4,\n \"domain\": \"www.php.net\",\n \"title\": \"get_meta_tags - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.get-meta-tags.php\",\n \"breadcrumb\": \"https://www.php.net \u203a function.get-meta-tags.php\",\n \"website_name\": \"PHP\",\n \"description\": \"Returns an array with all the parsed meta tags. The value of the name property becomes the key, the value of the content property becomes the value of the\u00a0...\",\n \"highlighted\": [\n \"meta\",\n \"name\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 4,\n \"rank_absolute\": 5,\n \"domain\": \"www.reddit.com\",\n \"title\": \"How to fetch meta tags of a page using its URL? : r/webdev\",\n \"url\": \"https://www.reddit.com/r/webdev/comments/t746e1/how_to_fetch_meta_tags_of_a_page_using_its_url/\",\n \"breadcrumb\": \"7 comments \u00b7 3 years ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/webdev\",\n \"description\": \"I am developing a React app where I need to render a beautiful preview when a user enters a URL. For this, I need to fetch the meta tags of the page from the\u00a0...\",\n \"highlighted\": [\n \"React app\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 5,\n \"rank_absolute\": 6,\n \"domain\": \"www.php.net\",\n \"title\": \"parse_url - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.parse-url.php\",\n \"breadcrumb\": \"https://www.php.net \u203a manual \u203a function.parse-url.php\",\n \"website_name\": \"PHP\",\n \"description\": \"This function parses a URL and returns an associative array containing any of the various components of the URL that are present.\"\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 6,\n \"rank_absolute\": 7,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"php - Is it possible to pull the content from the title tag ...\",\n \"url\": \"https://stackoverflow.com/q/41191283\",\n \"breadcrumb\": \"3 answers \u00b7 8 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Here\u0027s a simple script to get the title of the page. var title = $(\\\"title\\\").text(); $(\\\"body\\\").html(\\\"\u003ch1\u003e\\\" + title + \\\"\u003c/h1\u003e\\\");.\",\n \"highlighted\": [\n \"title\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 7,\n \"rank_absolute\": 8,\n \"domain\": \"www.reddit.com\",\n \"title\": \"Why does Google show this page without title and meta ...\",\n \"url\": \"https://www.reddit.com/r/TechSEO/comments/1hd9f8s/why_does_google_show_this_page_without_title_and/\",\n \"breadcrumb\": \"10+ comments \u00b7 6 months ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/TechSEO\",\n \"description\": \"Any idea why this is shown without a proper title and meta description? The HTML seems fine: https://www.hostpoint.ch/en/domains/zuerich/\",\n \"highlighted\": [\n \"title\",\n \"meta\",\n \"domains\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 8,\n \"rank_absolute\": 9,\n \"domain\": \"www.youtube.com\",\n \"title\": \"How to Change Title Tags and Meta Tags in GoDaddy Site ...\",\n \"url\": \"https://www.youtube.com/watch?v=Su9BxwuK3dY\u0026pp=0gcJCdgAo7VqN5tD\",\n \"breadcrumb\": \"12.1K+ views \u00b7 2 years ago\",\n \"website_name\": \"YouTube\u00a0\u00b7\u00a0Mark Hemming\",\n \"is_video\": true,\n \"timestamp\": \"2022-09-04 00:00:00 +00:00\"\n },\n {\n \"type\": \"people_also_ask\",\n \"rank_group\": 1,\n \"rank_absolute\": 10,\n \"items\": [\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to parse a URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.geeksforgeeks.org/php/php-parse_url-function/\",\n \"domain\": \"www.geeksforgeeks.org\",\n \"title\": \"PHP | parse_url() Function - GeeksforGeeks\",\n \"description\": \"PHP | parse_url() Function\\n The parse_url() function is an inbuilt function in PHP which is used to return the components of a URL by parsing it. It parses an URL and return an associative array which contains its various components.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to extract hostName from URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplified.guide/php/hostname-from-url\",\n \"domain\": \"www.simplified.guide\",\n \"title\": \"How to get host name from URL using PHP - Simplified Guide\",\n \"description\": \"Steps to get host name from URL:\\n $url = \\\"https://www.example.com/page\\\"; $parsedUrl = parse_url($url); Access the host component from the result of parse_url(). $hostName = $parsedUrl[\u0027host\u0027]; Store the host name in a variable for further use.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to get domain name in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplilearn.com/tutorials/php-tutorial/get-full-url-in-php\",\n \"domain\": \"www.simplilearn.com\",\n \"title\": \"How to Get Full URL in PHP - A Step-by-Step Guide - Simplilearn.com\",\n \"description\": \"The variable $_SERVER[\u0027HTTP_HOST\u0027] is used to read the domain name of the URL of the current web page. Store the returned domain name in a variable. The variable $_SERVER[\u0027REQUEST_URI\u0027] returns the URI of the requested location of a resource.\"\n }\n ]\n }\n ]\n }\n ]\n}",
"type": "text"
}
],
"status": "success",
"tool_name": "serp_organic_live_advanced"
},
"duration_seconds": 5.086475,
"end_time": "2025-07-07T08:22:01.082193",
"message_sent": true,
"start_time": "2025-07-07T08:21:55.995718",
"timestamp": "2025-07-07T08:22:01.082193",
"worker_executed": true,
"workers_notified": true
},
"output": "Task completed successfully",
"result": [
{
"annotations": null,
"text": "{\n \"id\": \"07071121-1058-0139-0000-e69d86c978e1\",\n \"status_code\": 20000,\n \"status_message\": \"Ok.\",\n \"items\": [\n {\n \"type\": \"ai_overview\",\n \"rank_group\": 1,\n \"rank_absolute\": 1,\n \"asynchronous_ai_overview\": true\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 1,\n \"rank_absolute\": 2,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"How can I parse just the name of the site from the URL in ...\",\n \"url\": \"https://stackoverflow.com/questions/22342821/how-can-i-parse-just-the-name-of-the-site-from-the-url-in-php\",\n \"breadcrumb\": \"2 answers \u00b7 11 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Closed 11 years ago. I know that there is parse_url and then you get get the [\u0027host\u0027], but that returns the full www.example.\",\n \"highlighted\": [\n \"parse_url\"\n ],\n \"links\": [\n {\n \"type\": \"link_element\",\n \"title\": \"Parsing Domain Name only from URL In PHP ...\",\n \"url\": \"https://stackoverflow.com/questions/18515261/parsing-domain-name-only-from-url-in-php\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"Clean and extract domain name from URL - Stack ...\",\n \"url\": \"https://stackoverflow.com/questions/71419919/clean-and-extract-domain-name-from-url\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"More results from stackoverflow.com\",\n \"url\": \"https://www.google.com/search?q=$%7Bparse_content.items%5B0%5D.meta.title+%7C%7C+parse_url.domain%7D+site:stackoverflow.com\u0026sca_esv=9c54605068baa6ec\u0026hl=en\u0026gl=US\u0026glp=1\u0026sa=X\u0026ved=2ahUKEwjM77TNqKqOAxUbOEQIHVhGN5kQrQIoAnoECB8QAw\",\n \"domain\": \"www.google.com\"\n }\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 2,\n \"rank_absolute\": 3,\n \"domain\": \"gist.github.com\",\n \"title\": \"Get metadata from a URL and parse it.\",\n \"url\": \"https://gist.github.com/Explosion-Scratch/2e658fb8903cff4bbbcd32a718e5cef1\",\n \"breadcrumb\": \"https://gist.github.com \u203a Explosion-Scratch\",\n \"website_name\": \"Gist\",\n \"description\": \"Gets the metadata from a URL and organizes it into an object. * @param {String} url The url to get metadata of. * @returns {Promise.\u003cobject\u003e} A promise that\u00a0...\",\n \"highlighted\": [\n \"Gets the metadata from a URL and organizes it into an object\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 3,\n \"rank_absolute\": 4,\n \"domain\": \"www.php.net\",\n \"title\": \"get_meta_tags - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.get-meta-tags.php\",\n \"breadcrumb\": \"https://www.php.net \u203a function.get-meta-tags.php\",\n \"website_name\": \"PHP\",\n \"description\": \"Returns an array with all the parsed meta tags. The value of the name property becomes the key, the value of the content property becomes the value of the\u00a0...\",\n \"highlighted\": [\n \"meta\",\n \"name\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 4,\n \"rank_absolute\": 5,\n \"domain\": \"www.reddit.com\",\n \"title\": \"How to fetch meta tags of a page using its URL? : r/webdev\",\n \"url\": \"https://www.reddit.com/r/webdev/comments/t746e1/how_to_fetch_meta_tags_of_a_page_using_its_url/\",\n \"breadcrumb\": \"7 comments \u00b7 3 years ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/webdev\",\n \"description\": \"I am developing a React app where I need to render a beautiful preview when a user enters a URL. For this, I need to fetch the meta tags of the page from the\u00a0...\",\n \"highlighted\": [\n \"React app\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 5,\n \"rank_absolute\": 6,\n \"domain\": \"www.php.net\",\n \"title\": \"parse_url - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.parse-url.php\",\n \"breadcrumb\": \"https://www.php.net \u203a manual \u203a function.parse-url.php\",\n \"website_name\": \"PHP\",\n \"description\": \"This function parses a URL and returns an associative array containing any of the various components of the URL that are present.\"\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 6,\n \"rank_absolute\": 7,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"php - Is it possible to pull the content from the title tag ...\",\n \"url\": \"https://stackoverflow.com/q/41191283\",\n \"breadcrumb\": \"3 answers \u00b7 8 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Here\u0027s a simple script to get the title of the page. var title = $(\\\"title\\\").text(); $(\\\"body\\\").html(\\\"\u003ch1\u003e\\\" + title + \\\"\u003c/h1\u003e\\\");.\",\n \"highlighted\": [\n \"title\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 7,\n \"rank_absolute\": 8,\n \"domain\": \"www.reddit.com\",\n \"title\": \"Why does Google show this page without title and meta ...\",\n \"url\": \"https://www.reddit.com/r/TechSEO/comments/1hd9f8s/why_does_google_show_this_page_without_title_and/\",\n \"breadcrumb\": \"10+ comments \u00b7 6 months ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/TechSEO\",\n \"description\": \"Any idea why this is shown without a proper title and meta description? The HTML seems fine: https://www.hostpoint.ch/en/domains/zuerich/\",\n \"highlighted\": [\n \"title\",\n \"meta\",\n \"domains\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 8,\n \"rank_absolute\": 9,\n \"domain\": \"www.youtube.com\",\n \"title\": \"How to Change Title Tags and Meta Tags in GoDaddy Site ...\",\n \"url\": \"https://www.youtube.com/watch?v=Su9BxwuK3dY\u0026pp=0gcJCdgAo7VqN5tD\",\n \"breadcrumb\": \"12.1K+ views \u00b7 2 years ago\",\n \"website_name\": \"YouTube\u00a0\u00b7\u00a0Mark Hemming\",\n \"is_video\": true,\n \"timestamp\": \"2022-09-04 00:00:00 +00:00\"\n },\n {\n \"type\": \"people_also_ask\",\n \"rank_group\": 1,\n \"rank_absolute\": 10,\n \"items\": [\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to parse a URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.geeksforgeeks.org/php/php-parse_url-function/\",\n \"domain\": \"www.geeksforgeeks.org\",\n \"title\": \"PHP | parse_url() Function - GeeksforGeeks\",\n \"description\": \"PHP | parse_url() Function\\n The parse_url() function is an inbuilt function in PHP which is used to return the components of a URL by parsing it. It parses an URL and return an associative array which contains its various components.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to extract hostName from URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplified.guide/php/hostname-from-url\",\n \"domain\": \"www.simplified.guide\",\n \"title\": \"How to get host name from URL using PHP - Simplified Guide\",\n \"description\": \"Steps to get host name from URL:\\n $url = \\\"https://www.example.com/page\\\"; $parsedUrl = parse_url($url); Access the host component from the result of parse_url(). $hostName = $parsedUrl[\u0027host\u0027]; Store the host name in a variable for further use.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to get domain name in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplilearn.com/tutorials/php-tutorial/get-full-url-in-php\",\n \"domain\": \"www.simplilearn.com\",\n \"title\": \"How to Get Full URL in PHP - A Step-by-Step Guide - Simplilearn.com\",\n \"description\": \"The variable $_SERVER[\u0027HTTP_HOST\u0027] is used to read the domain name of the URL of the current web page. Store the returned domain name in a variable. The variable $_SERVER[\u0027REQUEST_URI\u0027] returns the URI of the requested location of a resource.\"\n }\n ]\n }\n ]\n }\n ]\n}",
"type": "text"
}
],
"return_code": 0,
"status": "success",
"stderr": "",
"task_id": "get_serp_data",
"tool_name": "serp_organic_live_advanced"
},
"parse_content": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "parse_content"
},
"parse_url": {
"error": "Python script failed with return code 1: File \"/tmp/tmpnrup27dy.py\", line 9\n target_url = \"\"https://ampcome.com\"\"\n ^^^^^\nSyntaxError: invalid syntax\n",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: Python script failed with return code 1: File \"/tmp/tmpnrup27dy.py\", line 9\n target_url = \"\"https://ampcome.com\"\"\n ^^^^^\nSyntaxError: invalid syntax\n",
"status": "FAILED",
"task_id": "parse_url"
},
"process_audit_data": {
"audit_date": "2025-07-07T08:21:56.288040",
"domain_metrics": {},
"execution_details": {
"actual_result": {
"output": "__OUTPUTS__ {\"audit_date\": \"2025-07-07T08:21:56.288040\", \"target_url\": \"https://ampcome.com\", \"metrics\": {\"url\": null, \"status_code\": null, \"load_time\": null, \"size\": null, \"encoded_size\": null, \"total_transfer_size\": null, \"is_https\": false}, \"seo_elements\": {\"title\": null, \"title_length\": null, \"description\": null, \"description_length\": null, \"canonical\": null, \"robots\": null, \"og_properties\": {}, \"h1_count\": 0, \"h2_count\": 0, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_metrics\": {}, \"issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": [], \"score\": 25}\n",
"return_code": 0,
"status": "completed",
"stderr": ""
},
"duration_seconds": 0.35864,
"end_time": "2025-07-07T08:21:56.422442",
"message_sent": true,
"start_time": "2025-07-07T08:21:56.063802",
"timestamp": "2025-07-07T08:21:56.422442",
"worker_executed": true,
"workers_notified": true
},
"issues": [
"Page returns None status code",
"Site is not using HTTPS",
"Missing page title",
"Missing meta description",
"Missing H1 tag"
],
"metrics": {
"encoded_size": null,
"is_https": false,
"load_time": null,
"size": null,
"status_code": null,
"total_transfer_size": null,
"url": null
},
"output": "__OUTPUTS__ {\"audit_date\": \"2025-07-07T08:21:56.288040\", \"target_url\": \"https://ampcome.com\", \"metrics\": {\"url\": null, \"status_code\": null, \"load_time\": null, \"size\": null, \"encoded_size\": null, \"total_transfer_size\": null, \"is_https\": false}, \"seo_elements\": {\"title\": null, \"title_length\": null, \"description\": null, \"description_length\": null, \"canonical\": null, \"robots\": null, \"og_properties\": {}, \"h1_count\": 0, \"h2_count\": 0, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_metrics\": {}, \"issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": [], \"score\": 25}\n",
"return_code": 0,
"score": 25,
"seo_elements": {
"canonical": null,
"description": null,
"description_length": null,
"h1_count": 0,
"h2_count": 0,
"images_without_alt": [],
"og_properties": {},
"robots": null,
"title": null,
"title_length": null
},
"status": "completed",
"stderr": "",
"target_url": "https://ampcome.com",
"task_id": "process_audit_data",
"technical_checks": {},
"warnings": []
},
"ranked_keywords": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "ranked_keywords"
},
"status": "FAILED",
"store_results": {
"error": "Unsupported storage operation: insert or missing patterns",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: Unsupported storage operation: insert or missing patterns",
"status": "FAILED",
"task_id": "store_results"
},
"task_outputs": {
"analyze_page": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "analyze_page"
},
"backlink_analysis": {
"error": null,
"execution_details": {
"actual_result": {
"error": null,
"result": [
{
"annotations": null,
"text": "Error: API Error: Access denied. Visit Plans and Subscriptions to activate your subscription and get access to this API: https://app.dataforseo.com/backlinks-subscription . (Code: 40204)",
"type": "text"
}
],
"status": "success",
"tool_name": "backlinks_summary"
},
"duration_seconds": 1.241044,
"end_time": "2025-07-07T08:18:57.342535",
"message_sent": true,
"start_time": "2025-07-07T08:18:56.101491",
"timestamp": "2025-07-07T08:18:57.342535",
"worker_executed": true,
"workers_notified": true
},
"output": "Task completed successfully",
"result": [
{
"annotations": null,
"text": "Error: API Error: Access denied. Visit Plans and Subscriptions to activate your subscription and get access to this API: https://app.dataforseo.com/backlinks-subscription . (Code: 40204)",
"type": "text"
}
],
"return_code": 0,
"status": "success",
"stderr": "",
"task_id": "backlink_analysis",
"tool_name": "backlinks_summary"
},
"compile_report": {
"execution_details": {
"actual_result": {
"output": "__OUTPUTS__ {\"report_metadata\": {\"title\": \"Technical SEO Audit Report\", \"generated_at\": \"2025-07-07T08:24:56.582042\", \"target_url\": \"https://ampcome.com\", \"audit_depth\": \"standard\"}, \"executive_summary\": {\"overall_score\": 25, \"critical_issues\": 5, \"warnings\": 0, \"summary\": \"\"}, \"technical_analysis\": {\"performance_metrics\": {\"url\": null, \"size\": null, \"is_https\": false, \"load_time\": null, \"status_code\": null, \"encoded_size\": null, \"total_transfer_size\": null}, \"seo_elements\": {\"title\": null, \"robots\": null, \"h1_count\": 0, \"h2_count\": 0, \"canonical\": null, \"description\": null, \"title_length\": null, \"og_properties\": {}, \"description_length\": null, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_authority\": {}}, \"issues_and_warnings\": {\"critical_issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": []}, \"recommendations\": {\"error\": \"AI agent task requires model_client_id\"}, \"next_steps\": [\"Fix critical issues identified in the report\", \"Implement quick wins for immediate improvements\", \"Plan long-term optimization based on recommendations\", \"Re-run audit after implementing changes to measure improvement\"]}\n",
"return_code": 0,
"status": "completed",
"stderr": ""
},
"duration_seconds": 0.274999,
"end_time": "2025-07-07T08:24:56.718156",
"message_sent": true,
"start_time": "2025-07-07T08:24:56.443157",
"timestamp": "2025-07-07T08:24:56.718156",
"worker_executed": true,
"workers_notified": true
},
"executive_summary": {
"critical_issues": 5,
"overall_score": 25,
"summary": "",
"warnings": 0
},
"issues_and_warnings": {
"critical_issues": [
"Page returns None status code",
"Site is not using HTTPS",
"Missing page title",
"Missing meta description",
"Missing H1 tag"
],
"warnings": []
},
"next_steps": [
"Fix critical issues identified in the report",
"Implement quick wins for immediate improvements",
"Plan long-term optimization based on recommendations",
"Re-run audit after implementing changes to measure improvement"
],
"output": "__OUTPUTS__ {\"report_metadata\": {\"title\": \"Technical SEO Audit Report\", \"generated_at\": \"2025-07-07T08:24:56.582042\", \"target_url\": \"https://ampcome.com\", \"audit_depth\": \"standard\"}, \"executive_summary\": {\"overall_score\": 25, \"critical_issues\": 5, \"warnings\": 0, \"summary\": \"\"}, \"technical_analysis\": {\"performance_metrics\": {\"url\": null, \"size\": null, \"is_https\": false, \"load_time\": null, \"status_code\": null, \"encoded_size\": null, \"total_transfer_size\": null}, \"seo_elements\": {\"title\": null, \"robots\": null, \"h1_count\": 0, \"h2_count\": 0, \"canonical\": null, \"description\": null, \"title_length\": null, \"og_properties\": {}, \"description_length\": null, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_authority\": {}}, \"issues_and_warnings\": {\"critical_issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": []}, \"recommendations\": {\"error\": \"AI agent task requires model_client_id\"}, \"next_steps\": [\"Fix critical issues identified in the report\", \"Implement quick wins for immediate improvements\", \"Plan long-term optimization based on recommendations\", \"Re-run audit after implementing changes to measure improvement\"]}\n",
"recommendations": {
"error": "AI agent task requires model_client_id"
},
"report_metadata": {
"audit_depth": "standard",
"generated_at": "2025-07-07T08:24:56.582042",
"target_url": "https://ampcome.com",
"title": "Technical SEO Audit Report"
},
"return_code": 0,
"status": "completed",
"stderr": "",
"task_id": "compile_report",
"technical_analysis": {
"domain_authority": {},
"performance_metrics": {
"encoded_size": null,
"is_https": false,
"load_time": null,
"size": null,
"status_code": null,
"total_transfer_size": null,
"url": null
},
"seo_elements": {
"canonical": null,
"description": null,
"description_length": null,
"h1_count": 0,
"h2_count": 0,
"images_without_alt": [],
"og_properties": {},
"robots": null,
"title": null,
"title_length": null
},
"technical_checks": {}
}
},
"domain_overview": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "domain_overview"
},
"generate_recommendations": {
"error": "AI agent task requires model_client_id",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: AI agent task requires model_client_id",
"status": "FAILED",
"task_id": "generate_recommendations"
},
"get_serp_data": {
"error": null,
"execution_details": {
"actual_result": {
"error": null,
"result": [
{
"annotations": null,
"text": "{\n \"id\": \"07071121-1058-0139-0000-e69d86c978e1\",\n \"status_code\": 20000,\n \"status_message\": \"Ok.\",\n \"items\": [\n {\n \"type\": \"ai_overview\",\n \"rank_group\": 1,\n \"rank_absolute\": 1,\n \"asynchronous_ai_overview\": true\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 1,\n \"rank_absolute\": 2,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"How can I parse just the name of the site from the URL in ...\",\n \"url\": \"https://stackoverflow.com/questions/22342821/how-can-i-parse-just-the-name-of-the-site-from-the-url-in-php\",\n \"breadcrumb\": \"2 answers \u00b7 11 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Closed 11 years ago. I know that there is parse_url and then you get get the [\u0027host\u0027], but that returns the full www.example.\",\n \"highlighted\": [\n \"parse_url\"\n ],\n \"links\": [\n {\n \"type\": \"link_element\",\n \"title\": \"Parsing Domain Name only from URL In PHP ...\",\n \"url\": \"https://stackoverflow.com/questions/18515261/parsing-domain-name-only-from-url-in-php\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"Clean and extract domain name from URL - Stack ...\",\n \"url\": \"https://stackoverflow.com/questions/71419919/clean-and-extract-domain-name-from-url\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"More results from stackoverflow.com\",\n \"url\": \"https://www.google.com/search?q=$%7Bparse_content.items%5B0%5D.meta.title+%7C%7C+parse_url.domain%7D+site:stackoverflow.com\u0026sca_esv=9c54605068baa6ec\u0026hl=en\u0026gl=US\u0026glp=1\u0026sa=X\u0026ved=2ahUKEwjM77TNqKqOAxUbOEQIHVhGN5kQrQIoAnoECB8QAw\",\n \"domain\": \"www.google.com\"\n }\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 2,\n \"rank_absolute\": 3,\n \"domain\": \"gist.github.com\",\n \"title\": \"Get metadata from a URL and parse it.\",\n \"url\": \"https://gist.github.com/Explosion-Scratch/2e658fb8903cff4bbbcd32a718e5cef1\",\n \"breadcrumb\": \"https://gist.github.com \u203a Explosion-Scratch\",\n \"website_name\": \"Gist\",\n \"description\": \"Gets the metadata from a URL and organizes it into an object. * @param {String} url The url to get metadata of. * @returns {Promise.\u003cobject\u003e} A promise that\u00a0...\",\n \"highlighted\": [\n \"Gets the metadata from a URL and organizes it into an object\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 3,\n \"rank_absolute\": 4,\n \"domain\": \"www.php.net\",\n \"title\": \"get_meta_tags - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.get-meta-tags.php\",\n \"breadcrumb\": \"https://www.php.net \u203a function.get-meta-tags.php\",\n \"website_name\": \"PHP\",\n \"description\": \"Returns an array with all the parsed meta tags. The value of the name property becomes the key, the value of the content property becomes the value of the\u00a0...\",\n \"highlighted\": [\n \"meta\",\n \"name\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 4,\n \"rank_absolute\": 5,\n \"domain\": \"www.reddit.com\",\n \"title\": \"How to fetch meta tags of a page using its URL? : r/webdev\",\n \"url\": \"https://www.reddit.com/r/webdev/comments/t746e1/how_to_fetch_meta_tags_of_a_page_using_its_url/\",\n \"breadcrumb\": \"7 comments \u00b7 3 years ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/webdev\",\n \"description\": \"I am developing a React app where I need to render a beautiful preview when a user enters a URL. For this, I need to fetch the meta tags of the page from the\u00a0...\",\n \"highlighted\": [\n \"React app\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 5,\n \"rank_absolute\": 6,\n \"domain\": \"www.php.net\",\n \"title\": \"parse_url - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.parse-url.php\",\n \"breadcrumb\": \"https://www.php.net \u203a manual \u203a function.parse-url.php\",\n \"website_name\": \"PHP\",\n \"description\": \"This function parses a URL and returns an associative array containing any of the various components of the URL that are present.\"\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 6,\n \"rank_absolute\": 7,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"php - Is it possible to pull the content from the title tag ...\",\n \"url\": \"https://stackoverflow.com/q/41191283\",\n \"breadcrumb\": \"3 answers \u00b7 8 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Here\u0027s a simple script to get the title of the page. var title = $(\\\"title\\\").text(); $(\\\"body\\\").html(\\\"\u003ch1\u003e\\\" + title + \\\"\u003c/h1\u003e\\\");.\",\n \"highlighted\": [\n \"title\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 7,\n \"rank_absolute\": 8,\n \"domain\": \"www.reddit.com\",\n \"title\": \"Why does Google show this page without title and meta ...\",\n \"url\": \"https://www.reddit.com/r/TechSEO/comments/1hd9f8s/why_does_google_show_this_page_without_title_and/\",\n \"breadcrumb\": \"10+ comments \u00b7 6 months ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/TechSEO\",\n \"description\": \"Any idea why this is shown without a proper title and meta description? The HTML seems fine: https://www.hostpoint.ch/en/domains/zuerich/\",\n \"highlighted\": [\n \"title\",\n \"meta\",\n \"domains\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 8,\n \"rank_absolute\": 9,\n \"domain\": \"www.youtube.com\",\n \"title\": \"How to Change Title Tags and Meta Tags in GoDaddy Site ...\",\n \"url\": \"https://www.youtube.com/watch?v=Su9BxwuK3dY\u0026pp=0gcJCdgAo7VqN5tD\",\n \"breadcrumb\": \"12.1K+ views \u00b7 2 years ago\",\n \"website_name\": \"YouTube\u00a0\u00b7\u00a0Mark Hemming\",\n \"is_video\": true,\n \"timestamp\": \"2022-09-04 00:00:00 +00:00\"\n },\n {\n \"type\": \"people_also_ask\",\n \"rank_group\": 1,\n \"rank_absolute\": 10,\n \"items\": [\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to parse a URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.geeksforgeeks.org/php/php-parse_url-function/\",\n \"domain\": \"www.geeksforgeeks.org\",\n \"title\": \"PHP | parse_url() Function - GeeksforGeeks\",\n \"description\": \"PHP | parse_url() Function\\n The parse_url() function is an inbuilt function in PHP which is used to return the components of a URL by parsing it. It parses an URL and return an associative array which contains its various components.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to extract hostName from URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplified.guide/php/hostname-from-url\",\n \"domain\": \"www.simplified.guide\",\n \"title\": \"How to get host name from URL using PHP - Simplified Guide\",\n \"description\": \"Steps to get host name from URL:\\n $url = \\\"https://www.example.com/page\\\"; $parsedUrl = parse_url($url); Access the host component from the result of parse_url(). $hostName = $parsedUrl[\u0027host\u0027]; Store the host name in a variable for further use.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to get domain name in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplilearn.com/tutorials/php-tutorial/get-full-url-in-php\",\n \"domain\": \"www.simplilearn.com\",\n \"title\": \"How to Get Full URL in PHP - A Step-by-Step Guide - Simplilearn.com\",\n \"description\": \"The variable $_SERVER[\u0027HTTP_HOST\u0027] is used to read the domain name of the URL of the current web page. Store the returned domain name in a variable. The variable $_SERVER[\u0027REQUEST_URI\u0027] returns the URI of the requested location of a resource.\"\n }\n ]\n }\n ]\n }\n ]\n}",
"type": "text"
}
],
"status": "success",
"tool_name": "serp_organic_live_advanced"
},
"duration_seconds": 5.086475,
"end_time": "2025-07-07T08:22:01.082193",
"message_sent": true,
"start_time": "2025-07-07T08:21:55.995718",
"timestamp": "2025-07-07T08:22:01.082193",
"worker_executed": true,
"workers_notified": true
},
"output": "Task completed successfully",
"result": [
{
"annotations": null,
"text": "{\n \"id\": \"07071121-1058-0139-0000-e69d86c978e1\",\n \"status_code\": 20000,\n \"status_message\": \"Ok.\",\n \"items\": [\n {\n \"type\": \"ai_overview\",\n \"rank_group\": 1,\n \"rank_absolute\": 1,\n \"asynchronous_ai_overview\": true\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 1,\n \"rank_absolute\": 2,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"How can I parse just the name of the site from the URL in ...\",\n \"url\": \"https://stackoverflow.com/questions/22342821/how-can-i-parse-just-the-name-of-the-site-from-the-url-in-php\",\n \"breadcrumb\": \"2 answers \u00b7 11 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Closed 11 years ago. I know that there is parse_url and then you get get the [\u0027host\u0027], but that returns the full www.example.\",\n \"highlighted\": [\n \"parse_url\"\n ],\n \"links\": [\n {\n \"type\": \"link_element\",\n \"title\": \"Parsing Domain Name only from URL In PHP ...\",\n \"url\": \"https://stackoverflow.com/questions/18515261/parsing-domain-name-only-from-url-in-php\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"Clean and extract domain name from URL - Stack ...\",\n \"url\": \"https://stackoverflow.com/questions/71419919/clean-and-extract-domain-name-from-url\",\n \"domain\": \"stackoverflow.com\"\n },\n {\n \"type\": \"link_element\",\n \"title\": \"More results from stackoverflow.com\",\n \"url\": \"https://www.google.com/search?q=$%7Bparse_content.items%5B0%5D.meta.title+%7C%7C+parse_url.domain%7D+site:stackoverflow.com\u0026sca_esv=9c54605068baa6ec\u0026hl=en\u0026gl=US\u0026glp=1\u0026sa=X\u0026ved=2ahUKEwjM77TNqKqOAxUbOEQIHVhGN5kQrQIoAnoECB8QAw\",\n \"domain\": \"www.google.com\"\n }\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 2,\n \"rank_absolute\": 3,\n \"domain\": \"gist.github.com\",\n \"title\": \"Get metadata from a URL and parse it.\",\n \"url\": \"https://gist.github.com/Explosion-Scratch/2e658fb8903cff4bbbcd32a718e5cef1\",\n \"breadcrumb\": \"https://gist.github.com \u203a Explosion-Scratch\",\n \"website_name\": \"Gist\",\n \"description\": \"Gets the metadata from a URL and organizes it into an object. * @param {String} url The url to get metadata of. * @returns {Promise.\u003cobject\u003e} A promise that\u00a0...\",\n \"highlighted\": [\n \"Gets the metadata from a URL and organizes it into an object\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 3,\n \"rank_absolute\": 4,\n \"domain\": \"www.php.net\",\n \"title\": \"get_meta_tags - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.get-meta-tags.php\",\n \"breadcrumb\": \"https://www.php.net \u203a function.get-meta-tags.php\",\n \"website_name\": \"PHP\",\n \"description\": \"Returns an array with all the parsed meta tags. The value of the name property becomes the key, the value of the content property becomes the value of the\u00a0...\",\n \"highlighted\": [\n \"meta\",\n \"name\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 4,\n \"rank_absolute\": 5,\n \"domain\": \"www.reddit.com\",\n \"title\": \"How to fetch meta tags of a page using its URL? : r/webdev\",\n \"url\": \"https://www.reddit.com/r/webdev/comments/t746e1/how_to_fetch_meta_tags_of_a_page_using_its_url/\",\n \"breadcrumb\": \"7 comments \u00b7 3 years ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/webdev\",\n \"description\": \"I am developing a React app where I need to render a beautiful preview when a user enters a URL. For this, I need to fetch the meta tags of the page from the\u00a0...\",\n \"highlighted\": [\n \"React app\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 5,\n \"rank_absolute\": 6,\n \"domain\": \"www.php.net\",\n \"title\": \"parse_url - Manual\",\n \"url\": \"https://www.php.net/manual/en/function.parse-url.php\",\n \"breadcrumb\": \"https://www.php.net \u203a manual \u203a function.parse-url.php\",\n \"website_name\": \"PHP\",\n \"description\": \"This function parses a URL and returns an associative array containing any of the various components of the URL that are present.\"\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 6,\n \"rank_absolute\": 7,\n \"domain\": \"stackoverflow.com\",\n \"title\": \"php - Is it possible to pull the content from the title tag ...\",\n \"url\": \"https://stackoverflow.com/q/41191283\",\n \"breadcrumb\": \"3 answers \u00b7 8 years ago\",\n \"website_name\": \"Stack Overflow\",\n \"description\": \"Here\u0027s a simple script to get the title of the page. var title = $(\\\"title\\\").text(); $(\\\"body\\\").html(\\\"\u003ch1\u003e\\\" + title + \\\"\u003c/h1\u003e\\\");.\",\n \"highlighted\": [\n \"title\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 7,\n \"rank_absolute\": 8,\n \"domain\": \"www.reddit.com\",\n \"title\": \"Why does Google show this page without title and meta ...\",\n \"url\": \"https://www.reddit.com/r/TechSEO/comments/1hd9f8s/why_does_google_show_this_page_without_title_and/\",\n \"breadcrumb\": \"10+ comments \u00b7 6 months ago\",\n \"website_name\": \"Reddit\u00a0\u00b7\u00a0r/TechSEO\",\n \"description\": \"Any idea why this is shown without a proper title and meta description? The HTML seems fine: https://www.hostpoint.ch/en/domains/zuerich/\",\n \"highlighted\": [\n \"title\",\n \"meta\",\n \"domains\"\n ]\n },\n {\n \"type\": \"organic\",\n \"rank_group\": 8,\n \"rank_absolute\": 9,\n \"domain\": \"www.youtube.com\",\n \"title\": \"How to Change Title Tags and Meta Tags in GoDaddy Site ...\",\n \"url\": \"https://www.youtube.com/watch?v=Su9BxwuK3dY\u0026pp=0gcJCdgAo7VqN5tD\",\n \"breadcrumb\": \"12.1K+ views \u00b7 2 years ago\",\n \"website_name\": \"YouTube\u00a0\u00b7\u00a0Mark Hemming\",\n \"is_video\": true,\n \"timestamp\": \"2022-09-04 00:00:00 +00:00\"\n },\n {\n \"type\": \"people_also_ask\",\n \"rank_group\": 1,\n \"rank_absolute\": 10,\n \"items\": [\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to parse a URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.geeksforgeeks.org/php/php-parse_url-function/\",\n \"domain\": \"www.geeksforgeeks.org\",\n \"title\": \"PHP | parse_url() Function - GeeksforGeeks\",\n \"description\": \"PHP | parse_url() Function\\n The parse_url() function is an inbuilt function in PHP which is used to return the components of a URL by parsing it. It parses an URL and return an associative array which contains its various components.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to extract hostName from URL in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplified.guide/php/hostname-from-url\",\n \"domain\": \"www.simplified.guide\",\n \"title\": \"How to get host name from URL using PHP - Simplified Guide\",\n \"description\": \"Steps to get host name from URL:\\n $url = \\\"https://www.example.com/page\\\"; $parsedUrl = parse_url($url); Access the host component from the result of parse_url(). $hostName = $parsedUrl[\u0027host\u0027]; Store the host name in a variable for further use.\"\n }\n ]\n },\n {\n \"type\": \"people_also_ask_element\",\n \"title\": \"How to get domain name in PHP?\",\n \"expanded_element\": [\n {\n \"type\": \"people_also_ask_expanded_element\",\n \"url\": \"https://www.simplilearn.com/tutorials/php-tutorial/get-full-url-in-php\",\n \"domain\": \"www.simplilearn.com\",\n \"title\": \"How to Get Full URL in PHP - A Step-by-Step Guide - Simplilearn.com\",\n \"description\": \"The variable $_SERVER[\u0027HTTP_HOST\u0027] is used to read the domain name of the URL of the current web page. Store the returned domain name in a variable. The variable $_SERVER[\u0027REQUEST_URI\u0027] returns the URI of the requested location of a resource.\"\n }\n ]\n }\n ]\n }\n ]\n}",
"type": "text"
}
],
"return_code": 0,
"status": "success",
"stderr": "",
"task_id": "get_serp_data",
"tool_name": "serp_organic_live_advanced"
},
"parse_content": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "parse_content"
},
"parse_url": {
"error": "Python script failed with return code 1: File \"/tmp/tmpnrup27dy.py\", line 9\n target_url = \"\"https://ampcome.com\"\"\n ^^^^^\nSyntaxError: invalid syntax\n",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: Python script failed with return code 1: File \"/tmp/tmpnrup27dy.py\", line 9\n target_url = \"\"https://ampcome.com\"\"\n ^^^^^\nSyntaxError: invalid syntax\n",
"status": "FAILED",
"task_id": "parse_url"
},
"process_audit_data": {
"audit_date": "2025-07-07T08:21:56.288040",
"domain_metrics": {},
"execution_details": {
"actual_result": {
"output": "__OUTPUTS__ {\"audit_date\": \"2025-07-07T08:21:56.288040\", \"target_url\": \"https://ampcome.com\", \"metrics\": {\"url\": null, \"status_code\": null, \"load_time\": null, \"size\": null, \"encoded_size\": null, \"total_transfer_size\": null, \"is_https\": false}, \"seo_elements\": {\"title\": null, \"title_length\": null, \"description\": null, \"description_length\": null, \"canonical\": null, \"robots\": null, \"og_properties\": {}, \"h1_count\": 0, \"h2_count\": 0, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_metrics\": {}, \"issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": [], \"score\": 25}\n",
"return_code": 0,
"status": "completed",
"stderr": ""
},
"duration_seconds": 0.35864,
"end_time": "2025-07-07T08:21:56.422442",
"message_sent": true,
"start_time": "2025-07-07T08:21:56.063802",
"timestamp": "2025-07-07T08:21:56.422442",
"worker_executed": true,
"workers_notified": true
},
"issues": [
"Page returns None status code",
"Site is not using HTTPS",
"Missing page title",
"Missing meta description",
"Missing H1 tag"
],
"metrics": {
"encoded_size": null,
"is_https": false,
"load_time": null,
"size": null,
"status_code": null,
"total_transfer_size": null,
"url": null
},
"output": "__OUTPUTS__ {\"audit_date\": \"2025-07-07T08:21:56.288040\", \"target_url\": \"https://ampcome.com\", \"metrics\": {\"url\": null, \"status_code\": null, \"load_time\": null, \"size\": null, \"encoded_size\": null, \"total_transfer_size\": null, \"is_https\": false}, \"seo_elements\": {\"title\": null, \"title_length\": null, \"description\": null, \"description_length\": null, \"canonical\": null, \"robots\": null, \"og_properties\": {}, \"h1_count\": 0, \"h2_count\": 0, \"images_without_alt\": []}, \"technical_checks\": {}, \"domain_metrics\": {}, \"issues\": [\"Page returns None status code\", \"Site is not using HTTPS\", \"Missing page title\", \"Missing meta description\", \"Missing H1 tag\"], \"warnings\": [], \"score\": 25}\n",
"return_code": 0,
"score": 25,
"seo_elements": {
"canonical": null,
"description": null,
"description_length": null,
"h1_count": 0,
"h2_count": 0,
"images_without_alt": [],
"og_properties": {},
"robots": null,
"title": null,
"title_length": null
},
"status": "completed",
"stderr": "",
"target_url": "https://ampcome.com",
"task_id": "process_audit_data",
"technical_checks": {},
"warnings": []
},
"ranked_keywords": {
"error": "MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: MCP tool execution failed: Tool execution failed: \u0027NoneType\u0027 object has no attribute \u0027post\u0027",
"status": "FAILED",
"task_id": "ranked_keywords"
},
"store_results": {
"error": "Unsupported storage operation: insert or missing patterns",
"execution_details": {
"failed": true,
"message_sent": true,
"worker_executed": true,
"workers_notified": true
},
"output": "Task failed: Unsupported storage operation: insert or missing patterns",
"status": "FAILED",
"task_id": "store_results"
}
}
}