Fine Structure
Qué hace este MCP
Builds and hosts full-stack applications from prompts and supports agent communication through WhatsApp and email.
Herramientas
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'domain'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'domain': {'type': 'string', 'description': 'Custom domain to connect, for example example.com or app.example.com'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'change_set_id', 'path'], 'properties': {'path': {'type': 'string', 'description': 'Virtual file path'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'content': {'type': 'string', 'default': '', 'description': 'Complete file contents for upsert'}, 'file_type': {'type': 'string', 'default': '', 'description': 'Optional file type override'}, 'operation': {'enum': ['upsert', 'delete'], 'type': 'string', 'default': 'upsert'}, 'change_set_id': {'type': 'string', 'description': 'Change set ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'client_email'], 'properties': {'note': {'type': 'string', 'default': '', 'description': 'Optional internal note'}, 'app_id': {'type': 'string', 'description': 'Existing app ID owned by the agent'}, 'client_email': {'type': 'string', 'description': 'Client email allowed to claim ownership'}, 'client_full_name': {'type': 'string', 'default': '', 'description': 'Optional client display name'}, 'claim_expires_in_days': {'type': 'integer', 'default': 14, 'description': 'Claim link lifetime, 1-90 days'}, 'keep_agent_collaborator': {'type': 'boolean', 'default': True, 'description': 'Invite agent as editor after claim'}}}
Esquema de entrada
{'type': 'object', 'required': ['client_email'], 'properties': {'note': {'type': 'string', 'default': '', 'description': 'Optional internal note for the agency'}, 'client_email': {'type': 'string', 'description': 'Client email that will be allowed to claim projects'}, 'client_full_name': {'type': 'string', 'default': '', 'description': 'Optional client display name'}}}
Esquema de entrada
{'type': 'object', 'required': ['client_email', 'name', 'prompt'], 'properties': {'name': {'type': 'string', 'description': 'Name for the app (1-100 chars)'}, 'note': {'type': 'string', 'default': '', 'description': 'Optional internal client/project note'}, 'prompt': {'type': 'string', 'description': 'Detailed description of the app to build'}, 'description': {'type': 'string', 'default': '', 'description': 'Optional short app description'}, 'client_email': {'type': 'string', 'description': 'Client email allowed to claim ownership'}, 'client_full_name': {'type': 'string', 'default': '', 'description': 'Optional client display name'}, 'claim_expires_in_days': {'type': 'integer', 'default': 14, 'description': 'Claim link lifetime, 1-90 days'}, 'keep_agent_collaborator': {'type': 'boolean', 'default': True, 'description': 'After claim, invite the agent back as an editor collaborator'}}}
Esquema de entrada
{'type': 'object', 'required': ['handoff_id'], 'properties': {'handoff_id': {'type': 'string', 'description': 'Handoff ID returned by agency_create_claim_link or agency_create_client_app'}}}
Esquema de entrada
{'type': 'object', 'properties': {'include_handoffs': {'type': 'boolean', 'default': True, 'description': 'Include claim links status without raw tokens'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'change_set_id'], 'properties': {'force': {'type': 'boolean', 'default': False, 'description': 'Apply even if validation has errors'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'change_set_id': {'type': 'string', 'description': 'Change set ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['agent_id', 'phone_number_id'], 'properties': {'agent_id': {'type': 'string', 'description': 'The agent that should answer on this number.'}, 'phone_number_id': {'type': 'string', 'description': 'phone_number_id from get_agent_whatsapp claimable_numbers.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'domain': {'type': 'string', 'description': "Optional configured custom domain. If omitted, uses the app's current custom domain."}}}
Esquema de entrada
{'type': 'object', 'required': ['subdomain'], 'properties': {'app_id': {'type': 'string', 'description': "Optional ID of an app you own. When supplied, this app's own subdomain reports as 'current' instead of 'taken'."}, 'subdomain': {'type': 'string', 'description': 'Subdomain label to check'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'snapshot_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'snapshot_id': {'type': 'string', 'description': 'Saved Version snapshot ID'}, 'max_diff_chars': {'type': 'integer', 'default': 12000}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'base_snapshot_id', 'target_snapshot_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'max_diff_chars': {'type': 'integer', 'default': 12000}, 'base_snapshot_id': {'type': 'string', 'description': 'Older/base snapshot ID'}, 'target_snapshot_id': {'type': 'string', 'description': 'Newer/target snapshot ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'primary_domain'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'force_https': {'type': 'boolean', 'default': True, 'description': 'Redirect HTTP custom-domain requests to HTTPS'}, 'redirect_www': {'type': 'boolean', 'default': True, 'description': 'Redirect the www/root counterpart to primary_domain'}, 'primary_domain': {'type': 'string', 'description': 'Canonical primary domain, for example example.com'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'provider', 'config'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'config': {'type': 'object', 'description': 'Safe metadata only, such as workspace/team/name/email'}, 'provider': {'type': 'string', 'description': 'Integration provider ID'}, 'is_active': {'type': 'boolean', 'default': True, 'description': 'Set false to disconnect this integration metadata'}}}
Esquema de entrada
{'type': 'object', 'required': ['phone', 'code'], 'properties': {'code': {'type': 'string', 'description': 'The 6-digit code from the WhatsApp message.'}, 'phone': {'type': 'string', 'description': 'The same phone number the code was sent to.'}, 'region': {'type': 'string', 'description': 'Optional ISO region hint, matching the one used when sending.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'name', 'page_name', 'variants'], 'properties': {'name': {'type': 'string', 'description': 'Experiment name'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'variants': {'type': 'array', 'items': {'type': 'object', 'required': ['page_name', 'traffic_percent'], 'properties': {'page_name': {'type': 'string', 'description': 'Existing app page name or path'}, 'traffic_percent': {'type': 'integer', 'description': 'Traffic percentage for this variant'}}}, 'description': 'At least two variants. Traffic must total 100.'}, 'is_active': {'type': 'boolean', 'default': True, 'description': 'Whether to activate the test immediately'}, 'page_name': {'type': 'string', 'description': 'Base route page that triggers the experiment'}, 'goal_event_type': {'type': 'string', 'description': 'Optional conversion goal type: entity_create, any, form_submit'}, 'goal_event_filter': {'type': 'object', 'description': "Optional goal filter, for example {'entity_name': 'Lead'}"}}}
Esquema de entrada
{'type': 'object', 'required': ['role', 'description'], 'properties': {'name': {'type': 'string', 'description': "Agent display name (e.g. 'Lead Follow-up'). Auto-derived from role when omitted."}, 'role': {'type': 'string', 'description': "Short role label (e.g. 'sales assistant')"}, 'app_id': {'type': 'string', 'description': 'Optional app to attach the agent to; account-level when omitted'}, 'persona': {'type': 'string', 'description': 'Optional working style and tone instructions for the agent'}, 'description': {'type': 'string', 'description': 'What this agent is responsible for, one or two sentences'}}}
Esquema de entrada
{'type': 'object', 'required': ['name', 'prompt'], 'properties': {'name': {'type': 'string', 'description': 'Name for the app (1-100 chars)'}, 'prompt': {'type': 'string', 'description': 'Detailed description of the app to build'}, 'description': {'type': 'string', 'default': '', 'description': 'Optional short description'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'label': {'type': 'string', 'description': 'Optional short label'}, 'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity', 'records'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'reason': {'type': 'string', 'default': '', 'description': 'Why these records should be created'}, 'records': {'type': 'array', 'items': {'type': 'object'}, 'description': 'Records to create'}, 'expected_count': {'type': 'integer', 'description': 'Optional safety check; the write aborts if the record count differs'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity', 'schema'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'schema': {'type': 'object', 'description': 'JSON schema object'}, 'indexes': {'type': 'array', 'items': {'type': 'object'}, 'default': []}, 'metadata': {'type': 'object', 'default': {}}, 'overwrite': {'type': 'boolean', 'default': False}, 'relationships': {'type': 'array', 'items': {'type': 'object'}, 'default': []}}}
Esquema de entrada
{'type': 'object', 'required': ['type', 'title', 'body'], 'properties': {'body': {'type': 'string', 'description': 'Free text, markdown allowed: context, impact, what you tried'}, 'type': {'enum': ['bug', 'feature', 'question'], 'type': 'string'}, 'title': {'type': 'string', 'description': 'One line, what is wrong or missing'}, 'app_id': {'type': 'string', 'description': 'Optional: the app where it showed up'}, 'expected': {'type': 'string', 'description': 'What should have happened'}, 'severity': {'enum': ['blocker', 'high', 'normal', 'low'], 'type': 'string', 'default': 'normal'}, 'acceptance': {'type': 'string', 'description': 'How the team will know it is closed'}, 'attachments': {'type': 'array', 'items': {'type': 'string'}, 'default': [], 'description': 'Optional app file paths or log ids'}, 'reproduction': {'type': 'string', 'description': 'Steps, invoke_function calls or curl commands that reproduce it'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'test_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'test_id': {'type': 'string', 'description': 'A/B test ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'reason': {'type': 'string', 'default': '', 'description': 'Why these records should be deleted'}, 'filters': {'oneOf': [{'type': 'object'}, {'type': 'array', 'items': {'type': 'object'}}], 'description': 'One exact-match selector or a list of exact-match selectors'}, 'record_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Exact record IDs to delete'}, 'expected_count': {'type': 'integer', 'description': 'Required match count safety check, when known'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'key'], 'properties': {'key': {'type': 'string', 'description': 'Secret key name'}, 'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['phone_number_id'], 'properties': {'phone_number_id': {'type': 'string', 'description': 'The number to disconnect, from get_agent_whatsapp.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'change_set_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'change_set_id': {'type': 'string', 'description': 'Change set ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'test_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'test_id': {'type': 'string', 'description': 'A/B test ID'}}}
Esquema de entrada
{'type': 'object', 'properties': {'agent_id': {'type': 'string', 'description': "Optional: report only this agent's WhatsApp state."}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'days': {'type': 'integer', 'default': 7, 'description': 'Window in days (1-90, default 7)'}, 'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'limit': {'type': 'integer', 'default': 100}, 'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'audit_limit': {'type': 'integer', 'default': 50}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'domain': {'type': 'string', 'description': "Optional configured custom domain. If omitted, uses the app's current custom domain."}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'domain': {'type': 'string', 'description': "Optional configured custom domain. If omitted, uses the app's current custom domain."}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'description': 'Max errors to return (default 20)'}, 'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['job_id'], 'properties': {'job_id': {'type': 'string', 'description': 'The job_id returned by create_app or update_app'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'properties': {'app_id': {'type': 'string', 'description': 'Optional app ID. If provided, the guide includes a safe app context summary.'}, 'sections': {'type': 'array', 'items': {'enum': ['ab_testing', 'agency', 'agents', 'app_code', 'checklists', 'data_model', 'direct_file_edit', 'domains', 'file_model', 'functions', 'generation', 'media', 'overview', 'platform_requests', 'publishing', 'saas', 'safety', 'sdk', 'secrets_integrations', 'security', 'validation'], 'type': 'string'}, 'description': 'Optional subset of guide sections to return.'}, 'task_type': {'type': 'string', 'description': 'Optional task hint, for example edit_app, direct_file_edit, seed_data, or publish_app.'}}}
Esquema de entrada
{'type': 'object', 'required': ['request_id'], 'properties': {'since': {'type': 'string', 'description': 'Optional ISO timestamp: only events after it'}, 'request_id': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'properties': {'goal': {'type': 'string', 'default': '', 'description': "Optional short description of the user's goal."}, 'app_id': {'type': 'string', 'description': 'Optional app ID. If provided, the workflow includes a safe app context summary.'}, 'task_type': {'enum': ['ab_test', 'agency_client_app', 'backend_function', 'create_app', 'direct_file_edit', 'domain_setup', 'edit_app', 'fix_runtime_error', 'generate_media', 'inspect_preview', 'publish_app', 'saas_setup', 'schema_change', 'secrets_integration', 'security_setup', 'seed_data', 'unknown', 'version_restore'], 'type': 'string', 'default': 'unknown', 'description': 'The task type to plan.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'route': {'type': 'string', 'default': '', 'description': 'Optional route to inspect'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'auth_as': {'type': 'string', 'default': '', 'description': 'Optional auth simulation: anonymous'}, 'auth_as_role': {'type': 'string', 'default': '', 'description': 'Optional app role simulation, e.g. staff/admin/customer'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'email', 'role', 'password'], 'properties': {'role': {'type': 'string', 'description': 'App role, e.g. admin/staff/customer'}, 'email': {'type': 'string', 'description': 'Member email'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'password': {'type': 'string', 'description': 'The password this member signs in with, chosen by the account owner. Required, and never echoed back in the result.'}, 'full_name': {'type': 'string', 'default': ''}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'function'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'caller': {'enum': ['owner', 'anonymous'], 'type': 'string', 'default': 'owner'}, 'params': {'type': 'object', 'default': {}, 'description': 'JSON body passed to the function'}, 'headers': {'type': 'object', 'default': {}, 'description': 'Optional extra request headers to simulate, e.g. a webhook secret header'}, 'function': {'type': 'string', 'description': 'Function name, e.g. probe'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'properties': {'app_id': {'type': 'string', 'description': 'Optional filter by attached app'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 50, 'description': 'Max tasks to return (1-100)'}, 'status': {'type': 'string', 'description': 'Optional status filter: draft, active, paused, archived'}, 'agent_id': {'type': 'string', 'description': 'Optional agent id filter'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 50, 'description': 'Max apps to return (1-200)'}, 'offset': {'type': 'integer', 'default': 0, 'description': 'Apps to skip, for paging'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 100}, 'scope': {'enum': ['mine', 'all'], 'type': 'string', 'default': 'mine', 'description': "'all' = every account (platform team only)"}, 'since': {'type': 'string', 'description': 'Optional ISO timestamp: only requests touched after it, each with changes_since'}, 'app_id': {'type': 'string', 'description': 'Optional app filter'}, 'status': {'enum': ['open', 'triaged', 'in_progress', 'needs_info', 'deployed', 'wont_fix'], 'type': 'string'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'path', 'old_text', 'new_text'], 'properties': {'path': {'type': 'string', 'description': 'Virtual file path'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'new_text': {'type': 'string', 'description': 'Replacement text'}, 'old_text': {'type': 'string', 'description': 'Exact existing text to replace'}, 'replace_all': {'type': 'boolean', 'default': False, 'description': 'Replace all matches instead of the first match'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID to publish'}, 'access_mode': {'enum': ['infer', 'public_open', 'public_auth', 'private', 'keep'], 'type': 'string', 'default': 'infer', 'description': 'Live access policy. public_open = anyone can view. public_auth = public URL opens but app login is required. private = published snapshot remains owner/collaborator-only. keep = preserve current visibility/auth settings. infer = choose from existing settings and obvious app structure.'}, 'make_public': {'type': 'boolean', 'description': 'Optional explicit override for whether published URLs are publicly reachable. Prefer access_mode when possible.'}, 'auth_required': {'type': 'boolean', 'description': 'Optional explicit override for generated-app login requirement. Prefer access_mode when possible.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity'], 'properties': {'sort': {'type': 'string', 'default': '-created_date', 'description': 'Sort field, prefix with - for descending'}, 'limit': {'type': 'integer', 'default': 100, 'description': 'Max records to return'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name, for example Patient'}, 'offset': {'type': 'integer', 'default': 0, 'description': 'Pagination offset'}, 'filters': {'type': 'object', 'default': {}, 'description': 'Exact-match field filters'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'path'], 'properties': {'path': {'type': 'string', 'description': 'Virtual file path, for example pages/Home.jsx'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'max_chars': {'type': 'integer', 'default': 200000, 'description': 'Maximum content characters to return'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'paths'], 'properties': {'paths': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Virtual file paths to read'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'max_chars_per_file': {'type': 'integer', 'default': 100000, 'description': 'Maximum characters per file'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'user_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'user_id': {'type': 'string', 'description': 'Generated app user id'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'domain': {'type': 'string', 'description': 'Optional configured custom domain. If omitted, removes the current custom domain.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'old_path', 'new_path'], 'properties': {'force': {'type': 'boolean', 'default': False, 'description': 'Apply even if validation reports blocking errors'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'new_path': {'type': 'string', 'description': 'New virtual file path'}, 'old_path': {'type': 'string', 'description': 'Existing virtual file path to rename'}, 'overwrite': {'type': 'boolean', 'default': False, 'description': 'Allow replacing an existing file at new_path'}}}
Esquema de entrada
{'type': 'object', 'required': ['request_id', 'body'], 'properties': {'body': {'type': 'string', 'description': 'The answer or finding (markdown allowed, credentials are redacted)'}, 'as_team': {'type': 'boolean', 'default': False, 'description': 'Platform team only: reply as the team (mails the requester)'}, 'request_id': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'snapshot_id', 'path', 'confirm'], 'properties': {'path': {'type': 'string', 'description': 'Virtual file path to restore'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'confirm': {'type': 'boolean', 'default': False}, 'snapshot_id': {'type': 'string', 'description': 'Saved Version snapshot ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['agent_id', 'title', 'instructions', 'schedule'], 'properties': {'title': {'type': 'string', 'description': 'Short task title'}, 'activate': {'type': 'boolean', 'default': True, 'description': 'Start the schedule immediately (true) or save as draft (false)'}, 'agent_id': {'type': 'string', 'description': 'The agent id (from create_agent or list_agents)'}, 'max_runs': {'type': 'integer', 'default': 0, 'description': 'Optional cap on total runs (0 = unlimited)'}, 'schedule': {'type': 'object', 'description': 'Schedule object, e.g. {"type":"daily","time":"08:30","timezone":"Asia/Jerusalem"} or {"type":"weekly","time":"09:00","timezone":"Asia/Jerusalem","days_of_week":[0]} or {"type":"once","run_at":"2026-08-20T09:00","timezone":"Asia/Jerusalem"}'}, 'instructions': {'type': 'string', 'description': 'What the agent should do on each run, written as instructions to the agent'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity', 'records'], 'properties': {'mode': {'enum': ['append', 'skip_if_not_empty'], 'type': 'string', 'default': 'skip_if_not_empty', 'description': 'append always inserts; skip_if_not_empty inserts only when the entity is empty'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'reason': {'type': 'string', 'default': '', 'description': 'Why these records should be created'}, 'records': {'type': 'array', 'items': {'type': 'object'}, 'description': 'Records to insert'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'subdomain'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'subdomain': {'type': 'string', 'description': 'Subdomain label: 3-32 characters, lowercase letters, digits and hyphens, no leading or trailing hyphen, not a reserved platform name. Empty string clears the subdomain.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity', 'read', 'write'], 'properties': {'read': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Roles allowed to read when rules are omitted'}, 'rules': {'type': 'object', 'required': ['rules'], 'properties': {'rules': {'type': 'array', 'items': {'type': 'object', 'required': ['actions', 'subject'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'actions': {'type': 'array', 'items': {'enum': ['create', 'read', 'update', 'delete', 'write'], 'type': 'string'}, 'minItems': 1}, 'subject': {'type': 'object', 'required': ['roles'], 'properties': {'roles': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}}, 'additionalProperties': False}, 'description': {'type': 'string'}}, 'additionalProperties': False}, 'minItems': 1}, 'version': {'enum': [1], 'type': 'integer'}}, 'description': 'Nonempty unconditional action/role rules. No matching rule denies access. Include owner/admin actions explicitly. Record conditions are not supported by this MCP input.', 'additionalProperties': False}, 'write': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Roles allowed to write when rules are omitted'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name, e.g. Booking'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'function', 'require_auth'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'function': {'type': 'string', 'description': 'Function name, e.g. takbull_create (file functions/takbull_create.js)'}, 'secret_name': {'type': 'string', 'default': '', 'description': 'Name of the app secret holding the shared value (set_secret)'}, 'require_auth': {'type': 'boolean', 'default': True, 'description': 'false = anonymous visitors and external callers may invoke'}, 'sdk_identity': {'enum': ['caller', 'app'], 'type': 'string', 'description': "Whose identity the SDK inside the function uses. 'caller' (default): the function reads data as whoever called it, so an anonymous call sees only what anonymous may read. 'app': the SDK acts as the app owner on THIS app's entities (a checkout or payment IPN that must load/update orders whose read policy is owner/admin/staff); the caller still counts as anonymous for rate limits, audit and X-FSe2-Caller-Type. Owner-only. Omit to keep the stored value"}, 'allowed_hosts': {'type': 'array', 'items': {'type': 'string'}, 'description': "Outbound egress allow-list of host[:port] entries, e.g. ['api.takbull.co.il']. Omit to keep the stored list; pass [] to open egress again"}, 'allowed_roles': {'type': 'array', 'items': {'type': 'string'}, 'default': [], 'description': "App roles allowed when require_auth is true; 'authenticated' = any signed-in app member"}, 'secret_header': {'type': 'string', 'default': 'x-fse2-secret', 'description': 'Header the caller sends the shared secret in'}, 'require_secret': {'type': 'boolean', 'default': False, 'description': 'Caller must send a shared secret header (webhooks)'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'domain'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'domain': {'type': 'string', 'description': 'Primary host, for example example.com, www.example.com, or the app subdomain host.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'route', 'require_auth', 'allowed_roles'], 'properties': {'route': {'type': 'string', 'description': 'Route or wildcard route, e.g. /admin/*'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'redirect_to': {'type': 'string', 'default': '/Login'}, 'require_auth': {'type': 'boolean', 'default': True}, 'allowed_roles': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Allowed app roles'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'key', 'value'], 'properties': {'key': {'type': 'string', 'description': 'Secret key name'}, 'value': {'type': 'string', 'description': 'Secret value to encrypt and store'}, 'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['phone'], 'properties': {'phone': {'type': 'string', 'description': "The owner's own WhatsApp number, ideally in E.164 form such as +972501234567."}, 'region': {'type': 'string', 'description': 'Optional ISO region hint (for example IL, US) used when the number has no country code.'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'test_id'], 'properties': {'name': {'type': 'string', 'description': 'Optional new name'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'test_id': {'type': 'string', 'description': 'A/B test ID'}, 'variants': {'type': 'array', 'items': {'type': 'object'}, 'description': 'Optional replacement variants. Traffic must total 100.'}, 'is_active': {'type': 'boolean', 'description': 'Optional active state'}, 'page_name': {'type': 'string', 'description': 'Optional new base route page'}, 'goal_event_type': {'type': 'string', 'description': 'Optional conversion goal type'}, 'goal_event_filter': {'type': 'object', 'description': 'Optional conversion goal filter'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'prompt'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID to update'}, 'prompt': {'type': 'string', 'description': 'What to change in the app'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'user_id', 'role'], 'properties': {'role': {'type': 'string', 'description': 'New role'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'user_id': {'type': 'string', 'description': 'Generated app user id'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'indexes': {'type': 'array', 'items': {'type': 'object'}, 'default': []}, 'metadata': {'type': 'object', 'default': {}}, 'relationships': {'type': 'array', 'items': {'type': 'object'}, 'default': []}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity', 'record_id', 'data'], 'properties': {'data': {'type': 'object', 'description': 'Fields to merge into the record'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'reason': {'type': 'string', 'default': '', 'description': 'Why this record should be updated'}, 'record_id': {'type': 'string', 'description': 'Record ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'reason': {'type': 'string', 'default': '', 'description': 'Why these records should be updated'}, 'changes': {'type': 'object', 'description': 'Shared fields to merge into every selected record'}, 'filters': {'oneOf': [{'type': 'object'}, {'type': 'array', 'items': {'type': 'object'}}], 'description': 'One exact-match selector or a list of exact-match selectors'}, 'updates': {'type': 'array', 'items': {'type': 'object', 'required': ['record_id', 'changes'], 'properties': {'changes': {'type': 'object'}, 'record_id': {'type': 'string'}}}, 'description': 'Per-record changes; use instead of shared changes'}, 'record_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Exact record IDs to update'}, 'expected_count': {'type': 'integer', 'description': 'Required match count safety check, when known'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'entity', 'schema'], 'properties': {'merge': {'type': 'boolean', 'default': True}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'entity': {'type': 'string', 'description': 'Entity name'}, 'schema': {'type': 'object', 'description': 'Schema fields to set or merge'}, 'indexes': {'type': 'array', 'items': {'type': 'object'}, 'default': []}, 'metadata': {'type': 'object', 'default': {}}, 'relationships': {'type': 'array', 'items': {'type': 'object'}, 'default': []}}}
Esquema de entrada
{'type': 'object', 'required': ['request_id'], 'properties': {'reply': {'type': 'string'}, 'status': {'enum': ['open', 'triaged', 'in_progress', 'needs_info', 'deployed', 'wont_fix'], 'type': 'string'}, 'request_id': {'type': 'string'}, 'deployed_commit': {'type': 'string', 'description': 'Commit hash or tag that shipped it'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'include_runtime_errors': {'type': 'boolean', 'default': True}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'change_set_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}, 'change_set_id': {'type': 'string', 'description': 'Change set ID'}, 'include_runtime_errors': {'type': 'boolean', 'default': True}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'The app ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['app_id', 'path', 'content'], 'properties': {'path': {'type': 'string', 'description': 'Virtual file path'}, 'app_id': {'type': 'string', 'description': 'The app ID'}, 'content': {'type': 'string', 'description': 'Complete file contents'}, 'file_type': {'type': 'string', 'description': 'Optional file type override'}}}
Cambios recientes en herramientas
Servidores MCP similares
shiply
Publishes and manages web applications with SQL databases, serverless functions, domains, email tests, client intake, contracts, …
mcp
Provisions and manages cloud instances, networks, storage, databases, backups, VPNs, application deployments, and autocoding-agen…
EchoRelay
Manages a hosted API relay runtime, including projects, endpoints, credentials, publishing, keys, delivery logs, and dead-letter …
Supero
Builds, validates, publishes, tests, and deploys multi-tenant applications with schemas, CRUD operations, external data connector…
Replicate
Provides access to Replicate models, versions, collections, hardware, predictions, and deployments for running and managing hoste…
Relin
Configures webhook sources and destinations, monitors delivery health, investigates failures, manages retries, and replays events.
Scalix Cloud
Provides managed databases, SQL tools, container builds, persistent Linux machines, domains, scheduled functions, storage, and pr…
RationalBloks
Creates, deploys, manages, and searches schema-based REST API projects and Neo4j knowledge graphs across staging and production e…