{"name":"receives-support-email-checks-1-919313","description":"Receives support email, checks Stripe refund eligibility with caller-provided credentials, drafts the customer reply, requires explicit approval before executing refunds, and posts redacted audit summaries to Slack.","version":"0.1.0","skills":[{"id":"process_support_email","name":"process_support_email","description":"Handle one inbound support email: dedupe, check Stripe refund eligibility, draft reply, and post a Slack audit summary without executing a refund.","tags":[],"scopes":[],"stream":false,"policy":{"timeout_seconds":120.0,"idempotent":true,"max_retries":0,"cost_class":"external-api","allow_scope_expansion":false,"grant_mode":null,"grant_allow_patterns":[],"grant_deny_patterns":[],"grant_outputs_prefix":null,"grant_write_prefixes":[],"grant_ttl_seconds":null,"grant_run_timeout_seconds":null,"grant_approval_timeout_seconds":null,"grant_scope_approval_timeout_seconds":null},"input_schema":{"type":"object","properties":{"sender_email":{"type":"string"},"subject":{"type":"string"},"body":{"type":"string"},"message_id":{"type":"string"},"stripe_payment_intent_id":{"type":"string"},"requested_refund_amount_cents":{"type":"integer"},"currency":{"type":"string"},"customer_name":{"type":"string"}},"required":["sender_email","subject","body","message_id","stripe_payment_intent_id","requested_refund_amount_cents"],"additionalProperties":false},"output_schema":{"additionalProperties":true,"type":"object"}},{"id":"execute_approved_refund","name":"execute_approved_refund","description":"Execute a previously proposed Stripe refund only when the caller supplies explicit approval bound to the exact action digest.","tags":[],"scopes":[],"stream":false,"policy":{"timeout_seconds":120.0,"idempotent":true,"max_retries":0,"cost_class":"payment-mutation","allow_scope_expansion":false,"grant_mode":null,"grant_allow_patterns":[],"grant_deny_patterns":[],"grant_outputs_prefix":null,"grant_write_prefixes":[],"grant_ttl_seconds":null,"grant_run_timeout_seconds":null,"grant_approval_timeout_seconds":null,"grant_scope_approval_timeout_seconds":null},"input_schema":{"type":"object","properties":{"action_digest":{"type":"string"},"approval_token":{"type":"string"},"stripe_payment_intent_id":{"type":"string"},"amount_cents":{"type":"integer"},"currency":{"type":"string"},"customer_email":{"type":"string"},"reason":{"type":"string"}},"required":["action_digest","approval_token","stripe_payment_intent_id","amount_cents"],"additionalProperties":false},"output_schema":{"additionalProperties":true,"type":"object"}},{"id":"receive_support_email","name":"receive_support_email","description":"Inbound email handler for the agent mailbox. It deduplicates and returns a draft reply; refund execution still requires a separate explicit approval call.","tags":["a2a:email-handler"],"scopes":[],"stream":false,"policy":{"timeout_seconds":120.0,"idempotent":true,"max_retries":0,"cost_class":"external-api","allow_scope_expansion":false,"grant_mode":null,"grant_allow_patterns":[],"grant_deny_patterns":[],"grant_outputs_prefix":null,"grant_write_prefixes":[],"grant_ttl_seconds":null,"grant_run_timeout_seconds":null,"grant_approval_timeout_seconds":null,"grant_scope_approval_timeout_seconds":null},"input_schema":{"type":"object","properties":{"email":{"type":"object","additionalProperties":true}},"required":["email"],"additionalProperties":false},"output_schema":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}]}}],"capabilities":{"a2a_pack":{"package":"a2a-pack","version":"0.1.115"},"mcp":{"standard":{"path":"/mcp","intended_for":"code_sdk_clients"},"connector":{"path":"/connector-mcp","intended_for":["chatgpt","claude","hosted_connectors"],"supports_async_jobs":true,"supports_structured_interrupts":true,"poll_tool":"job_result","resume_tool":"submit_interaction","instructions":"Use this URL for hosted connector UIs. Use /mcp for normal code or SDK MCP clients."}},"ui":{"url":"https://receives-support-email-checks-1-919313.a2acloud.io/app","type":"static-spa","framework":null,"entry":"/app/index.html","config":"https://receives-support-email-checks-1-919313.a2acloud.io/app/config.json","client":"https://receives-support-email-checks-1-919313.a2acloud.io/app/a2a-client.js","requiresAuth":false,"auth":{"mode":"inherit","flow":"public","sessionTransport":"cookie","sessionCookieName":"__Host-a2a_agent_session","sessionUrl":"https://receives-support-email-checks-1-919313.a2acloud.io/auth/session","loginUrl":"https://app.a2acloud.io","authorizeUrl":"https://app.a2acloud.io/v1/auth/agent-session/authorize?agent=receives-support-email-checks-1-919313","callbackUrl":"https://receives-support-email-checks-1-919313.a2acloud.io/auth/callback","requiresSession":false}}},"input_modes":["application/json"],"output_modes":["application/json"],"required_secrets":[],"required_env":[],"consumer_setup":{"fields":[{"name":"STRIPE_SECRET_KEY","kind":"secret","label":"Stripe secret key","description":"Caller-provided Stripe API key used only server-side to inspect and create refunds.","required":true,"input_type":"password","options":[]},{"name":"SLACK_BOT_TOKEN","kind":"secret","label":"Slack bot token","description":"Caller-provided Slack token used only server-side for audit summaries.","required":true,"input_type":"password","options":[]},{"name":"SLACK_CHANNEL_ID","kind":"config","label":"Slack audit channel ID","description":"Slack channel where refund audit summaries should be posted.","required":true,"input_type":"text","options":[]},{"name":"STRIPE_BASE_URL","kind":"config","label":"Stripe API base URL","description":"Optional test override. Defaults to https://api.stripe.com.","required":false,"input_type":"url","options":[]},{"name":"SLACK_BASE_URL","kind":"config","label":"Slack API base URL","description":"Optional test override. Defaults to https://slack.com/api.","required":false,"input_type":"url","options":[]}]},"runtime":{"lifecycle":"ephemeral","availability":"on_demand","state":"none","sandbox":"microsandbox","resources":{"cpu":"500m","memory":"512Mi","gpu":0,"max_runtime_seconds":300},"concurrency":1,"egress":{"allow_hosts":["api.stripe.com","slack.com"],"allow_internal_services":[],"deny_internet_by_default":true},"tools_used":["email","stripe","slack","httpx"],"llm_provisioning":"platform","account_access":{"required":false,"platform_skill_calls":0,"after_trial":"byok"},"pricing":{"price_per_call_usd":0.0,"caller_pays_llm":false,"notes":"Deterministic support refund workflow. Provider API usage is paid through caller-provided Stripe and Slack credentials."},"wants_cp_jwt":false,"platform_resources":{"memory":null,"databases":[],"mailbox":null},"endpoints":[],"apt_packages":[]},"state_schema":null,"workspace_access":{"enabled":true,"max_files":8,"allowed_modes":["read_only","read_write_overlay"],"require_reason":false,"deny_patterns":[],"require_human_approval":false,"max_total_size_bytes":104857600},"mcp_endpoint":"/mcp","connector_mcp_endpoint":"/connector-mcp","mcp_endpoints":{"standard":{"path":"/mcp","intended_for":"code_sdk_clients"},"connector":{"path":"/connector-mcp","intended_for":["chatgpt","claude","hosted_connectors"],"supports_async_jobs":true,"supports_structured_interrupts":true,"poll_tool":"job_result","resume_tool":"submit_interaction","instructions":"Use this URL for hosted connector UIs. Use /mcp for normal code or SDK MCP clients."}},"ui":{"url":"https://receives-support-email-checks-1-919313.a2acloud.io/app","type":"static-spa","framework":null,"entry":"/app/index.html","config":"https://receives-support-email-checks-1-919313.a2acloud.io/app/config.json","client":"https://receives-support-email-checks-1-919313.a2acloud.io/app/a2a-client.js","requiresAuth":false,"auth":{"mode":"inherit","flow":"public","sessionTransport":"cookie","sessionCookieName":"__Host-a2a_agent_session","sessionUrl":"https://receives-support-email-checks-1-919313.a2acloud.io/auth/session","loginUrl":"https://app.a2acloud.io","authorizeUrl":"https://app.a2acloud.io/v1/auth/agent-session/authorize?agent=receives-support-email-checks-1-919313","callbackUrl":"https://receives-support-email-checks-1-919313.a2acloud.io/auth/callback","requiresSession":false}}}