{"name":"StackFast MCP Control Plane","version":"2026-06-22","description":"Discover governed StackFast MCP connection metadata. Authenticate to see the tools available to your account.","url":"https://stackfast.ai/api/mcp","transport":"http","protocol":"jsonrpc-2.0","auth":{"type":"mixed","discovery":"noauth","tool_calls":"oauth_or_noauth_by_tool","protected_resource_metadata":"https://www.stackfast.ai/api/mcp/oauth-protected-resource"},"storefront":{"product_url":"https://stackfast.ai/store/mcp-plugin-layer","catalog_api":"https://stackfast.ai/api/store/products/mcp-plugin-layer","plugin_index_api":"https://stackfast.ai/api/store/plugins"},"public_name_gate":{"ratified":false,"catalog_scope":"chatgpt_safe_discovery","list_changed":true},"tools":[{"name":"artifact_get","description":"Return session artifact metadata and persistent URLs. V1 intentionally omits raw artifact contents.","inputSchema":{"type":"object","properties":{"artifact_id":{"type":"integer","minimum":1},"session_id":{"type":"string"},"filename":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":20,"default":10}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"artifact_id":{"type":"integer","minimum":1},"session_id":{"type":"string"},"filename":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":20,"default":10}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.artifact.get","generated_safe_alias":true}},{"name":"credentials_inventory","title":"Credential Inventory","description":"Discover wallet-resolved credential service names and accepted aliases without exposing secret values. Use this when an agent is unsure whether a key exists, sees a key-not-found error, or needs the canonical getAgentKey(service) name. Returns service slugs, env/key aliases, categories, and resolver guidance only; never returns raw credentials.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Optional service, provider, env var, or natural-language query such as openai, OPENAI_API_KEY, gmail, Gemini, FireCrawl, or Vercel."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"query":{"type":"string","description":"Optional service, provider, env var, or natural-language query such as openai, OPENAI_API_KEY, gmail, Gemini, FireCrawl, or Vercel."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"schema_version":{"type":"string"},"raw_secret_values_included":{"type":"boolean"},"count":{"type":"number"},"entries":{"type":"array","items":{"type":"object","properties":{"service":{"type":"string"},"display_name":{"type":"string"},"category":{"type":"string"},"description":{"type":"string"},"accepted_names":{"type":"array","items":{"type":"string"}},"env_names":{"type":"array","items":{"type":"string"}},"inventory_tool":{"type":"string"}},"required":["service","display_name","category","description","accepted_names","env_names","inventory_tool"]}},"usage":{"type":"object","additionalProperties":true}},"required":["ok","schema_version","raw_secret_values_included","count","entries","usage"],"additionalProperties":false},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"schema_version":{"type":"string"},"raw_secret_values_included":{"type":"boolean"},"count":{"type":"number"},"entries":{"type":"array","items":{"type":"object","properties":{"service":{"type":"string"},"display_name":{"type":"string"},"category":{"type":"string"},"description":{"type":"string"},"accepted_names":{"type":"array","items":{"type":"string"}},"env_names":{"type":"array","items":{"type":"string"}},"inventory_tool":{"type":"string"}},"required":["service","display_name","category","description","accepted_names","env_names","inventory_tool"]}},"usage":{"type":"object","additionalProperties":true}},"required":["ok","schema_version","raw_secret_values_included","count","entries","usage"],"additionalProperties":false},"_meta":{"canonical_tool_name":"stackfast.credentials.inventory","generated_safe_alias":true}},{"name":"audit_status","description":"Read AI Stack Audit project state, deliverable refs, credit ledger, and Desk/CRM links.","inputSchema":{"type":"object","properties":{"audit_project_id":{"type":"string"},"tenant_id":{"type":"string"}},"required":["audit_project_id"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"audit_project_id":{"type":"string"},"tenant_id":{"type":"string"}},"required":["audit_project_id"],"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.audit.status","generated_safe_alias":true}},{"name":"artifact_generate","description":"Generate a governed, tenant-scoped artifact draft with no-fabrication placeholders, analyzer provenance, MASK, brand status, and approval requirements.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"artifact_type":{"type":"string","enum":["blog","linkedin_post","proposal","upwork_answer","email","bio","cover_letter","case_study","comment","newsletter","landing_page_copy","form_answer","strategy_note","operating_doctrine","decision_log","research_synthesis","outreach","follow_up","objection_response","correspondence_response","one_pager","work_sample","portfolio_summary","founder_pov","framework_essay","cfo_memo","board_finance_brief","qew_report","scenario_analysis","capital_allocation_brief","kpi_narrative","market_commentary","custom"]},"lane":{"type":"string","enum":["external","internal","sales","authority","application","regulated_financial"]},"audience":{"type":"string"},"format":{"type":"string","enum":["short","long","bullets","paste_safe","markdown","html","email_safe","json"]},"source_context":{"type":["object","string"]},"analysis_findings":{"type":"array","items":{"type":"object"}},"caller_type":{"type":"string","enum":["internal_agent","consumer_chat","external_api","mcp_client"]},"locale":{"type":"string"},"output_language":{"type":"string"},"brand_kit_id":{"type":"string"},"voice_profile_id":{"type":"string"},"variant_count":{"type":"integer","minimum":0,"maximum":3},"variant_strategy":{"type":"string"},"idempotency_key":{"type":"string"},"budget_policy":{"type":"object"}},"required":["tenant_id","artifact_type"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"artifact_type":{"type":"string","enum":["blog","linkedin_post","proposal","upwork_answer","email","bio","cover_letter","case_study","comment","newsletter","landing_page_copy","form_answer","strategy_note","operating_doctrine","decision_log","research_synthesis","outreach","follow_up","objection_response","correspondence_response","one_pager","work_sample","portfolio_summary","founder_pov","framework_essay","cfo_memo","board_finance_brief","qew_report","scenario_analysis","capital_allocation_brief","kpi_narrative","market_commentary","custom"]},"lane":{"type":"string","enum":["external","internal","sales","authority","application","regulated_financial"]},"audience":{"type":"string"},"format":{"type":"string","enum":["short","long","bullets","paste_safe","markdown","html","email_safe","json"]},"source_context":{"type":["object","string"]},"analysis_findings":{"type":"array","items":{"type":"object"}},"caller_type":{"type":"string","enum":["internal_agent","consumer_chat","external_api","mcp_client"]},"locale":{"type":"string"},"output_language":{"type":"string"},"brand_kit_id":{"type":"string"},"voice_profile_id":{"type":"string"},"variant_count":{"type":"integer","minimum":0,"maximum":3},"variant_strategy":{"type":"string"},"idempotency_key":{"type":"string"},"budget_policy":{"type":"object"}},"required":["tenant_id","artifact_type"],"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.artifact.generate","generated_safe_alias":true}},{"name":"artifact_refine","description":"Refine an existing artifact draft while preserving tenant boundary, provenance, MASK status, and approval posture.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"draft_id":{"type":"string"},"source_content":{"type":"string"},"artifact_type":{"type":"string","enum":["blog","linkedin_post","proposal","upwork_answer","email","bio","cover_letter","case_study","comment","newsletter","landing_page_copy","form_answer","strategy_note","operating_doctrine","decision_log","research_synthesis","outreach","follow_up","objection_response","correspondence_response","one_pager","work_sample","portfolio_summary","founder_pov","framework_essay","cfo_memo","board_finance_brief","qew_report","scenario_analysis","capital_allocation_brief","kpi_narrative","market_commentary","custom"]},"lane":{"type":"string","enum":["external","internal","sales","authority","application","regulated_financial"]},"audience":{"type":"string"},"format":{"type":"string","enum":["short","long","bullets","paste_safe","markdown","html","email_safe","json"]},"source_context":{"type":["object","string"]},"refinement_instruction":{"type":"string"},"idempotency_key":{"type":"string"},"new_source_context":{"type":["object","string"]}},"required":["tenant_id","refinement_instruction"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"draft_id":{"type":"string"},"source_content":{"type":"string"},"artifact_type":{"type":"string","enum":["blog","linkedin_post","proposal","upwork_answer","email","bio","cover_letter","case_study","comment","newsletter","landing_page_copy","form_answer","strategy_note","operating_doctrine","decision_log","research_synthesis","outreach","follow_up","objection_response","correspondence_response","one_pager","work_sample","portfolio_summary","founder_pov","framework_essay","cfo_memo","board_finance_brief","qew_report","scenario_analysis","capital_allocation_brief","kpi_narrative","market_commentary","custom"]},"lane":{"type":"string","enum":["external","internal","sales","authority","application","regulated_financial"]},"audience":{"type":"string"},"format":{"type":"string","enum":["short","long","bullets","paste_safe","markdown","html","email_safe","json"]},"source_context":{"type":["object","string"]},"refinement_instruction":{"type":"string"},"idempotency_key":{"type":"string"},"new_source_context":{"type":["object","string"]}},"required":["tenant_id","refinement_instruction"],"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.artifact.refine","generated_safe_alias":true}},{"name":"artifact_save","description":"Approve/save an artifact and mark tenant-scoped learning-loop eligibility. Does not publish externally.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"draft_id":{"type":"string"},"approved":{"type":"boolean"},"reuse_tags":{"type":"array","items":{"type":"string"}},"approval_event_id":{"type":"string"},"learning_scope":{"type":"string"},"idempotency_key":{"type":"string"}},"required":["tenant_id","draft_id"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"draft_id":{"type":"string"},"approved":{"type":"boolean"},"reuse_tags":{"type":"array","items":{"type":"string"}},"approval_event_id":{"type":"string"},"learning_scope":{"type":"string"},"idempotency_key":{"type":"string"}},"required":["tenant_id","draft_id"],"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.artifact.save","generated_safe_alias":true}},{"name":"artifact_export","description":"Create an audited export receipt for an approved artifact or internal draft. External publish remains separate and human-approved.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"artifact_id":{"type":"string"},"draft_id":{"type":"string"},"target":{"type":"string","enum":["markdown","html","email_draft","linkedin_draft","cogentcast_content","talent_scout_workspace","json"]},"target_config":{"type":"object"},"format":{"type":"string","enum":["short","long","bullets","paste_safe","markdown","html","email_safe","json"]},"approval_event_id":{"type":"string"},"idempotency_key":{"type":"string"}},"required":["tenant_id","target"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"artifact_id":{"type":"string"},"draft_id":{"type":"string"},"target":{"type":"string","enum":["markdown","html","email_draft","linkedin_draft","cogentcast_content","talent_scout_workspace","json"]},"target_config":{"type":"object"},"format":{"type":"string","enum":["short","long","bullets","paste_safe","markdown","html","email_safe","json"]},"approval_event_id":{"type":"string"},"idempotency_key":{"type":"string"}},"required":["tenant_id","target"],"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.artifact.export","generated_safe_alias":true}},{"name":"reply_compose","description":"Compose a relationship-safe correspondence decision packet with do_not_say, safe_phrasing, channel constraints, manual approval, and a correspondence_response artifact audit trail. It never sends the message.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"surface":{"type":"string"},"channel":{"type":"string","enum":["email","linkedin_connect","linkedin_message","sms","call_transcript","voicemail","receptionist_follow_up","recruiter_response","warm_referral"]},"constraints":{"type":"object"},"inbound_message":{"type":"string"},"relationship_context":{"type":"string"},"recipient_name":{"type":"string"},"referred_by":{"type":"string"},"goal":{"type":"string"},"capability_context":{"type":"string"},"crm_context":{"type":"object"},"signature":{"type":"string"},"idempotency_key":{"type":"string"},"persist_artifact":{"type":"boolean"}},"required":["channel"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"surface":{"type":"string"},"channel":{"type":"string","enum":["email","linkedin_connect","linkedin_message","sms","call_transcript","voicemail","receptionist_follow_up","recruiter_response","warm_referral"]},"constraints":{"type":"object"},"inbound_message":{"type":"string"},"relationship_context":{"type":"string"},"recipient_name":{"type":"string"},"referred_by":{"type":"string"},"goal":{"type":"string"},"capability_context":{"type":"string"},"crm_context":{"type":"object"},"signature":{"type":"string"},"idempotency_key":{"type":"string"},"persist_artifact":{"type":"boolean"}},"required":["channel"],"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.reply.compose","generated_safe_alias":true}},{"name":"artifact_audit","description":"Read provenance, analyzer findings, gate status, approval state, usage, and export receipts for one tenant-scoped artifact.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"artifact_id":{"type":"string"},"draft_id":{"type":"string"}},"required":["tenant_id"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"artifact_id":{"type":"string"},"draft_id":{"type":"string"}},"required":["tenant_id"],"additionalProperties":false},"annotations":{"readOnlyHint":true},"outputSchema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"output_schema":{"type":"object","description":"Structured JSON result envelope. Tool-specific fields vary by product surface; outputs are governed, audit-safe, and omit secrets.","additionalProperties":true},"_meta":{"canonical_tool_name":"stackfast.artifact.audit","generated_safe_alias":true}},{"name":"growthos_scorecard","title":"GrowthOS Scorecard","description":"Build a private GrowthOS Revenue Capture Scorecard from supplied public business signals. Returns scorecard findings only; it never sends outreach.","inputSchema":{"type":"object","properties":{"prospect":{"type":"object","description":"Single local-business prospect input."},"prospects":{"type":"array","items":{"type":"object"},"description":"Batch of up to 25 local-business prospect inputs."},"sender":{"type":"object","description":"Optional sender identity with sender_name and geography."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"prospect":{"type":"object","description":"Single local-business prospect input."},"prospects":{"type":"array","items":{"type":"object"},"description":"Batch of up to 25 local-business prospect inputs."},"sender":{"type":"object","description":"Optional sender identity with sender_name and geography."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Building GrowthOS scorecard","openai/toolInvocation/invoked":"GrowthOS scorecard ready","canonical_tool_name":"stackfast.growthos.scorecard","generated_safe_alias":true}},{"name":"growthos_business_brain_interview","title":"GrowthOS Business Brain Interview","description":"Start or append a GrowthOS Business Brain Interview using the existing interview/session model. Outputs remain draft_review_required before automation.","inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["template","start","append_answers","generate_artifacts"],"default":"start"},"interview_type":{"type":"string","enum":["growthos_scorecard_interview","growthos_business_brain_interview"]},"tenant_id":{"type":"string"},"lead_id":{"type":["string","number"]},"customer_email":{"type":"string"},"customer_name":{"type":"string"},"company":{"type":"string"},"source":{"type":"string"},"audit_project_id":{"type":"string"},"session_id":{"type":"string"},"answers":{"type":"array","items":{"type":"object"}}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"action":{"type":"string","enum":["template","start","append_answers","generate_artifacts"],"default":"start"},"interview_type":{"type":"string","enum":["growthos_scorecard_interview","growthos_business_brain_interview"]},"tenant_id":{"type":"string"},"lead_id":{"type":["string","number"]},"customer_email":{"type":"string"},"customer_name":{"type":"string"},"company":{"type":"string"},"source":{"type":"string"},"audit_project_id":{"type":"string"},"session_id":{"type":"string"},"answers":{"type":"array","items":{"type":"object"}}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Building GrowthOS scorecard","openai/toolInvocation/invoked":"GrowthOS scorecard ready","canonical_tool_name":"stackfast.growthos.business_brain_interview","generated_safe_alias":true}},{"name":"growthos_revenue_capture_packet","title":"GrowthOS Revenue Capture Packet","description":"Return a GrowthOS revenue-capture packet: scorecard, review-gated contact drafts, CogentCast site-review receipt composition, and summary for supplied local-business evidence. GrowthOS consumes CogentCast receipts instead of recreating website-review logic. No autonomous outbound.","inputSchema":{"type":"object","properties":{"prospect":{"type":"object"},"sender":{"type":"object"},"include_cogentcast_site_review":{"type":"boolean","description":"Fetch a CogentCast dry-run site-review receipt for the supplied website_url and compose it into step 3."},"cogentcast_site_review":{"type":"object","description":"Optional CogentCast site-review request or precomputed receipt. GrowthOS consumes this receipt instead of recreating website review logic."}},"required":["prospect"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"prospect":{"type":"object"},"sender":{"type":"object"},"include_cogentcast_site_review":{"type":"boolean","description":"Fetch a CogentCast dry-run site-review receipt for the supplied website_url and compose it into step 3."},"cogentcast_site_review":{"type":"object","description":"Optional CogentCast site-review request or precomputed receipt. GrowthOS consumes this receipt instead of recreating website review logic."}},"required":["prospect"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Building GrowthOS scorecard","openai/toolInvocation/invoked":"GrowthOS scorecard ready","canonical_tool_name":"stackfast.growthos.revenue_capture_packet","generated_safe_alias":true}},{"name":"growthos_owner_facing_report","title":"GrowthOS Owner-Facing Report","description":"Render the canonical GrowthOS scorecard into a sendable owner-facing report with web, email-review-ready, PDF-ready outputs, and optional CogentCast site-review receipt composition. No autonomous send.","inputSchema":{"type":"object","properties":{"prospect":{"type":"object"},"sender":{"type":"object"},"include_cogentcast_site_review":{"type":"boolean","description":"Fetch a CogentCast dry-run site-review receipt for the supplied website_url and compose it into step 3."},"cogentcast_site_review":{"type":"object","description":"Optional CogentCast site-review request or precomputed receipt. GrowthOS consumes this receipt instead of recreating website review logic."}},"required":["prospect"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"prospect":{"type":"object"},"sender":{"type":"object"},"include_cogentcast_site_review":{"type":"boolean","description":"Fetch a CogentCast dry-run site-review receipt for the supplied website_url and compose it into step 3."},"cogentcast_site_review":{"type":"object","description":"Optional CogentCast site-review request or precomputed receipt. GrowthOS consumes this receipt instead of recreating website review logic."}},"required":["prospect"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Building GrowthOS scorecard","openai/toolInvocation/invoked":"GrowthOS scorecard ready","canonical_tool_name":"stackfast.growthos.owner_facing_report","generated_safe_alias":true}},{"name":"growthos_opportunity_scout_packet","title":"GrowthOS Opportunity Scout Packet","description":"Build an Opportunity Scout packet for customer, talent, contract, or capital opportunities using the existing gate-first policy layer and no new persistence table.","inputSchema":{"type":"object","properties":{"opportunity":{"type":"object","description":"Opportunity input. opportunity_type must be one of the registered Opportunity Scout types."}},"required":["opportunity"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"opportunity":{"type":"object","description":"Opportunity input. opportunity_type must be one of the registered Opportunity Scout types."}},"required":["opportunity"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Building GrowthOS scorecard","openai/toolInvocation/invoked":"GrowthOS scorecard ready","canonical_tool_name":"stackfast.growthos.opportunity_scout_packet","generated_safe_alias":true}},{"name":"growthos_digital_clone_packet","title":"GrowthOS Digital Clone Packet","description":"Build a draft GrowthOS digital-clone render packet from normalized signals, evidence, runtime tenant voice profile, and PERSPECTIVE capability grounding. No Robert voice defaults and no autonomous outbound.","inputSchema":{"type":"object","properties":{"prospect":{"type":"object","description":"Local-business prospect evidence to normalize into signals{} + evidence[]."},"tenant_profile":{"type":"object","description":"Runtime tenant voice and delivery profile. Required before publication; missing profile returns draft_review_required."},"perspective_context":{"type":"string","description":"Optional buyer pain or delivery context to ground through stackfast.perspective.translate."}},"required":["prospect"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"prospect":{"type":"object","description":"Local-business prospect evidence to normalize into signals{} + evidence[]."},"tenant_profile":{"type":"object","description":"Runtime tenant voice and delivery profile. Required before publication; missing profile returns draft_review_required."},"perspective_context":{"type":"string","description":"Optional buyer pain or delivery context to ground through stackfast.perspective.translate."}},"required":["prospect"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"no_autonomous_outbound":{"type":"boolean"},"review_required_before_send":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Building GrowthOS scorecard","openai/toolInvocation/invoked":"GrowthOS scorecard ready","canonical_tool_name":"stackfast.growthos.digital_clone_packet","generated_safe_alias":true}},{"name":"estimator_catalog_search","title":"OCE Estimator catalog search","description":"Operate on tenant-scoped OCE Estimator/Appraiser catalog sources/items, including the StackFast storefront catalog, through the generic estimator_* control-plane contract.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.catalog_search","generated_safe_alias":true}},{"name":"estimator_catalog_sources","title":"OCE Estimator catalog sources","description":"Operate on tenant-scoped OCE Estimator/Appraiser catalog sources/items, including the StackFast storefront catalog, through the generic estimator_* control-plane contract.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.catalog_sources","generated_safe_alias":true}},{"name":"estimator_estimate_create_draft","title":"OCE Estimator estimate create draft","description":"Operate on tenant-scoped OCE Estimator/Appraiser drafts, lines, versions, documents, exports, and policy receipts.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.estimate_create_draft","generated_safe_alias":true}},{"name":"estimator_estimate_add_line","title":"OCE Estimator estimate add line","description":"Operate on tenant-scoped OCE Estimator/Appraiser drafts, lines, versions, documents, exports, and policy receipts.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.estimate_add_line","generated_safe_alias":true}},{"name":"estimator_estimate_update_line","title":"OCE Estimator estimate update line","description":"Operate on tenant-scoped OCE Estimator/Appraiser drafts, lines, versions, documents, exports, and policy receipts.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.estimate_update_line","generated_safe_alias":true}},{"name":"estimator_estimate_convert_to_bid","title":"OCE Estimator estimate convert to bid","description":"Operate on tenant-scoped OCE Estimator/Appraiser drafts, lines, versions, documents, exports, and policy receipts.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.estimate_convert_to_bid","generated_safe_alias":true}},{"name":"estimator_estimate_convert_to_invoice","title":"OCE Estimator estimate convert to invoice","description":"Prepare an OCE Estimator/Appraiser document or QBO handoff contract. Review-gated; does not write to accounting systems.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.estimate_convert_to_invoice","generated_safe_alias":true}},{"name":"estimator_estimate_progress_invoice","title":"OCE Estimator estimate progress invoice","description":"Prepare an OCE Estimator/Appraiser document or QBO handoff contract. Review-gated; does not write to accounting systems.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.estimate_progress_invoice","generated_safe_alias":true}},{"name":"estimator_estimate_export","title":"OCE Estimator estimate export","description":"Operate on tenant-scoped OCE Estimator/Appraiser drafts, lines, versions, documents, exports, and policy receipts.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.estimate_export","generated_safe_alias":true}},{"name":"estimator_policy_check","title":"OCE Estimator policy check","description":"Operate on tenant-scoped OCE Estimator/Appraiser drafts, lines, versions, documents, exports, and policy receipts.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.policy_check","generated_safe_alias":true}},{"name":"estimator_receipt_get","title":"OCE Estimator receipt get","description":"Operate on tenant-scoped OCE Estimator/Appraiser drafts, lines, versions, documents, exports, and policy receipts.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string","description":"Tenant boundary, for example repair-remodel-360."},"adapter_id":{"type":"string","enum":["construction.repair_remodel_360","construction.generic_remodel","field_service.hvac_light_service"],"description":"Vertical adapter."},"estimate_id":{"type":"string"},"document_id":{"type":"string"},"source_id":{"type":"string"},"query":{"type":"string"},"line":{"type":"object"},"lines":{"type":"array","items":{"type":"object"}},"format":{"type":"string","enum":["pdf","word","excel","html","csv","json"]},"progress_pct":{"type":"number","minimum":0,"maximum":1},"approval":{"type":"object"},"bridge":{"type":"object"},"idempotency_key":{"type":"string"}},"additionalProperties":true},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"product":{"type":"string"},"review_required_before_customer_release":{"type":"boolean"},"no_accounting_write":{"type":"boolean"}},"required":["ok","tool","product"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Preparing OCE estimator packet","openai/toolInvocation/invoked":"OCE estimator packet ready","canonical_tool_name":"stackfast.estimator.receipt_get","generated_safe_alias":true}},{"name":"ai_receptionist_status","title":"AI Receptionist Status","description":"Read the Desk ticket, CRM callback task, call-link receipt, and A2P-gated inbound SMS posture for one AI Receptionist call ID. Returns masked/status metadata only.","inputSchema":{"type":"object","properties":{"call_id":{"type":"string"},"tenant_id":{"type":"string"}},"required":["call_id"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"call_id":{"type":"string"},"tenant_id":{"type":"string"}},"required":["call_id"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"live_line_touched":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"live_line_touched":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Checking AI receptionist loop","openai/toolInvocation/invoked":"AI receptionist loop ready","canonical_tool_name":"stackfast.ai_receptionist.status","generated_safe_alias":true}},{"name":"ai_receptionist_review_queue","title":"AI Receptionist Review Queue","description":"List recent AI Receptionist call-loop receipts for human review, including callback and A2P-gated inbound SMS status where present. Returns masked/audit-safe identifiers only.","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","minimum":1,"maximum":50},"tenant_id":{"type":"string"}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"limit":{"type":"integer","minimum":1,"maximum":50},"tenant_id":{"type":"string"}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"live_line_touched":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"live_line_touched":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Checking AI receptionist loop","openai/toolInvocation/invoked":"AI receptionist loop ready","canonical_tool_name":"stackfast.ai_receptionist.review_queue","generated_safe_alias":true}},{"name":"ai_receptionist_callback_packet","title":"AI Receptionist Callback Packet","description":"Return a human-review callback packet for one AI Receptionist call. The packet is review-only and does not send SMS, place calls, or reply to customers autonomously.","inputSchema":{"type":"object","properties":{"call_id":{"type":"string"},"tenant_id":{"type":"string"}},"required":["call_id"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"call_id":{"type":"string"},"tenant_id":{"type":"string"}},"required":["call_id"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"live_line_touched":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"tool":{"type":"string"},"public_name":{"type":"string"},"live_line_touched":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["ok","tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Checking AI receptionist loop","openai/toolInvocation/invoked":"AI receptionist loop ready","canonical_tool_name":"stackfast.ai_receptionist.callback_packet","generated_safe_alias":true}},{"name":"talent_scout_my_profile_upsert","title":"Talent Scout Job Seeker Profile Upsert","description":"Create or update the account owner's own Talent Scout job-seeker profile once so compose, score, and packet tools can reuse self-entered resume, LinkedIn, proof-point, preference, and voice evidence without re-pasting it for every role. This is first-party job-search data for the owner, not employer-side applicant screening. Stores private owner evidence for proof mapping and never returns raw resume or LinkedIn text.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"mode":{"type":"string","enum":["merge","replace"],"default":"merge"},"dry_run":{"type":"boolean","default":false,"description":"Preview the redacted owner-profile update without writing stored resume, LinkedIn, proof, or rail evidence. Use this for connector smoke tests."},"baseline_resume_text":{"type":"string","description":"Private baseline resume text. Stored tenant-scoped and never returned raw."},"applicant_profile_text":{"type":"string","description":"Private owner job-search profile setup notes. Stored tenant-scoped and never returned raw."},"linkedin_profile_text":{"type":"string","description":"Private LinkedIn profile paste/export when LinkedIn blocks automated fetch. Stored tenant-scoped and never returned raw."},"voice_profile":{"type":"string"},"claims_ledger":{"type":"array","items":{"type":"object","additionalProperties":true}},"proof_points":{"type":"array","items":{"type":"object","additionalProperties":true}},"work_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"target_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"geography_preferences":{"type":"array","items":{"type":"string"}},"compensation_preferences":{"type":"array","items":{"type":"string"}},"travel_preferences":{"type":"array","items":{"type":"string"}},"resume_variant_ids":{"type":"array","items":{"type":"string"}},"application_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"outreach_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"interview_history":{"type":"array","items":{"type":"object","additionalProperties":true}}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"mode":{"type":"string","enum":["merge","replace"],"default":"merge"},"dry_run":{"type":"boolean","default":false,"description":"Preview the redacted owner-profile update without writing stored resume, LinkedIn, proof, or rail evidence. Use this for connector smoke tests."},"baseline_resume_text":{"type":"string","description":"Private baseline resume text. Stored tenant-scoped and never returned raw."},"applicant_profile_text":{"type":"string","description":"Private owner job-search profile setup notes. Stored tenant-scoped and never returned raw."},"linkedin_profile_text":{"type":"string","description":"Private LinkedIn profile paste/export when LinkedIn blocks automated fetch. Stored tenant-scoped and never returned raw."},"voice_profile":{"type":"string"},"claims_ledger":{"type":"array","items":{"type":"object","additionalProperties":true}},"proof_points":{"type":"array","items":{"type":"object","additionalProperties":true}},"work_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"target_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"geography_preferences":{"type":"array","items":{"type":"string"}},"compensation_preferences":{"type":"array","items":{"type":"string"}},"travel_preferences":{"type":"array","items":{"type":"string"}},"resume_variant_ids":{"type":"array","items":{"type":"string"}},"application_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"outreach_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"interview_history":{"type":"array","items":{"type":"object","additionalProperties":true}}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.applicant_profile_upsert","generated_safe_alias":true}},{"name":"talent_scout_profile_upsert","title":"Talent Scout Job Seeker Profile Upsert","description":"Create or update the account owner's own Talent Scout job-seeker profile once so compose, score, and packet tools can reuse self-entered resume, LinkedIn, proof-point, preference, and voice evidence without re-pasting it for every role. This is first-party job-search data for the owner, not employer-side applicant screening. Stores private owner evidence for proof mapping and never returns raw resume or LinkedIn text.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"mode":{"type":"string","enum":["merge","replace"],"default":"merge"},"dry_run":{"type":"boolean","default":false,"description":"Preview the redacted owner-profile update without writing stored resume, LinkedIn, proof, or rail evidence. Use this for connector smoke tests."},"baseline_resume_text":{"type":"string","description":"Private baseline resume text. Stored tenant-scoped and never returned raw."},"applicant_profile_text":{"type":"string","description":"Private owner job-search profile setup notes. Stored tenant-scoped and never returned raw."},"linkedin_profile_text":{"type":"string","description":"Private LinkedIn profile paste/export when LinkedIn blocks automated fetch. Stored tenant-scoped and never returned raw."},"voice_profile":{"type":"string"},"claims_ledger":{"type":"array","items":{"type":"object","additionalProperties":true}},"proof_points":{"type":"array","items":{"type":"object","additionalProperties":true}},"work_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"target_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"geography_preferences":{"type":"array","items":{"type":"string"}},"compensation_preferences":{"type":"array","items":{"type":"string"}},"travel_preferences":{"type":"array","items":{"type":"string"}},"resume_variant_ids":{"type":"array","items":{"type":"string"}},"application_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"outreach_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"interview_history":{"type":"array","items":{"type":"object","additionalProperties":true}}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"mode":{"type":"string","enum":["merge","replace"],"default":"merge"},"dry_run":{"type":"boolean","default":false,"description":"Preview the redacted owner-profile update without writing stored resume, LinkedIn, proof, or rail evidence. Use this for connector smoke tests."},"baseline_resume_text":{"type":"string","description":"Private baseline resume text. Stored tenant-scoped and never returned raw."},"applicant_profile_text":{"type":"string","description":"Private owner job-search profile setup notes. Stored tenant-scoped and never returned raw."},"linkedin_profile_text":{"type":"string","description":"Private LinkedIn profile paste/export when LinkedIn blocks automated fetch. Stored tenant-scoped and never returned raw."},"voice_profile":{"type":"string"},"claims_ledger":{"type":"array","items":{"type":"object","additionalProperties":true}},"proof_points":{"type":"array","items":{"type":"object","additionalProperties":true}},"work_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"target_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"geography_preferences":{"type":"array","items":{"type":"string"}},"compensation_preferences":{"type":"array","items":{"type":"string"}},"travel_preferences":{"type":"array","items":{"type":"string"}},"resume_variant_ids":{"type":"array","items":{"type":"string"}},"application_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"outreach_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"interview_history":{"type":"array","items":{"type":"object","additionalProperties":true}}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.applicant_profile_upsert","generated_safe_alias":true}},{"name":"talent_scout_applicant_profile_upsert","title":"Talent Scout Job Seeker Profile Upsert","description":"Create or update the account owner's own Talent Scout job-seeker profile once so compose, score, and packet tools can reuse self-entered resume, LinkedIn, proof-point, preference, and voice evidence without re-pasting it for every role. This is first-party job-search data for the owner, not employer-side applicant screening. Stores private owner evidence for proof mapping and never returns raw resume or LinkedIn text.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"mode":{"type":"string","enum":["merge","replace"],"default":"merge"},"dry_run":{"type":"boolean","default":false,"description":"Preview the redacted owner-profile update without writing stored resume, LinkedIn, proof, or rail evidence. Use this for connector smoke tests."},"baseline_resume_text":{"type":"string","description":"Private baseline resume text. Stored tenant-scoped and never returned raw."},"applicant_profile_text":{"type":"string","description":"Private owner job-search profile setup notes. Stored tenant-scoped and never returned raw."},"linkedin_profile_text":{"type":"string","description":"Private LinkedIn profile paste/export when LinkedIn blocks automated fetch. Stored tenant-scoped and never returned raw."},"voice_profile":{"type":"string"},"claims_ledger":{"type":"array","items":{"type":"object","additionalProperties":true}},"proof_points":{"type":"array","items":{"type":"object","additionalProperties":true}},"work_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"target_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"geography_preferences":{"type":"array","items":{"type":"string"}},"compensation_preferences":{"type":"array","items":{"type":"string"}},"travel_preferences":{"type":"array","items":{"type":"string"}},"resume_variant_ids":{"type":"array","items":{"type":"string"}},"application_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"outreach_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"interview_history":{"type":"array","items":{"type":"object","additionalProperties":true}}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"mode":{"type":"string","enum":["merge","replace"],"default":"merge"},"dry_run":{"type":"boolean","default":false,"description":"Preview the redacted owner-profile update without writing stored resume, LinkedIn, proof, or rail evidence. Use this for connector smoke tests."},"baseline_resume_text":{"type":"string","description":"Private baseline resume text. Stored tenant-scoped and never returned raw."},"applicant_profile_text":{"type":"string","description":"Private owner job-search profile setup notes. Stored tenant-scoped and never returned raw."},"linkedin_profile_text":{"type":"string","description":"Private LinkedIn profile paste/export when LinkedIn blocks automated fetch. Stored tenant-scoped and never returned raw."},"voice_profile":{"type":"string"},"claims_ledger":{"type":"array","items":{"type":"object","additionalProperties":true}},"proof_points":{"type":"array","items":{"type":"object","additionalProperties":true}},"work_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"target_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"geography_preferences":{"type":"array","items":{"type":"string"}},"compensation_preferences":{"type":"array","items":{"type":"string"}},"travel_preferences":{"type":"array","items":{"type":"string"}},"resume_variant_ids":{"type":"array","items":{"type":"string"}},"application_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"outreach_history":{"type":"array","items":{"type":"object","additionalProperties":true}},"interview_history":{"type":"array","items":{"type":"object","additionalProperties":true}}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.applicant_profile_upsert","generated_safe_alias":true}},{"name":"talent_scout_my_profile_status","title":"Talent Scout My Profile Status","description":"Read a compact, redacted readiness receipt for the account owner's own Talent Scout job-search profile. This is first-party self-profile readiness, not employer-side applicant screening or hiring evaluation. Returns only setup status, compose readiness, and active search-rail readiness; never returns raw resume, LinkedIn, work history, claims, or private owner profile text.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.applicant_profile_status","generated_safe_alias":true}},{"name":"talent_scout_profile_status","title":"Talent Scout My Profile Status","description":"Read a compact, redacted readiness receipt for the account owner's own Talent Scout job-search profile. This is first-party self-profile readiness, not employer-side applicant screening or hiring evaluation. Returns only setup status, compose readiness, and active search-rail readiness; never returns raw resume, LinkedIn, work history, claims, or private owner profile text.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.applicant_profile_status","generated_safe_alias":true}},{"name":"talent_scout_applicant_profile_status","title":"Talent Scout My Profile Status","description":"Read a compact, redacted readiness receipt for the account owner's own Talent Scout job-search profile. This is first-party self-profile readiness, not employer-side applicant screening or hiring evaluation. Returns only setup status, compose readiness, and active search-rail readiness; never returns raw resume, LinkedIn, work history, claims, or private owner profile text.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.applicant_profile_status","generated_safe_alias":true}},{"name":"talent_scout_set_search_rails","title":"Talent Scout Set Search Rails","description":"Persist the active Talent Scout search strategy for a tenant: target lanes, compensation floor, geography, positive/negative filters, resume-variant priority, travel posture, and voice anchor. Future search, scoring, review, compose, packet, and outreach calls load these rails by default until superseded.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"applicant_profile_id":{"type":"string"},"rail_name":{"type":"string"},"active":{"type":"boolean","default":true},"priority":{"type":"string","default":"primary"},"reason":{"type":"string"},"target_lanes":{"type":"array","items":{"type":"string"}},"compensation_floor":{"type":"string"},"geography":{"type":"array","items":{"type":"string"}},"positive_filters":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"resume_variant_priority":{"type":"object","additionalProperties":true},"voice_anchor":{"type":"string"},"age_strategy":{"type":"object","additionalProperties":true}},"required":["rail_name"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"applicant_profile_id":{"type":"string"},"rail_name":{"type":"string"},"active":{"type":"boolean","default":true},"priority":{"type":"string","default":"primary"},"reason":{"type":"string"},"target_lanes":{"type":"array","items":{"type":"string"}},"compensation_floor":{"type":"string"},"geography":{"type":"array","items":{"type":"string"}},"positive_filters":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"resume_variant_priority":{"type":"object","additionalProperties":true},"voice_anchor":{"type":"string"},"age_strategy":{"type":"object","additionalProperties":true}},"required":["rail_name"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.set_search_rails","generated_safe_alias":true}},{"name":"talent_scout_upsert_campaign_profile","title":"Talent Scout Upsert Campaign Profile","description":"Create, update, activate, pause, or archive a saved Talent Scout direct-company discovery campaign. Campaigns define company lanes, role lanes, size, geography, comp floor, travel tolerance, negative filters, resume variant, voice anchor, and human-review requirements. Draft/review only; never sends or applies.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"name":{"type":"string"},"status":{"type":"string","enum":["active","paused","archived"],"default":"active"},"priority":{"type":"string","default":"P1"},"company_size_min":{"type":"integer","minimum":0},"company_size_max":{"type":"integer","minimum":1},"geography_anchor":{"type":"string"},"radius_minutes":{"type":"integer","minimum":1},"expanded_regions":{"type":"array","items":{"type":"string"}},"compensation_min":{"type":"string"},"minimum_total_comp":{"type":"integer","minimum":0},"acceptable_structures":{"type":"array","items":{"type":"string"}},"eligible_countries":{"type":"array","items":{"type":"string"},"default":["US"],"description":"Backward-compatible campaign-level work-authorization hint. Candidate policy still owns the hard country gate."},"target_company_lanes":{"type":"array","items":{"type":"string"}},"target_role_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"resume_variant_strategy":{"type":"object","additionalProperties":true},"voice_anchor":{"type":"string"},"contact_strategy":{"type":"object","additionalProperties":true},"seed_robert_campaign":{"type":"boolean","default":false}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"name":{"type":"string"},"status":{"type":"string","enum":["active","paused","archived"],"default":"active"},"priority":{"type":"string","default":"P1"},"company_size_min":{"type":"integer","minimum":0},"company_size_max":{"type":"integer","minimum":1},"geography_anchor":{"type":"string"},"radius_minutes":{"type":"integer","minimum":1},"expanded_regions":{"type":"array","items":{"type":"string"}},"compensation_min":{"type":"string"},"minimum_total_comp":{"type":"integer","minimum":0},"acceptable_structures":{"type":"array","items":{"type":"string"}},"eligible_countries":{"type":"array","items":{"type":"string"},"default":["US"],"description":"Backward-compatible campaign-level work-authorization hint. Candidate policy still owns the hard country gate."},"target_company_lanes":{"type":"array","items":{"type":"string"}},"target_role_lanes":{"type":"array","items":{"type":"string"}},"negative_filters":{"type":"array","items":{"type":"string"}},"resume_variant_strategy":{"type":"object","additionalProperties":true},"voice_anchor":{"type":"string"},"contact_strategy":{"type":"object","additionalProperties":true},"seed_robert_campaign":{"type":"boolean","default":false}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.upsert_campaign_profile","generated_safe_alias":true}},{"name":"talent_scout_discover_companies_by_campaign","title":"Talent Scout Discover Companies By Campaign","description":"Preview the account owner's saved business-lead campaign. Returns public company website leads, employee-count confidence, source receipts, and next actions for manual review. This is first-party job-search research for the account owner, not applicant screening, not hiring decisions, not outreach, and not autonomous apply/send. Read-only by default: it does not persist leads unless persist_results is explicitly true and never scrapes LinkedIn.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"campaign_name":{"type":"string"},"sources":{"type":"array","items":{"type":"string"}},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10},"allow_live_google_places":{"type":"boolean","default":true,"description":"Refresh public business website leads through the configured directory provider and distance check. Websites are required before downstream enrichment. Set false only for an explicit no-network dry run."},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Backward-compatible refresh flag; Firecrawl is only a fallback/search or downstream extraction provider, not the Stage 1 radar."},"persist_results":{"type":"boolean","default":false,"description":"When true, persist discovered company leads to the Talent Scout campaign store. Defaults false so hosted MCP discovery remains a read-only preview for human review."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"campaign_name":{"type":"string"},"sources":{"type":"array","items":{"type":"string"}},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10},"allow_live_google_places":{"type":"boolean","default":true,"description":"Refresh public business website leads through the configured directory provider and distance check. Websites are required before downstream enrichment. Set false only for an explicit no-network dry run."},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Backward-compatible refresh flag; Firecrawl is only a fallback/search or downstream extraction provider, not the Stage 1 radar."},"persist_results":{"type":"boolean","default":false,"description":"When true, persist discovered company leads to the Talent Scout campaign store. Defaults false so hosted MCP discovery remains a read-only preview for human review."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.discover_companies_by_campaign","generated_safe_alias":true}},{"name":"talent_scout_discover_local_companies","title":"Talent Scout Discover Local Companies","description":"Preview the account owner's saved local business-lead campaign. Returns public company website leads only, with size-band confidence and source receipts for manual review. This is first-party job-search research for the account owner, not applicant screening, not hiring decisions, not outreach, and not autonomous apply/send. Read-only by default; set persist_results true only for an intentional store update.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"campaign_name":{"type":"string"},"geography_anchor":{"type":"string"},"radius_minutes":{"type":"integer","minimum":1},"target_company_lanes":{"type":"array","items":{"type":"string"}},"target_role_lanes":{"type":"array","items":{"type":"string"}},"company_size_min":{"type":"integer","minimum":0},"company_size_max":{"type":"integer","minimum":1},"sources":{"type":"array","items":{"type":"string"}},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10},"allow_live_google_places":{"type":"boolean","default":false,"description":"Refresh public business website leads through the configured directory provider and distance check. Websites are required before downstream enrichment."},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Backward-compatible refresh flag; Firecrawl is only a fallback/search or downstream extraction provider, not the Stage 1 radar."},"persist_results":{"type":"boolean","default":false,"description":"When true, persist discovered company leads to the Talent Scout campaign store. Defaults false so hosted MCP discovery remains a read-only preview for human review."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"campaign_name":{"type":"string"},"geography_anchor":{"type":"string"},"radius_minutes":{"type":"integer","minimum":1},"target_company_lanes":{"type":"array","items":{"type":"string"}},"target_role_lanes":{"type":"array","items":{"type":"string"}},"company_size_min":{"type":"integer","minimum":0},"company_size_max":{"type":"integer","minimum":1},"sources":{"type":"array","items":{"type":"string"}},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10},"allow_live_google_places":{"type":"boolean","default":false,"description":"Refresh public business website leads through the configured directory provider and distance check. Websites are required before downstream enrichment."},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Backward-compatible refresh flag; Firecrawl is only a fallback/search or downstream extraction provider, not the Stage 1 radar."},"persist_results":{"type":"boolean","default":false,"description":"When true, persist discovered company leads to the Talent Scout campaign store. Defaults false so hosted MCP discovery remains a read-only preview for human review."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.discover_local_companies","generated_safe_alias":true}},{"name":"talent_scout_scan_company_for_roles","title":"Talent Scout Scan Company For Roles","description":"Preview a qualified company target for direct careers URLs and role-lane matches. Returns verified status receipts such as company_careers_open_role, needs_human_url_verification, needs_jd_hydration, or careers_page_no_relevant_role. Read-only by default: it returns exact role leads for human review, does not persist queue rows unless persist_results is explicitly true, and never invents jobs.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"company_domain":{"type":"string","description":"Backward-compatible alias for company_homepage_url; bare domains are normalized to https://<domain>."},"company_homepage_url":{"type":"string"},"careers_url":{"type":"string"},"source_url":{"type":"string"},"target_lanes":{"type":"array","items":{"type":"string"}},"target_role_lanes":{"type":"array","items":{"type":"string"}},"eligible_countries":{"type":"array","items":{"type":"string"},"default":["US"]},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Backward-compatible no-op for this scanner; official ATS/API scans are preferred when available."},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10},"persist_results":{"type":"boolean","default":false,"description":"When true, persist verified role leads and role-scan receipts to Talent Scout. Defaults false so hosted MCP scans remain read-only previews for human review."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"company_domain":{"type":"string","description":"Backward-compatible alias for company_homepage_url; bare domains are normalized to https://<domain>."},"company_homepage_url":{"type":"string"},"careers_url":{"type":"string"},"source_url":{"type":"string"},"target_lanes":{"type":"array","items":{"type":"string"}},"target_role_lanes":{"type":"array","items":{"type":"string"}},"eligible_countries":{"type":"array","items":{"type":"string"},"default":["US"]},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Backward-compatible no-op for this scanner; official ATS/API scans are preferred when available."},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10},"persist_results":{"type":"boolean","default":false,"description":"When true, persist verified role leads and role-scan receipts to Talent Scout. Defaults false so hosted MCP scans remain read-only previews for human review."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.scan_company_for_roles","generated_safe_alias":true}},{"name":"talent_scout_find_company_contacts","title":"Talent Scout Find Company Contacts","description":"Generate safe likely-contact labels and LinkedIn search queries for a qualified company. No LinkedIn scraping, no auto-connect, no auto-message; human review required.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"role_lane":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":5,"default":3}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"role_lane":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":5,"default":3}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.find_company_contacts","generated_safe_alias":true}},{"name":"talent_scout_enrich_contact_email","title":"Talent Scout Enrich Contact Email","description":"Prepare Hunter.io-style business email enrichment receipts for a qualified contact. Uses wallet SSoT status, verifies before recommending, never sends, and requires human approval.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"domain":{"type":"string"},"contact_name":{"type":"string"},"first_name":{"type":"string"},"last_name":{"type":"string"},"contact_label":{"type":"string"}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"domain":{"type":"string"},"contact_name":{"type":"string"},"first_name":{"type":"string"},"last_name":{"type":"string"},"contact_label":{"type":"string"}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.enrich_contact_email","generated_safe_alias":true}},{"name":"talent_scout_draft_direct_outreach","title":"Talent Scout Draft Direct Outreach","description":"Preview a first-party job-seeker outreach note for Robert to copy/edit manually. This read-only tool does not send, store, contact anyone, scrape LinkedIn, enrich private people data, create a draft record, or make hiring decisions.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"contact_name":{"type":"string"},"contact_label":{"type":"string"},"channel":{"type":"string","enum":["linkedin","email","phone","in_person"],"default":"linkedin"},"goal":{"type":"string","enum":["applied_follow_up","exploratory_intro","referral_path"],"default":"exploratory_intro"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"campaign_id":{"type":"string"},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"contact_name":{"type":"string"},"contact_label":{"type":"string"},"channel":{"type":"string","enum":["linkedin","email","phone","in_person"],"default":"linkedin"},"goal":{"type":"string","enum":["applied_follow_up","exploratory_intro","referral_path"],"default":"exploratory_intro"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Drafting Talent Scout outreach card","openai/toolInvocation/invoked":"Talent Scout outreach card ready","ui":{"resourceUri":"ui://stackfast/talent-scout/outreach-approval.html","visibility":["model","app"]},"openai/outputTemplate":"ui://stackfast/talent-scout/outreach-approval.html","openai/widgetAccessible":true,"canonical_tool_name":"stackfast.talent_scout.draft_direct_outreach","generated_safe_alias":true}},{"name":"talent_scout_record_direct_outreach","title":"Talent Scout Record Direct Outreach","description":"Record a human decision on a Talent Scout direct-outreach draft. This is a tracking/approval receipt only: it never sends email, LinkedIn messages, phone calls, applications, or outreach automatically. Use sent_text only to store the exact message the human already sent manually.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"outreach_id":{"type":"string"},"decision":{"type":"string","enum":["approved_for_manual_send","copied_for_manual_send","edit_requested","rejected","sent_manually_reported","follow_up_due","accepted","replied","no_action"],"description":"Human decision to record. No option sends anything automatically."},"notes":{"type":"string"},"edited_draft_text":{"type":"string"},"sent_text":{"type":"string","description":"Exact text the human actually sent manually. Talent Scout stores this receipt but never sends it."},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"contact_name":{"type":"string"},"contact_label":{"type":"string"},"channel":{"type":"string","enum":["linkedin","email","phone","in_person"]},"goal":{"type":"string","enum":["applied_follow_up","exploratory_intro","referral_path"]},"draft_text":{"type":"string"},"campaign_id":{"type":"string"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":["outreach_id","decision"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"tenant_database_type":{"type":"string","enum":["internal","sovereign_cloud","byoc"],"description":"Optional physical database routing mode. Omit for the default internal StackFast DB; use sovereign_cloud only with wallet-resolved tenant DB credentials."},"database_url_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso database URL. Never pass a raw URL or secret."},"auth_token_key":{"type":"string","description":"Optional wallet/env key name for the tenant Turso auth token. Never pass a raw token."},"sqlite_path":{"type":"string","description":"Optional local SQLite path for BYOC receipts; hosted cloud calls fail closed instead of reading local files."},"outreach_id":{"type":"string"},"decision":{"type":"string","enum":["approved_for_manual_send","copied_for_manual_send","edit_requested","rejected","sent_manually_reported","follow_up_due","accepted","replied","no_action"],"description":"Human decision to record. No option sends anything automatically."},"notes":{"type":"string"},"edited_draft_text":{"type":"string"},"sent_text":{"type":"string","description":"Exact text the human actually sent manually. Talent Scout stores this receipt but never sends it."},"company_target_id":{"type":"string"},"company_name":{"type":"string"},"contact_name":{"type":"string"},"contact_label":{"type":"string"},"channel":{"type":"string","enum":["linkedin","email","phone","in_person"]},"goal":{"type":"string","enum":["applied_follow_up","exploratory_intro","referral_path"]},"draft_text":{"type":"string"},"campaign_id":{"type":"string"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":["outreach_id","decision"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Recording outreach decision","openai/toolInvocation/invoked":"Outreach decision recorded","canonical_tool_name":"stackfast.talent_scout.record_direct_outreach","generated_safe_alias":true}},{"name":"talent_scout_record_application","title":"Talent Scout Record Application","description":"Record that the human manually submitted an application for a Talent Scout queue item. This updates Talent Scout lifecycle status, schedules follow-up tasks, and records a submission receipt only; it never applies, sends, clicks, or submits anything automatically.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string","description":"Talent Scout queue item that Robert manually submitted."},"submitted_at":{"type":"string","description":"Optional ISO timestamp for the manual submission. Defaults to now."},"actor_id":{"type":"string","description":"Optional actor label for the manual receipt."},"notes":{"type":"string","description":"Optional human note stored in the receipt response only."},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":[],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string","description":"Talent Scout queue item that Robert manually submitted."},"submitted_at":{"type":"string","description":"Optional ISO timestamp for the manual submission. Defaults to now."},"actor_id":{"type":"string","description":"Optional actor label for the manual receipt."},"notes":{"type":"string","description":"Optional human note stored in the receipt response only."},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":[],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Recording application status","openai/toolInvocation/invoked":"Application status recorded","canonical_tool_name":"stackfast.talent_scout.record_application","generated_safe_alias":true}},{"name":"talent_scout_import_byoc_delta","title":"Talent Scout Import BYOC Delta","description":"Import a guarded BYOC-local Talent Scout queue delta into the cloud queue. This is closed-world queue bookkeeping only: it never applies, sends, clicks, or submits anything automatically.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"source":{"type":"string"},"queue_sync_version":{"type":"string"},"direction":{"type":"string","enum":["byoc_to_cloud"]},"delta":{"type":"object","additionalProperties":true},"roles":{"type":"array","items":{"type":"object","additionalProperties":true}},"contacts":{"type":"array","items":{"type":"object","additionalProperties":true}},"packets":{"type":"array","items":{"type":"object","additionalProperties":true}},"idempotency_key":{"type":"string"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":[],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"source":{"type":"string"},"queue_sync_version":{"type":"string"},"direction":{"type":"string","enum":["byoc_to_cloud"]},"delta":{"type":"object","additionalProperties":true},"roles":{"type":"array","items":{"type":"object","additionalProperties":true}},"contacts":{"type":"array","items":{"type":"object","additionalProperties":true}},"packets":{"type":"array","items":{"type":"object","additionalProperties":true}},"idempotency_key":{"type":"string"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":[],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Importing BYOC queue delta","openai/toolInvocation/invoked":"BYOC queue delta imported","canonical_tool_name":"stackfast.talent_scout.import_byoc_delta","generated_safe_alias":true}},{"name":"talent_scout_pipeline_describe","title":"Talent Scout Pipeline Describe","description":"Return a compact Talent Scout readiness receipt: pipeline version, surface mode, callable tool groups, and manual-review safety flags. Read-only.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.pipeline_describe","generated_safe_alias":true}},{"name":"talent_scout_search_opportunities","title":"Talent Scout Search Opportunities","description":"Run fresh governed Talent Scout market discovery. If live discovery is unavailable or empty, returns fresh_discovery_count: 0 and does not substitute the existing review queue. Draft/review only; never applies or sends outreach.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"query":{"type":"string","description":"Plain-language opportunity search, framed as discovery rather than personal employment advice."},"candidate_profile":{"type":"object","description":"Safe profile facts, preferences, and positioning for fit scoring."},"lane":{"type":"string","enum":["J","C"],"default":"J"},"sources":{"type":"array","items":{"type":"string"}},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Run the approved live-discovery adapter. Costs are governed by the FireCrawl budget gate and kill switch."},"limit":{"type":"integer","minimum":1,"maximum":10,"default":5},"min_score":{"type":"integer","minimum":0,"maximum":100,"default":60},"include_tracked":{"type":"boolean","default":false,"description":"When true, include tracked-board comparison metadata. Search results still do not return the review queue."}},"required":["query"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"query":{"type":"string","description":"Plain-language opportunity search, framed as discovery rather than personal employment advice."},"candidate_profile":{"type":"object","description":"Safe profile facts, preferences, and positioning for fit scoring."},"lane":{"type":"string","enum":["J","C"],"default":"J"},"sources":{"type":"array","items":{"type":"string"}},"allow_live_firecrawl":{"type":"boolean","default":false,"description":"Run the approved live-discovery adapter. Costs are governed by the FireCrawl budget gate and kill switch."},"limit":{"type":"integer","minimum":1,"maximum":10,"default":5},"min_score":{"type":"integer","minimum":0,"maximum":100,"default":60},"include_tracked":{"type":"boolean","default":false,"description":"When true, include tracked-board comparison metadata. Search results still do not return the review queue."}},"required":["query"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.search_opportunities","generated_safe_alias":true}},{"name":"talent_scout_score_fit","title":"Talent Scout Score Fit","description":"Score fit between a candidate/operator profile and a target opportunity using the existing governed fit scorer. Returns transparent review data; no outbound action.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"profile":{"type":"object","description":"Optional candidate/operator profile. Defaults to Robert's safe Talent Scout profile for public connector smoke tests."},"candidate_profile":{"type":"object","description":"Alias for profile."},"target":{"type":"object","description":"Structured target opportunity."},"target_text":{"type":"string","description":"Plain-language target role text for lightweight connector smoke tests."},"min_score":{"type":"integer","minimum":0,"maximum":100,"default":0}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"profile":{"type":"object","description":"Optional candidate/operator profile. Defaults to Robert's safe Talent Scout profile for public connector smoke tests."},"candidate_profile":{"type":"object","description":"Alias for profile."},"target":{"type":"object","description":"Structured target opportunity."},"target_text":{"type":"string","description":"Plain-language target role text for lightweight connector smoke tests."},"min_score":{"type":"integer","minimum":0,"maximum":100,"default":0}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.score_fit","generated_safe_alias":true}},{"name":"talent_scout_create_packet","title":"Talent Scout Create Packet","description":"Create a draft-only application or opportunity packet from an existing Talent Scout queue item. Human approval is required before application or outreach.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string"},"output_kind":{"type":"string"},"opportunity_mode":{"type":"string"},"notes":{"type":"string"},"actor_id":{"type":"string"}},"required":["queue_item_id"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string"},"output_kind":{"type":"string"},"opportunity_mode":{"type":"string"},"notes":{"type":"string"},"actor_id":{"type":"string"}},"required":["queue_item_id"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.create_packet","generated_safe_alias":true}},{"name":"talent_scout_compose_application","title":"Talent Scout Compose Application","description":"Compose a fast draft-only job-seeker application artifact from a real Talent Scout queue item using JD evidence. The public connector is bounded for hosted MCP latency and fails closed on generic fallback text. Supports cover letter, form paste, application Q&A, telephone script, and authority analysis only; never sends or applies.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string"},"company":{"type":"string","description":"Optional lookup key. Use with title when queue_item_id is not known; exact normalized match is required."},"title":{"type":"string","description":"Optional lookup key. Use with company when queue_item_id is not known; exact normalized match is required."},"output_kind":{"type":"string","enum":["cover_letter","form_paste","application_qa","telephone_script","authority_analysis"],"default":"cover_letter"},"actor_id":{"type":"string"},"notes":{"type":"string"},"voice_anchor":{"type":"string"},"job_description_text":{"type":"string","description":"Manual recovery path only. Paste the full JD when the ATS blocks or JS-renders and Talent Scout returns needs_jd_hydration."},"user_supplied_jd_text":{"type":"string","description":"Alias for job_description_text; treated as authoritative user-supplied JD evidence after auto-hydration fails."},"baseline_resume_text":{"type":"string","description":"Optional private candidate evidence override. Used only to map JD requirements to proof points; never returned raw."},"applicant_profile_text":{"type":"string","description":"Optional private applicant evidence from a resume/profile setup interview. Used for proof mapping; never returned raw."},"linkedin_profile_text":{"type":"string","description":"Optional manual LinkedIn profile paste/export when LinkedIn blocks automated fetch. Used as applicant evidence; never returned raw."},"company_homepage_url":{"type":"string","description":"Official company homepage URL for company-context evidence and human review."},"careers_url":{"type":"string","description":"Official careers page URL when known. Helps distinguish a real posting from a generic board/root page."},"company_profile_text":{"type":"string","description":"Optional official company-site/about/product evidence. Used to target the draft to the company context; never returned raw."},"writer_provider":{"type":"string","enum":["openai","google_gemini","gemma","bounded_fallback"],"description":"Optional writer lane override. Defaults to OpenAI when a wallet key is available; bounded_fallback stays available as a fail-closed safety net."},"compare_providers":{"type":"boolean","default":false,"description":"When true, run bounded OpenAI/Gemma/Gemini comparison receipts without exposing alternate raw drafts."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string"},"company":{"type":"string","description":"Optional lookup key. Use with title when queue_item_id is not known; exact normalized match is required."},"title":{"type":"string","description":"Optional lookup key. Use with company when queue_item_id is not known; exact normalized match is required."},"output_kind":{"type":"string","enum":["cover_letter","form_paste","application_qa","telephone_script","authority_analysis"],"default":"cover_letter"},"actor_id":{"type":"string"},"notes":{"type":"string"},"voice_anchor":{"type":"string"},"job_description_text":{"type":"string","description":"Manual recovery path only. Paste the full JD when the ATS blocks or JS-renders and Talent Scout returns needs_jd_hydration."},"user_supplied_jd_text":{"type":"string","description":"Alias for job_description_text; treated as authoritative user-supplied JD evidence after auto-hydration fails."},"baseline_resume_text":{"type":"string","description":"Optional private candidate evidence override. Used only to map JD requirements to proof points; never returned raw."},"applicant_profile_text":{"type":"string","description":"Optional private applicant evidence from a resume/profile setup interview. Used for proof mapping; never returned raw."},"linkedin_profile_text":{"type":"string","description":"Optional manual LinkedIn profile paste/export when LinkedIn blocks automated fetch. Used as applicant evidence; never returned raw."},"company_homepage_url":{"type":"string","description":"Official company homepage URL for company-context evidence and human review."},"careers_url":{"type":"string","description":"Official careers page URL when known. Helps distinguish a real posting from a generic board/root page."},"company_profile_text":{"type":"string","description":"Optional official company-site/about/product evidence. Used to target the draft to the company context; never returned raw."},"writer_provider":{"type":"string","enum":["openai","google_gemini","gemma","bounded_fallback"],"description":"Optional writer lane override. Defaults to OpenAI when a wallet key is available; bounded_fallback stays available as a fail-closed safety net."},"compare_providers":{"type":"boolean","default":false,"description":"When true, run bounded OpenAI/Gemma/Gemini comparison receipts without exposing alternate raw drafts."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.compose_application","generated_safe_alias":true}},{"name":"talent_scout_draft_outreach","title":"Talent Scout Draft Outreach","description":"Draft human-reviewed outreach from safe pains and voice evidence. The tool never sends messages and fails closed on auto-send/apply requests.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"target_name":{"type":"string"},"pains":{"type":"array","items":{"type":"object"}},"voice_samples":{"type":"array","items":{"type":"string"}},"voice_profile":{"type":"string"},"artifact_type":{"type":"string","default":"outreach_draft"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":["target_name","pains"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"target_name":{"type":"string"},"pains":{"type":"array","items":{"type":"object"}},"voice_samples":{"type":"array","items":{"type":"string"}},"voice_profile":{"type":"string"},"artifact_type":{"type":"string","default":"outreach_draft"},"send":{"type":"boolean","default":false},"apply":{"type":"boolean","default":false}},"required":["target_name","pains"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Talent Scout","openai/toolInvocation/invoked":"Talent Scout complete","canonical_tool_name":"stackfast.talent_scout.draft_outreach","generated_safe_alias":true}},{"name":"talent_scout_review_queue","title":"Talent Scout Review Queue","description":"Read the tenant-scoped Talent Scout source-of-truth work queue for real synced board roles, draft opportunities, packets, follow-up items, and the daily reconciliation report. Mailbox reconciliation runs server-side via the StackFast service-account reader. Clients MUST NOT invoke their own Gmail/email connector; if mailbox_reconciliation_status is not ok, surface the red receipt and stop instead of substituting a client-side mailbox read. Surfaces unapplied/not-passed roles, direct-URL verification needs, waiting/follow-up buckets, preference filters, and today's slate. Robert's connector resolves to tenant robert and demo rows are quarantined away. Review only; no sends or applications.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"status":{"type":"string"},"run_id":{"type":"string"},"candidate_profile":{"type":"object","description":"Optional profile used to rescore stale zero-score queue items inside this tenant only."},"profile":{"type":"object","description":"Alias for candidate_profile when reviewing/rescoring stale queue items."},"include_archived":{"type":"boolean","default":false,"description":"Include archived, rejected, passed, stale, or already-applied rows. Defaults false for active work queues."},"include_applied":{"type":"boolean","default":false,"description":"Include already-applied rows. Defaults false unless explicitly reviewing follow-up history."},"include_items":{"type":"boolean","default":true,"description":"When false, return health/counts/timing only without loading queue item payloads. Use for fast connector smoke tests."},"include_detail":{"type":"boolean","default":false,"description":"When true, include full queue item payloads. Defaults false so hosted MCP review_queue stays small and fast."},"compact":{"type":"boolean","default":true,"description":"Return compact queue metadata and a daily_pipeline_summary instead of heavy control-tower sections."},"include_sync_delta":{"type":"boolean","default":false,"description":"When true, include a guarded scout.import_delta-compatible cloud-to-BYOC queue sync payload. Defaults false."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"status":{"type":"string"},"run_id":{"type":"string"},"candidate_profile":{"type":"object","description":"Optional profile used to rescore stale zero-score queue items inside this tenant only."},"profile":{"type":"object","description":"Alias for candidate_profile when reviewing/rescoring stale queue items."},"include_archived":{"type":"boolean","default":false,"description":"Include archived, rejected, passed, stale, or already-applied rows. Defaults false for active work queues."},"include_applied":{"type":"boolean","default":false,"description":"Include already-applied rows. Defaults false unless explicitly reviewing follow-up history."},"include_items":{"type":"boolean","default":true,"description":"When false, return health/counts/timing only without loading queue item payloads. Use for fast connector smoke tests."},"include_detail":{"type":"boolean","default":false,"description":"When true, include full queue item payloads. Defaults false so hosted MCP review_queue stays small and fast."},"compact":{"type":"boolean","default":true,"description":"Return compact queue metadata and a daily_pipeline_summary instead of heavy control-tower sections."},"include_sync_delta":{"type":"boolean","default":false,"description":"When true, include a guarded scout.import_delta-compatible cloud-to-BYOC queue sync payload. Defaults false."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Loading Talent Scout board","openai/toolInvocation/invoked":"Talent Scout board ready","ui":{"resourceUri":"ui://stackfast/talent-scout/pipeline-board.html","visibility":["model","app"]},"openai/outputTemplate":"ui://stackfast/talent-scout/pipeline-board.html","openai/widgetAccessible":true,"canonical_tool_name":"stackfast.talent_scout.review_queue","generated_safe_alias":true}},{"name":"talent_scout_daily_pipeline","title":"Talent Scout Daily Pipeline","description":"Return the closed-loop Talent Scout daily operating report from the shared tenant queue: applied pipeline, mailbox reconciliation status, follow-up due, open unapplied roles, availability checks, preference filters, stale/closed rows, new discoveries, bounded needs_role_hydration recovery, and a 3-5 role slate. Mailbox reconciliation runs server-side via the StackFast service-account reader. Clients MUST NOT invoke their own Gmail/email connector; if mailbox_reconciliation_status is not ok, surface the red receipt and stop instead of substituting a client-side mailbox read. Read-only control-tower view; no sends or applications.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"candidate_profile":{"type":"object","description":"Optional profile used to rescore stale zero-score queue items inside this tenant only."},"profile":{"type":"object","description":"Alias for candidate_profile when reviewing/rescoring stale queue items."},"include_archived":{"type":"boolean","default":false,"description":"Include archived, rejected, passed, stale, or already-applied rows. Defaults false for active work queues."},"include_applied":{"type":"boolean","default":true,"description":"Include already-applied rows in the applied/waiting pipeline buckets."},"compact":{"type":"boolean","default":true,"description":"Return counts, status buckets, mailbox status, and a bounded slate without full bucket payloads. Defaults true for hosted MCP latency."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":25},"slate_limit":{"type":"integer","minimum":1,"maximum":5,"default":5},"section_limit":{"type":"integer","minimum":1,"maximum":10,"default":5},"hydration_limit":{"type":"integer","minimum":1,"maximum":5,"default":3,"description":"Bounded live-hydration attempts for thin roles before compose. Reports attempts and remaining needs_role_hydration; never applies or sends."}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"candidate_profile":{"type":"object","description":"Optional profile used to rescore stale zero-score queue items inside this tenant only."},"profile":{"type":"object","description":"Alias for candidate_profile when reviewing/rescoring stale queue items."},"include_archived":{"type":"boolean","default":false,"description":"Include archived, rejected, passed, stale, or already-applied rows. Defaults false for active work queues."},"include_applied":{"type":"boolean","default":true,"description":"Include already-applied rows in the applied/waiting pipeline buckets."},"compact":{"type":"boolean","default":true,"description":"Return counts, status buckets, mailbox status, and a bounded slate without full bucket payloads. Defaults true for hosted MCP latency."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":25},"slate_limit":{"type":"integer","minimum":1,"maximum":5,"default":5},"section_limit":{"type":"integer","minimum":1,"maximum":10,"default":5},"hydration_limit":{"type":"integer","minimum":1,"maximum":5,"default":3,"description":"Bounded live-hydration attempts for thin roles before compose. Reports attempts and remaining needs_role_hydration; never applies or sends."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Reconciling Talent Scout pipeline","openai/toolInvocation/invoked":"Talent Scout pipeline reconciled","ui":{"resourceUri":"ui://stackfast/talent-scout/pipeline-board.html","visibility":["model","app"]},"openai/outputTemplate":"ui://stackfast/talent-scout/pipeline-board.html","openai/widgetAccessible":true,"canonical_tool_name":"stackfast.talent_scout.daily_pipeline","generated_safe_alias":true}},{"name":"talent_scout_mail_signals","title":"Talent Scout Mail Signals","description":"Read Talent Scout recruiting mail-signal status from the same server-side Gmail reconciliation path used by review_queue. This is the reliable StackFast replacement for local BYOC scout.mail_signals when the cleverq.net/local tunnel is down: it never calls a client Gmail connector, never returns raw mail bodies, and fails soft with mailbox_reconciliation_status instead of a bare 502.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Reading Talent Scout mail signals","openai/toolInvocation/invoked":"Talent Scout mail signals loaded","canonical_tool_name":"stackfast.talent_scout.mail_signals","generated_safe_alias":true}},{"name":"talent_scout_application_workup","title":"Talent Scout Application Workup","description":"Build the recruiting-desk workup for one Talent Scout queue item: availability status, fit risks, company pain map, Robert proof-point map, resume angle, application strategy, and a full draft-only application packet with resume edits, cover-letter outline, form-paste answer, compensation guidance, LinkedIn/follow-up drafts, founder-objection answers, first-30-days plan, hiring-manager/recruiter questions, claims/risk validation, manual submission receipt template, interview prep, and learning-loop signals. Draft/review only; no sends or applications.","inputSchema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string","description":"Preferred exact Talent Scout queue item id. If omitted, provide company and title."},"company":{"type":"string","description":"Company name lookup when queue_item_id is not known."},"title":{"type":"string","description":"Role title lookup when queue_item_id is not known."},"include_interview_prep":{"type":"boolean","default":true},"include_follow_up_plan":{"type":"boolean","default":true},"notes":{"type":"string"}},"additionalProperties":false},"input_schema":{"type":"object","properties":{"tenant_id":{"type":"string"},"queue_item_id":{"type":"string","description":"Preferred exact Talent Scout queue item id. If omitted, provide company and title."},"company":{"type":"string","description":"Company name lookup when queue_item_id is not known."},"title":{"type":"string","description":"Role title lookup when queue_item_id is not known."},"include_interview_prep":{"type":"boolean","default":true},"include_follow_up_plan":{"type":"boolean","default":true},"notes":{"type":"string"}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"public_tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"drafts_never_sends":{"type":"boolean"},"no_autonomous_outbound":{"type":"boolean"}},"required":["public_tool"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Building Talent Scout workup","openai/toolInvocation/invoked":"Talent Scout workup built","canonical_tool_name":"stackfast.talent_scout.application_workup","generated_safe_alias":true}},{"name":"voice_intelligence_run","title":"Voice Intelligence Run","description":"Run the voice intelligence orchestrator over any input: an uploaded or recorded audio/video file (base64 in file), a public audio or video URL (audio_or_video_url), a PDF (pdf), an image (image), or raw text/notes (text and/or notes). Provide exactly ONE input carrier — audio_or_video_url, file, pdf, image, or text/notes. The input is normalized to a transcript via the existing transcription rails, then three composed outputs are returned: a condensed summary (with action items, decisions, and a next step), a full-verbatim polished actual script (filler removed, wording preserved, never paraphrased; call sources return a masked summary instead), and an authority report (content flywheel plan, plus an owner-facing business report when business context is provided). All outward outputs are mask-gated.","inputSchema":{"type":"object","description":"Exactly one input carrier must be provided: audio_or_video_url, file, pdf, image, or text/notes.","properties":{"audio_or_video_url":{"type":"string","description":"Public audio or video URL to transcribe (YouTube caption rail or upload transcription). One of the five input carriers."},"file":{"type":"object","properties":{"file_name":{"type":"string","description":"Original file name, used for extension-based routing when present."},"content_base64":{"type":"string","description":"Base64-encoded file bytes. Never pass a URL or local path here."},"mime_type":{"type":"string","description":"MIME type of the payload when known."}},"required":["content_base64"],"additionalProperties":false,"description":"Uploaded or recorded audio/video (or text-carrying) file payload, base64-encoded. One of the five input carriers."},"pdf":{"type":"object","properties":{"file_name":{"type":"string","description":"Original file name, used for extension-based routing when present."},"content_base64":{"type":"string","description":"Base64-encoded file bytes. Never pass a URL or local path here."},"mime_type":{"type":"string","description":"MIME type of the payload when known."}},"required":["content_base64"],"additionalProperties":false,"description":"PDF document payload, base64-encoded. One of the five input carriers."},"image":{"type":"object","properties":{"file_name":{"type":"string","description":"Original file name, used for extension-based routing when present."},"content_base64":{"type":"string","description":"Base64-encoded file bytes. Never pass a URL or local path here."},"mime_type":{"type":"string","description":"MIME type of the payload when known."}},"required":["content_base64"],"additionalProperties":false,"description":"Image payload, base64-encoded. One of the five input carriers."},"text":{"type":"string","description":"Raw text input (transcription skipped). One of the five input carriers."},"notes":{"type":"string","description":"Alias for text input; merged with text when both are present. Counts as the text carrier."},"source":{"type":"string","enum":["upload","recording","call","document","text"],"description":"Optional input provenance. 'call' sources return a masked-summary actual script instead of full verbatim."},"title":{"type":"string","description":"Optional title for the source material."},"speaker":{"type":"string","description":"Optional primary speaker name."},"business":{"type":"object","properties":{"business_name":{"type":"string"}},"required":["business_name"],"additionalProperties":true,"description":"Optional GrowthOS business context. Providing business_name enables the owner-facing business report inside the authority report."},"identity":{"type":"object","properties":{"sender_name":{"type":"string"},"geography":{"type":"string"}},"required":["sender_name","geography"],"additionalProperties":false,"description":"Optional local identity used by the owner-facing business report."}},"additionalProperties":false},"input_schema":{"type":"object","description":"Exactly one input carrier must be provided: audio_or_video_url, file, pdf, image, or text/notes.","properties":{"audio_or_video_url":{"type":"string","description":"Public audio or video URL to transcribe (YouTube caption rail or upload transcription). One of the five input carriers."},"file":{"type":"object","properties":{"file_name":{"type":"string","description":"Original file name, used for extension-based routing when present."},"content_base64":{"type":"string","description":"Base64-encoded file bytes. Never pass a URL or local path here."},"mime_type":{"type":"string","description":"MIME type of the payload when known."}},"required":["content_base64"],"additionalProperties":false,"description":"Uploaded or recorded audio/video (or text-carrying) file payload, base64-encoded. One of the five input carriers."},"pdf":{"type":"object","properties":{"file_name":{"type":"string","description":"Original file name, used for extension-based routing when present."},"content_base64":{"type":"string","description":"Base64-encoded file bytes. Never pass a URL or local path here."},"mime_type":{"type":"string","description":"MIME type of the payload when known."}},"required":["content_base64"],"additionalProperties":false,"description":"PDF document payload, base64-encoded. One of the five input carriers."},"image":{"type":"object","properties":{"file_name":{"type":"string","description":"Original file name, used for extension-based routing when present."},"content_base64":{"type":"string","description":"Base64-encoded file bytes. Never pass a URL or local path here."},"mime_type":{"type":"string","description":"MIME type of the payload when known."}},"required":["content_base64"],"additionalProperties":false,"description":"Image payload, base64-encoded. One of the five input carriers."},"text":{"type":"string","description":"Raw text input (transcription skipped). One of the five input carriers."},"notes":{"type":"string","description":"Alias for text input; merged with text when both are present. Counts as the text carrier."},"source":{"type":"string","enum":["upload","recording","call","document","text"],"description":"Optional input provenance. 'call' sources return a masked-summary actual script instead of full verbatim."},"title":{"type":"string","description":"Optional title for the source material."},"speaker":{"type":"string","description":"Optional primary speaker name."},"business":{"type":"object","properties":{"business_name":{"type":"string"}},"required":["business_name"],"additionalProperties":true,"description":"Optional GrowthOS business context. Providing business_name enables the owner-facing business report inside the authority report."},"identity":{"type":"object","properties":{"sender_name":{"type":"string"},"geography":{"type":"string"}},"required":["sender_name","geography"],"additionalProperties":false,"description":"Optional local identity used by the owner-facing business report."}},"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true,"idempotentHint":false},"outputSchema":{"type":"object","properties":{"schema_version":{"type":"string"},"input_kind":{"type":"string","enum":["audio_video_url","file_upload","pdf","image","text"]},"transcript":{"type":"string"},"transcript_source":{"type":"string","enum":["youtube_captions","whisper_upload","document_extract","gemini_document","text_passthrough"]},"summary":{"type":"object","properties":{"summary":{"type":"string"},"action_items":{"type":"array","items":{"type":"string"}},"decisions":{"type":"array","items":{"type":"string"}},"next_step":{"type":"string"}},"required":["summary","action_items","decisions","next_step"],"additionalProperties":false},"actual_script":{"type":"object","properties":{"mode":{"type":"string","enum":["full_verbatim","masked_summary"]},"text":{"type":"string"},"note":{"type":"string"}},"required":["mode","text","note"],"additionalProperties":false},"authority_report":{"type":"object","properties":{"flywheel_plan":{"type":"object","additionalProperties":true},"owner_facing_report":{"type":["object","null"],"additionalProperties":true}},"required":["flywheel_plan"],"additionalProperties":true},"llm":{"type":["object","null"],"additionalProperties":true},"receipts":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["schema_version","input_kind","transcript","transcript_source","summary","actual_script","authority_report","receipts"],"additionalProperties":false},"output_schema":{"type":"object","properties":{"schema_version":{"type":"string"},"input_kind":{"type":"string","enum":["audio_video_url","file_upload","pdf","image","text"]},"transcript":{"type":"string"},"transcript_source":{"type":"string","enum":["youtube_captions","whisper_upload","document_extract","gemini_document","text_passthrough"]},"summary":{"type":"object","properties":{"summary":{"type":"string"},"action_items":{"type":"array","items":{"type":"string"}},"decisions":{"type":"array","items":{"type":"string"}},"next_step":{"type":"string"}},"required":["summary","action_items","decisions","next_step"],"additionalProperties":false},"actual_script":{"type":"object","properties":{"mode":{"type":"string","enum":["full_verbatim","masked_summary"]},"text":{"type":"string"},"note":{"type":"string"}},"required":["mode","text","note"],"additionalProperties":false},"authority_report":{"type":"object","properties":{"flywheel_plan":{"type":"object","additionalProperties":true},"owner_facing_report":{"type":["object","null"],"additionalProperties":true}},"required":["flywheel_plan"],"additionalProperties":true},"llm":{"type":["object","null"],"additionalProperties":true},"receipts":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["schema_version","input_kind","transcript","transcript_source","summary","actual_script","authority_report","receipts"],"additionalProperties":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Running Voice Intelligence","openai/toolInvocation/invoked":"Voice Intelligence complete","canonical_tool_name":"stackfast.voice_intelligence.run","generated_safe_alias":true}},{"name":"search","title":"Search StackFast Brain","description":"Search StackFast Brain knowledge through the AI6 MCP reader plane; use fetch with a returned result id for full text.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Natural language search query."}},"required":["query"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"query":{"type":"string","description":"Natural language search query."}},"required":["query"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"results":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"url":{"type":"string"}},"required":["id","title","url"],"additionalProperties":true}}},"required":["results"],"additionalProperties":false},"output_schema":{"type":"object","properties":{"results":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"url":{"type":"string"}},"required":["id","title","url"],"additionalProperties":true}}},"required":["results"],"additionalProperties":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Searching StackFast Brain","openai/toolInvocation/invoked":"Search complete"}},{"name":"fetch","title":"Fetch StackFast Brain Result","description":"Fetch a StackFast Brain search result by id through the AI6 MCP reader plane.","inputSchema":{"type":"object","properties":{"id":{"type":"string","description":"Result id returned by the search tool, for example brain:12022."}},"required":["id"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"id":{"type":"string","description":"Result id returned by the search tool, for example brain:12022."}},"required":["id"],"additionalProperties":false},"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"text":{"type":"string"},"url":{"type":"string"},"metadata":{"type":"object","additionalProperties":true}},"required":["id","title","text","url"],"additionalProperties":false},"output_schema":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"text":{"type":"string"},"url":{"type":"string"},"metadata":{"type":"object","additionalProperties":true}},"required":["id","title","text","url"],"additionalProperties":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["read:stackfast","offline_access"]}],"openai/toolInvocation/invoking":"Fetching StackFast Brain result","openai/toolInvocation/invoked":"Result fetched"}},{"name":"boot_status","title":"Boot Status","description":"Read-only StackFast connector health/status check. Does not expose secrets.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"input_schema":{"type":"object","properties":{},"additionalProperties":false},"securitySchemes":[{"type":"noauth"}],"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false,"idempotentHint":true},"outputSchema":{"type":"object","properties":{"ok":{"type":"boolean"},"service":{"type":"string"},"schema_version":{"type":"string"},"generated_at":{"type":"string"},"canonical_url":{"type":"string"},"auth":{"type":"object","properties":{"status":{"type":"string"},"consumer":{"type":"string"},"access_tier":{"type":"string"}},"additionalProperties":true},"tools":{"type":"object","properties":{"count":{"type":"integer"},"names":{"type":"array","items":{"type":"string"}},"source_compliance":{"type":"string"}},"additionalProperties":true}},"required":["ok","service","schema_version","generated_at","canonical_url","auth","tools"],"additionalProperties":true},"output_schema":{"type":"object","properties":{"ok":{"type":"boolean"},"service":{"type":"string"},"schema_version":{"type":"string"},"generated_at":{"type":"string"},"canonical_url":{"type":"string"},"auth":{"type":"object","properties":{"status":{"type":"string"},"consumer":{"type":"string"},"access_tier":{"type":"string"}},"additionalProperties":true},"tools":{"type":"object","properties":{"count":{"type":"integer"},"names":{"type":"array","items":{"type":"string"}},"source_compliance":{"type":"string"}},"additionalProperties":true}},"required":["ok","service","schema_version","generated_at","canonical_url","auth","tools"],"additionalProperties":true},"_meta":{"securitySchemes":[{"type":"noauth"}],"openai/toolInvocation/invoking":"Checking status","openai/toolInvocation/invoked":"Status ready"}}],"vendor":{"name":"StackFast Technologies Inc.","url":"https://stackfast.ai"}}