MCP 서버

Stackhal

io.github.bahdanhal/stackhal
개발자 도구 마케팅 및 광고 보안 공개 · 연결 가능 MCP 2025-11-25

이 MCP로 할 수 있는 일

Audits SEO and GEO readiness, inspects DNS and email security, validates app links and wallet passes, diagnoses CORS, converts server configurations, and analyzes developer utilities.

analyze_geo_readiness
Analyze GEO Readiness
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).
읽기 전용 외부 접근 가능
입력 스키마
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'The web page URL to analyze for GEO readiness.'}}}
audit_website_seo
Technical SEO Audit
Run a deterministic technical SEO audit for a public website URL. Checks canonicals, title tags, headings, robots.txt, sitemaps, redirects, crawl traps, and indexability.
읽기 전용 외부 접근 가능
입력 스키마
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'The public website URL to audit (e.g. https://example.com).'}}}
calculate_cidr_overlap
Calculate CIDR Overlap
Analyze IPv4/IPv6 CIDR subnets for range collisions, full containment, 2D bit-tree matrix partition, and available free subnet allocation.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['cidrs'], 'properties': {'cidrs': {'type': 'array', 'items': {'type': 'object'}, 'description': 'Array of IPv4 or IPv6 CIDR strings to analyze for collisions and tree partition.'}, 'parent_cidr': {'type': ['null', 'string'], 'default': None, 'description': 'Optional parent CIDR string (e.g. 10.0.0.0/16) to constrain free subnet allocation search.'}, 'requested_free_prefix': {'type': ['null', 'integer'], 'default': None, 'description': 'Optional target prefix length (e.g. 20, 24) to find available free subnet block inside parent range.'}}}
diagnose_cors_policy
Diagnose CORS Policy
Analyze CORS HTTP request and response headers for wildcard/credential security violations, missing Vary: Origin, preflight OPTIONS handling, and header exposure.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['request_origin', 'response_headers'], 'properties': {'request_origin': {'type': 'string', 'description': 'The incoming HTTP request Origin header (e.g. "https://app.example.com").'}, 'response_headers': {'type': 'array', 'items': {}, 'description': 'The server HTTP response headers (as key-value map or list of "Header: Value" strings).'}, 'with_credentials': {'type': ['null', 'boolean'], 'default': False, 'description': 'Whether the cross-origin request includes cookies or authorization credentials.'}}}
generate_apple_pkpass_spec
Generate Apple Wallet pass.json
Generate a production-ready, fully compliant Apple Wallet pass.json specification based on pass type, metadata, colors, barcode, and field values.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['pass_type', 'organization_name', 'description'], 'properties': {'pass_type': {'type': 'string', 'description': 'Pass style type: "boardingPass", "eventTicket", "storeCard", "coupon", or "generic".'}, 'description': {'type': 'string', 'description': 'Human-readable description of the pass, e.g. "Flight from SFO to WAW".'}, 'label_color': {'type': ['null', 'string'], 'default': None, 'description': 'Label text color as CSS rgb(r, g, b), e.g. "rgb(148, 163, 184)".'}, 'transit_type': {'type': ['null', 'string'], 'default': None, 'description': 'Transit type for boardingPass: "PKTransitTypeAir", "PKTransitTypeTrain", "PKTransitTypeBus", "PKTransitTypeBoat", "PKTransitTypeGeneric".'}, 'serial_number': {'type': ['null', 'string'], 'default': None, 'description': 'Unique pass serial number, e.g. "LOT-89421".'}, 'barcode_format': {'type': ['null', 'string'], 'default': None, 'description': 'Barcode format: "PKBarcodeFormatQR", "PKBarcodeFormatPDF417", "PKBarcodeFormatAztec", "PKBarcodeFormatCode128".'}, 'barcode_message': {'type': ['null', 'string'], 'default': None, 'description': 'Barcode message payload, e.g. "M1HAL/BAHDAN ELO027".'}, 'team_identifier': {'type': ['null', 'string'], 'default': None, 'description': 'Apple Developer 10-character Team ID, e.g. "BAHDAN9988".'}, 'background_color': {'type': ['null', 'string'], 'default': None, 'description': 'Background color as CSS rgb(r, g, b), e.g. "rgb(15, 23, 42)".'}, 'foreground_color': {'type': ['null', 'string'], 'default': None, 'description': 'Foreground text color as CSS rgb(r, g, b), e.g. "rgb(255, 255, 255)".'}, 'organization_name': {'type': 'string', 'description': 'Name of the pass issuing organization, e.g. "Acme Airlines".'}, 'pass_type_identifier': {'type': ['null', 'string'], 'default': None, 'description': 'Apple Pass Type Identifier starting with "pass.", e.g. "pass.com.example.ticket".'}}}
generate_favicon_suite
Generate Favicon Suite
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.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['svg_content'], '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".'}}}
inspect_apple_pkpass
Inspect Apple Wallet Pass
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.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['pass_json'], 'properties': {'pass_json': {'type': 'string', 'description': 'The raw pass.json JSON string to inspect and validate.'}}}
inspect_domain_security
Inspect Domain Email Security
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.
읽기 전용 외부 접근 가능
입력 스키마
{'type': 'object', 'required': ['domain'], 'properties': {'domain': {'type': 'string', 'description': 'The domain name to inspect (e.g. stripe.com, example.com).'}}}
repair_apple_pkpass_spec
Repair Apple Wallet pass.json
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.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['pass_json'], 'properties': {'pass_json': {'type': 'string', 'description': 'The raw, broken pass.json JSON string to repair.'}}}
trace_dns_delegation
Trace DNS Delegation
Query live DNS records and inspect the authoritative nameservers returned for a domain.
읽기 전용 외부 접근 가능
입력 스키마
{'type': 'object', 'required': ['domain'], '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".'}}}
transpile_regex_engine
Convert Regex Between Engines
Transpile and analyze regular expressions across engines (PCRE, Go RE2, JavaScript, Python re, Rust regex) with compatibility checks and ReDoS safety analysis.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['pattern'], '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".'}}}
transpile_to_caddyfile
Convert Nginx or Apache Config to Caddyfile
Transpile Nginx (nginx.conf, server blocks) or Apache (.htaccess, VirtualHost) web server configuration to clean, idiomatic Caddyfile with migration advisories.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['config_content'], 'properties': {'server_type': {'type': ['null', 'string'], 'default': None, 'description': 'Optional source server type: "nginx" or "apache". If omitted, auto-detected from content syntax.'}, 'config_content': {'type': 'string', 'description': 'The raw web server configuration string (nginx.conf, server block, .htaccess, or VirtualHost) to transpile.'}}}
validate_app_links
Validate Universal Links and App Links
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.
읽기 전용 외부 접근 가능
입력 스키마
{'type': 'object', 'required': ['domain'], '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': None, 'description': 'Optional web URL path to test against Apple AASA components and exclusion routing patterns.'}}}
추가됨
transpile_regex_engine
2026년 10월 5일 2:40 AM
추가됨
repair_apple_pkpass_spec
2026년 10월 5일 2:40 AM
추가됨
generate_apple_pkpass_spec
2026년 10월 5일 2:40 AM
추가됨
inspect_apple_pkpass
2026년 10월 5일 2:40 AM
추가됨
analyze_geo_readiness
2026년 10월 5일 2:40 AM
추가됨
generate_favicon_suite
2026년 10월 5일 2:40 AM
추가됨
inspect_domain_security
2026년 10월 5일 2:40 AM
추가됨
trace_dns_delegation
2026년 10월 5일 2:40 AM
추가됨
diagnose_cors_policy
2026년 10월 5일 2:40 AM
추가됨
calculate_cidr_overlap
2026년 10월 5일 2:40 AM
추가됨
transpile_to_caddyfile
2026년 10월 5일 2:40 AM
추가됨
audit_website_seo
2026년 10월 5일 2:40 AM
추가됨
validate_app_links
2026년 10월 5일 2:40 AM