{"name":"ca.bakhour/profitcollector","slug":"bakhour-profitcollector","title":"ProfitCollector","description":"22 pay-per-call developer, security, network and data utilities using x402 on Base.","url":"https://mcp.market/server/bakhour-profitcollector","rating":null,"grade":"C","score":60,"certified":false,"status":"active","category":"security","tags":["security"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":7,"ok":7,"last_checked_at":"2026-09-21T01:35:49.381Z","last_ok_at":"2026-09-21T01:35:49.381Z","latency_ms":289},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://mcp.bakhour.ca/","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://mcp.bakhour.ca/mcp"}],"packages":[],"tools":[{"name":"get_dns_lookup","description":"Resolve ONE DNS record type for a domain. For all record types at once use /domain/intelligence; for a bundled DNS+TLS+headers audit use /web/audit or /security/posture; for mail-security plus a scored verdict use /domain/due-diligence.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"domain":{"type":"string","title":"Domain"},"record_type":{"type":"string","default":"A","title":"Record Type"}},"required":["domain"],"additionalProperties":false}},{"name":"get_domain_intelligence","description":"Collect ALL common DNS record types (A/AAAA/MX/NS/TXT/CAA) for a domain in one call -- the multi-record bundle version of /dns/lookup.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"domain":{"type":"string","title":"Domain"}},"required":["domain"],"additionalProperties":false}},{"name":"get_jwt_decode","description":"Decode a JWT payload without signature verification.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"token":{"type":"string","title":"Token"}},"required":["token"],"additionalProperties":false}},{"name":"get_security_headers","description":"Inspect HTTP security headers for ONE URL only. For headers combined with TLS and DNS, use /web/audit (raw) or /security/posture (scored).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","title":"Url"}},"required":["url"],"additionalProperties":false}},{"name":"get_security_posture","description":"Assess TLS and HTTP security posture for a public HTTPS website -- the SAME inspection as /web/audit, but returns a 0-100 score/grade and findings instead of raw fields.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","title":"Url"}},"required":["url"],"additionalProperties":false}},{"name":"get_ssl_check","description":"Inspect the TLS certificate for ONE hostname only. For TLS combined with HTTP headers and DNS, use /web/audit (raw) or /security/posture (scored).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"hostname":{"type":"string","title":"Hostname"}},"required":["hostname"],"additionalProperties":false}},{"name":"get_subnet_calculate","description":"Calculate subnet information from CIDR notation.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"cidr":{"type":"string","title":"Cidr"}},"required":["cidr"],"additionalProperties":false}},{"name":"get_timestamp_convert","description":"Convert a Unix timestamp to UTC ISO-8601.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"timestamp":{"type":"number","title":"Timestamp"}},"required":["timestamp"],"additionalProperties":false}},{"name":"get_url_parse","description":"Parse a URL into structured components.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","title":"Url"}},"required":["url"],"additionalProperties":false}},{"name":"get_uuid_generate","description":"Generate a random UUID version 4.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"count":{"type":"integer","default":1,"title":"Count"}},"additionalProperties":false}},{"name":"get_web_audit","description":"Consolidated DNS, TLS and HTTP security audit for a public HTTPS website, returned as RAW findings (no score) -- the bundled version of /dns/lookup + /ssl/check + /security/headers. Use /security/posture instead for a 0-100 score/grade.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","title":"Url"}},"required":["url"],"additionalProperties":false}},{"name":"post_base64_decode","description":"Decode Base64 to UTF-8 text.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_base64_encode","description":"Encode UTF-8 text using Base64.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_data_transform","description":"Normalize and transform common structured text automatically.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"},"operation":{"type":"string","enum":["auto","json_pretty","json_minify","base64_encode","base64_decode","dedupe_lines"],"default":"auto"}},"required":["text"],"additionalProperties":false}},{"name":"post_domain_due_diligence","description":"The most comprehensive domain assessment: DNS + mail security (SPF/DKIM/DMARC) + TLS + HTTP headers, scored. The only endpoint in this group that adds mail-security analysis. Use for a one-shot decision-grade verdict on an unfamiliar domain; use /dns/lookup, /ssl/check, /security/headers, /web/audit or /security/posture instead for a single fact or a cheaper signal.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"domain":{"type":"string","minLength":1,"title":"Domain","description":"Public domain name to assess","examples":["example.com"]}},"required":["domain"],"additionalProperties":false}},{"name":"post_freshdep_scan","description":"Flags pinned dependencies in a repository's requirements.txt, package-lock.json, or uv.lock published more recently than a freshness threshold -- a supply-chain-compromise tripwire. Free CLI (requirements.txt/package-lock.json only, uv.lock support pending there): github.com/sbakhour/freshdep.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"repo_url":{"type":"string","description":"Full https://github.com/<owner>/<repo> URL to scan."},"ref":{"type":"string","description":"Optional branch/tag to check out instead of the default branch."},"threshold_days":{"type":"number","description":"Flag anything published more recently than this many days ago. Defaults to 7."}},"required":["repo_url"],"additionalProperties":false}},{"name":"post_hash_sha256","description":"Generate SHA-256 digest from text.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_hash_sha512","description":"Generate SHA-512 digest from text.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_json_minify","description":"Minify valid JSON text.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_json_pretty","description":"Pretty-print valid JSON text.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_json_repair","description":"Repair common malformed JSON formatting issues.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_json_validate","description":"Validate JSON text and return parsing details.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_media_image_convert","description":"Convert an image between common formats (e.g. PNG/JPEG/WebP) from a URL or base64 payload.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{},"additionalProperties":false}},{"name":"post_quebec_invoice_compliance_check","description":"Verifies GST/QST were calculated correctly per Revenu Quebec's current (non-compounded) formula, and flags whether a French invoice version is present per Charter of the French Language s.57/89/91. Pure arithmetic + text check; not legal or tax advice.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"subtotal":{"type":"number","description":"Pre-tax subtotal in CAD."},"gst_amount":{"type":"number","description":"GST amount as shown on the invoice."},"qst_amount":{"type":"number","description":"QST amount as shown on the invoice."},"english_text":{"type":"string","description":"The invoice's primary/other-language text (optional but needed for the language check)."},"french_text":{"type":"string","description":"The invoice's French text, if any (optional -- its absence is itself flagged)."}},"required":["subtotal","gst_amount","qst_amount"],"additionalProperties":false}},{"name":"post_quebec_invoice_generate","description":"Assembles a bilingual (French/English) Quebec invoice document with GST/QST computed exactly per Revenu Quebec's current formula -- you supply both languages' line-item text, this does not translate. Not legal or tax advice.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"invoice_number":{"type":"string","description":"Your own invoice number/reference."},"seller_name":{"type":"string","description":"Seller/business name to display."},"seller_gst_number":{"type":"string","description":"GST registration number, optional."},"seller_qst_number":{"type":"string","description":"QST registration number, optional."},"line_items":{"type":"array","description":"Each item needs description_en, description_fr (both required -- this assembles, it does not translate), and amount.","items":{"type":"object","properties":{"description_en":{"type":"string"},"description_fr":{"type":"string"},"amount":{"type":"number"}},"required":["description_en","description_fr","amount"]}}},"required":["invoice_number","seller_name","line_items"],"additionalProperties":false}},{"name":"post_security_repo_risk_report_deep","description":"Everything in the standard report, plus a repo-wide secret/credential exposure scan (matched values are never returned).","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"repo_url":{"type":"string","description":"Public https://github.com/... or https://gitlab.com/... repository URL."},"ref":{"type":"string","description":"Optional branch/tag to analyze. Defaults to the repository's default branch."}},"required":["repo_url"],"additionalProperties":false}},{"name":"post_security_repo_risk_report_due_diligence","description":"Everything in the deep report, plus real OpenSSF Scorecard maintainer/governance signals and a prioritized recommendation. An automated baseline positioned against $5,000-$95,000 human technical due diligence.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"repo_url":{"type":"string","description":"Public https://github.com/... or https://gitlab.com/... repository URL."},"ref":{"type":"string","description":"Optional branch/tag to analyze. Defaults to the repository's default branch."}},"required":["repo_url"],"additionalProperties":false}},{"name":"post_security_repo_risk_report_standard","description":"SBOM inventory plus real OSV.dev dependency-vulnerability matches and dependency-freshness signals for a public Git repository. One-shot alternative to a per-seat secret-scanning subscription.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"repo_url":{"type":"string","description":"Public https://github.com/... or https://gitlab.com/... repository URL."},"ref":{"type":"string","description":"Optional branch/tag to analyze. Defaults to the repository's default branch."}},"required":["repo_url"],"additionalProperties":false}},{"name":"post_text_dedupe_lines","description":"Remove duplicate lines while preserving original order.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_text_stats","description":"Calculate character, word, line and byte statistics.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"name":"post_x402_service_trust_report","description":"Live, on-demand check of ONE x402-protected endpoint before you pay it: payment-requirements structure, TLS certificate, payTo on-chain balance, known-asset recognition, resource/host consistency, and discovery-manifest cross-check -- not a cached aggregate reputation score.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"target_url":{"type":"string","description":"The full https:// URL of the x402-protected endpoint to evaluate."},"target_method":{"type":"string","enum":["GET","POST"],"description":"HTTP method to request target_url with. Defaults to GET; use POST for action-style endpoints that only 402-challenge on POST."}},"required":["target_url"],"additionalProperties":false}}],"scan":{"score":60,"grade":"C","scanned_at":"2026-09-20T20:59:10.729Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T20:59:10.731Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 995ms"]},"poisoning":{"score":15,"max":15,"notes":["31 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 20 write-action tools with no auth"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"},{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://mcp.bakhour.ca/mcp","reachable":true,"authRequired":false,"latencyMs":995,"serverInfo":{"name":"ProfitCollector","version":""}}],"packages":[],"repo":{"found":false},"icon":{"url":null,"source":"none"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}