{"name":"io.github.bahdanhal/stackhal","slug":"bahdanhal-stackhal","title":"Stackhal","description":"Outside-in DNS, email security, SEO, GEO and app-link checks plus developer utilities.","url":"https://mcp.market/server/bahdanhal-stackhal","rating":null,"grade":"B","score":81,"certified":false,"status":"active","category":"seo","tags":["seo","email","maps","security"],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-10-14T07:14:40.000Z","license":"MIT"},"uptime":{"percent":96,"checks":28,"ok":27,"last_checked_at":"2026-11-04T06:35:39.573Z","last_ok_at":"2026-11-04T06:35:39.573Z","latency_ms":804},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/bahdanhal/stackhal","website":"https://stackhal.com/","version":"1.2.0","remotes":[{"type":"streamable-http","url":"https://stackhal.com/mcp"}],"packages":[],"tools":[{"name":"analyze_geo_readiness","description":"Analyze Generative Engine Optimization (GEO) signals and AI crawler readiness for a web page (schema, citations, provenance, answer structure, llms.txt, AI bot robots rules).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"The web page URL to analyze for GEO readiness."}},"required":["url"]}},{"name":"audit_website_seo","description":"Run a deterministic technical SEO audit for a public website URL. Checks canonicals, title tags, headings, robots.txt, sitemaps, redirects, crawl traps, and indexability.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"The public website URL to audit (e.g. https://example.com)."}},"required":["url"]}},{"name":"calculate_cidr_overlap","description":"Analyze IPv4/IPv6 CIDR subnets for range collisions, full containment, 2D bit-tree matrix partition, and available free subnet allocation.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"cidrs":{"type":"array","items":{"type":"object"},"description":"Array of IPv4 or IPv6 CIDR strings to analyze for collisions and tree partition."},"requested_free_prefix":{"type":["null","integer"],"default":null,"description":"Optional target prefix length (e.g. 20, 24) to find available free subnet block inside parent range."},"parent_cidr":{"type":["null","string"],"default":null,"description":"Optional parent CIDR string (e.g. 10.0.0.0/16) to constrain free subnet allocation search."}},"required":["cidrs"]}},{"name":"diagnose_cors_policy","description":"Analyze CORS HTTP request and response headers for wildcard/credential security violations, missing Vary: Origin, preflight OPTIONS handling, and header exposure.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"request_origin":{"type":"string","description":"The incoming HTTP request Origin header (e.g. \"https://app.example.com\")."},"response_headers":{"type":"array","description":"The server HTTP response headers (as key-value map or list of \"Header: Value\" strings).","items":{}},"with_credentials":{"type":["null","boolean"],"default":false,"description":"Whether the cross-origin request includes cookies or authorization credentials."}},"required":["request_origin","response_headers"]}},{"name":"generate_apple_pkpass_spec","description":"Generate a production-ready, fully compliant Apple Wallet pass.json specification based on pass type, metadata, colors, barcode, and field values.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pass_type":{"type":"string","description":"Pass style type: \"boardingPass\", \"eventTicket\", \"storeCard\", \"coupon\", or \"generic\"."},"organization_name":{"type":"string","description":"Name of the pass issuing organization, e.g. \"Acme Airlines\"."},"description":{"type":"string","description":"Human-readable description of the pass, e.g. \"Flight from SFO to WAW\"."},"pass_type_identifier":{"type":["null","string"],"default":null,"description":"Apple Pass Type Identifier starting with \"pass.\", e.g. \"pass.com.example.ticket\"."},"team_identifier":{"type":["null","string"],"default":null,"description":"Apple Developer 10-character Team ID, e.g. \"BAHDAN9988\"."},"serial_number":{"type":["null","string"],"default":null,"description":"Unique pass serial number, e.g. \"LOT-89421\"."},"background_color":{"type":["null","string"],"default":null,"description":"Background color as CSS rgb(r, g, b), e.g. \"rgb(15, 23, 42)\"."},"foreground_color":{"type":["null","string"],"default":null,"description":"Foreground text color as CSS rgb(r, g, b), e.g. \"rgb(255, 255, 255)\"."},"label_color":{"type":["null","string"],"default":null,"description":"Label text color as CSS rgb(r, g, b), e.g. \"rgb(148, 163, 184)\"."},"barcode_message":{"type":["null","string"],"default":null,"description":"Barcode message payload, e.g. \"M1HAL/BAHDAN ELO027\"."},"barcode_format":{"type":["null","string"],"default":null,"description":"Barcode format: \"PKBarcodeFormatQR\", \"PKBarcodeFormatPDF417\", \"PKBarcodeFormatAztec\", \"PKBarcodeFormatCode128\"."},"transit_type":{"type":["null","string"],"default":null,"description":"Transit type for boardingPass: \"PKTransitTypeAir\", \"PKTransitTypeTrain\", \"PKTransitTypeBus\", \"PKTransitTypeBoat\", \"PKTransitTypeGeneric\"."}},"required":["pass_type","organization_name","description"]}},{"name":"generate_favicon_suite","description":"Generate modern multi-platform favicon bundle (adaptive dark-mode SVG, multi-resolution ICO, Apple Touch Icon, Android PWA icons, webmanifest) and minimal HTML tags from SVG or image input.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"svg_content":{"type":"string","description":"The raw SVG XML markup string to convert into modern multi-platform favicon suite."},"dark_mode_strategy":{"type":["null","string"],"default":"css_invert_fill","description":"Optional dark mode strategy: \"css_invert_fill\" (default), \"css_class_swap\", or \"preserve_colors\"."}},"required":["svg_content"]}},{"name":"inspect_apple_pkpass","description":"Inspect and validate Apple Wallet .pkpass JSON structure (pass.json) or package manifests: checks required keys, pass styles, dates, ISO 8601 timezones, transit types, barcodes, and color contrast.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pass_json":{"type":"string","description":"The raw pass.json JSON string to inspect and validate."}},"required":["pass_json"]}},{"name":"inspect_domain_security","description":"Inspect domain email security and deliverability standards: DMARC (BIMI compliance), BIMI DNS & SVG reachability, MTA-STS (RFC 8461), SMTP TLS-RPT (RFC 8460), SPF and MX records.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"domain":{"type":"string","description":"The domain name to inspect (e.g. stripe.com, example.com)."}},"required":["domain"]}},{"name":"repair_apple_pkpass_spec","description":"Automatically repair and sanitize broken Apple Wallet pass.json manifests: fixes missing formatVersion, prefixes passTypeIdentifier, ensures 10-character team ID, normalizes dates to ISO 8601 with timezones, and auto-corrects low contrast.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pass_json":{"type":"string","description":"The raw, broken pass.json JSON string to repair."}},"required":["pass_json"]}},{"name":"trace_dns_delegation","description":"Query live DNS records and inspect the authoritative nameservers returned for a domain.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"domain":{"type":"string","description":"The target domain name (e.g. \"example.com\") to query using the application host resolver."},"query_type":{"type":["null","string"],"default":"A","description":"Optional DNS record type: \"A\" (default), \"AAAA\", \"CNAME\", \"TXT\", \"MX\", \"NS\", \"SOA\", or \"CAA\"."}},"required":["domain"]}},{"name":"transpile_regex_engine","description":"Transpile and analyze regular expressions across engines (PCRE, Go RE2, JavaScript, Python re, Rust regex) with compatibility checks and ReDoS safety analysis.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pattern":{"type":"string","description":"The regular expression pattern string to analyze and transpile."},"source_engine":{"type":["null","string"],"default":"pcre","description":"Optional source engine: \"pcre\" (default), \"go_re2\", \"javascript\", \"python\", \"rust\"."},"target_engine":{"type":["null","string"],"default":"go_re2","description":"Optional target engine: \"go_re2\" (default), \"pcre\", \"javascript\", \"python\", \"rust\"."}},"required":["pattern"]}},{"name":"transpile_to_caddyfile","description":"Transpile Nginx (nginx.conf, server blocks) or Apache (.htaccess, VirtualHost) web server configuration to clean, idiomatic Caddyfile with migration advisories.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"config_content":{"type":"string","description":"The raw web server configuration string (nginx.conf, server block, .htaccess, or VirtualHost) to transpile."},"server_type":{"type":["null","string"],"default":null,"description":"Optional source server type: \"nginx\" or \"apache\". If omitted, auto-detected from content syntax."}},"required":["config_content"]}},{"name":"validate_app_links","description":"Inspect and validate Apple App Site Association (apple-app-site-association) and Android Digital Asset Links (assetlinks.json) files, HTTPS hosting rules, and test URL path routing, and compare the origin AASA with the copy on Apple's CDN.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"domain":{"type":"string","description":"The target domain name (e.g. \"example.com\") hosting universal link and asset link files."},"test_url":{"type":["null","string"],"default":null,"description":"Optional web URL path to test against Apple AASA components and exclusion routing patterns."}},"required":["domain"]}}],"scan":{"score":81,"grade":"B","scanned_at":"2026-10-14T12:23:03.803Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-14T12:23:03.679Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1770ms"]},"poisoning":{"score":15,"max":15,"notes":["13 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 1 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://stackhal.com/mcp","reachable":true,"authRequired":false,"latencyMs":1770,"serverInfo":{"name":"StackHal DevTools & Audits MCP","version":"1.2.0"}}],"packages":[],"repo":{"found":true,"owner":"bahdanhal","repo":"stackhal","archived":false,"pushedAt":"2026-10-14T07:14:40Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/61920057?v=4","ownerCreatedAt":"2020-03-07T20:41:13Z","license":"MIT"},"icon":{"url":"https://stackhal.com/favicon.svg?v=2","source":"site"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-10-14T07:14:40.000Z","score":23}}}},"grade_history":[],"reviews":[]}