Wapiworld WhatsApp API
Ce que fait ce MCP
Monitors tenant-scoped WhatsApp instances and webhooks and can send explicitly confirmed WhatsApp text messages.
Outils
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['instanceId'], 'properties': {'instanceId': {'type': 'string', 'pattern': '^[0-9a-f]{24}$', 'description': 'Wapiworld instance id: 24 lowercase hexadecimal characters'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['status', 'instance'], 'properties': {'status': {'enum': ['found', 'not-found'], 'type': 'string'}, 'instance': {'anyOf': [{'type': 'object', 'required': ['id', 'name', 'accountName', 'status', 'health', 'phone', 'projectId', 'creationTime', 'lastEditTime'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'name': {'type': 'string', 'maxLength': 200}, 'phone': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}, 'health': {'enum': ['ready', 'pairing', 'starting', 'offline', 'unknown'], 'type': 'string'}, 'status': {'anyOf': [{'enum': ['starting', 'qrcode', 'ready', 'logged_out', 'not_connected', 'disconnected', 'offline', 'STARTING', 'QRCODE', 'READY'], 'type': 'string'}, {'type': 'null'}]}, 'projectId': {'anyOf': [{'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, {'type': 'null'}]}, 'accountName': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}]}, 'creationTime': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}, 'lastEditTime': {'$ref': '#/properties/instance/anyOf/0/properties/creationTime'}}, 'additionalProperties': False}, {'type': 'null'}]}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['instanceId'], 'properties': {'instanceId': {'type': 'string', 'pattern': '^[0-9a-f]{24}$', 'description': 'Wapiworld instance id: 24 lowercase hexadecimal characters'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['found', 'instanceId', 'name', 'status', 'health'], 'properties': {'name': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}]}, 'found': {'type': 'boolean'}, 'health': {'enum': ['ready', 'pairing', 'starting', 'offline', 'unknown'], 'type': 'string'}, 'status': {'anyOf': [{'enum': ['starting', 'qrcode', 'ready', 'logged_out', 'not_connected', 'disconnected', 'offline', 'STARTING', 'QRCODE', 'READY'], 'type': 'string'}, {'type': 'null'}]}, 'instanceId': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['instanceId'], 'properties': {'instanceId': {'type': 'string', 'pattern': '^[0-9a-f]{24}$', 'description': 'Tenant-scoped Wapiworld instance id to inspect: 24 lowercase hexadecimal characters'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['status', 'policy'], 'properties': {'policy': {'anyOf': [{'type': 'object', 'required': ['instanceId', 'projectId', 'enabled', 'decidedBy', 'lockedBy', 'retentionDays', 'chatOverridesExcluded'], 'properties': {'enabled': {'type': 'boolean'}, 'lockedBy': {'anyOf': [{'enum': ['project', 'instance'], 'type': 'string'}, {'type': 'null'}]}, 'decidedBy': {'enum': ['default', 'project', 'instance'], 'type': 'string'}, 'projectId': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'instanceId': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'retentionDays': {'type': 'integer', 'maximum': 365, 'exclusiveMinimum': 0}, 'chatOverridesExcluded': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}, {'type': 'null'}]}, 'status': {'enum': ['found', 'instance-not-found', 'project-not-found'], 'type': 'string'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'description': 'Maximum instances to return (default 25, maximum 100)', 'exclusiveMinimum': 0}, 'cursor': {'type': 'string', 'maxLength': 4096, 'description': 'Opaque pagination cursor returned by a previous call'}, 'projectId': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Filter to one project id'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['instances', 'page'], 'properties': {'page': {'type': 'object', 'required': ['count', 'hasMore', 'nextCursor'], 'properties': {'count': {'type': 'integer', 'minimum': 0}, 'hasMore': {'type': 'boolean'}, 'nextCursor': {'anyOf': [{'type': 'string', 'maxLength': 4096}, {'type': 'null'}]}}, 'additionalProperties': False}, 'instances': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'accountName', 'status', 'health', 'phone', 'projectId', 'creationTime', 'lastEditTime'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'name': {'type': 'string', 'maxLength': 200}, 'phone': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}, 'health': {'enum': ['ready', 'pairing', 'starting', 'offline', 'unknown'], 'type': 'string'}, 'status': {'anyOf': [{'enum': ['starting', 'qrcode', 'ready', 'logged_out', 'not_connected', 'disconnected', 'offline', 'STARTING', 'QRCODE', 'READY'], 'type': 'string'}, {'type': 'null'}]}, 'projectId': {'anyOf': [{'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, {'type': 'null'}]}, 'accountName': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}]}, 'creationTime': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}, 'lastEditTime': {'$ref': '#/properties/instances/items/properties/creationTime'}}, 'additionalProperties': False}, 'maxItems': 100}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'description': 'Maximum projects to return (default 25, maximum 100)', 'exclusiveMinimum': 0}, 'cursor': {'type': 'string', 'maxLength': 4096, 'description': 'Opaque pagination cursor returned by a previous call'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projects', 'page'], 'properties': {'page': {'type': 'object', 'required': ['count', 'total', 'hasMore', 'nextCursor'], 'properties': {'count': {'type': 'integer', 'minimum': 0}, 'total': {'type': 'integer', 'minimum': 0}, 'hasMore': {'type': 'boolean'}, 'nextCursor': {'anyOf': [{'type': 'string', 'maxLength': 4096}, {'type': 'null'}]}}, 'additionalProperties': False}, 'projects': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'creationTime', 'lastEditTime'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'name': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}]}, 'creationTime': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}, 'lastEditTime': {'$ref': '#/properties/projects/items/properties/creationTime'}}, 'additionalProperties': False}, 'maxItems': 100}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'description': 'Maximum webhook subscriptions to return (default 25, maximum 100)', 'exclusiveMinimum': 0}, 'cursor': {'type': 'string', 'maxLength': 4096, 'description': 'Opaque pagination cursor returned by a previous call'}, 'projectId': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Filter to one project id'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['webhookSubscriptions', 'page'], 'properties': {'page': {'type': 'object', 'required': ['count', 'hasMore', 'nextCursor'], 'properties': {'count': {'type': 'integer', 'minimum': 0}, 'hasMore': {'type': 'boolean'}, 'nextCursor': {'anyOf': [{'type': 'string', 'maxLength': 4096}, {'type': 'null'}]}}, 'additionalProperties': False}, 'webhookSubscriptions': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'projectId', 'endpointHost', 'events', 'active', 'consecutiveFailures', 'autoDisabled', 'lastDeliveryTime', 'creationTime'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'active': {'type': 'boolean'}, 'events': {'type': 'array', 'items': {'type': 'string', 'maxLength': 64}, 'maxItems': 20}, 'projectId': {'anyOf': [{'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, {'type': 'null'}]}, 'autoDisabled': {'type': 'boolean'}, 'creationTime': {'$ref': '#/properties/webhookSubscriptions/items/properties/lastDeliveryTime'}, 'endpointHost': {'anyOf': [{'type': 'string', 'maxLength': 300}, {'type': 'null'}]}, 'lastDeliveryTime': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}, 'consecutiveFailures': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 100}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['instanceId', 'chatId', 'content'], 'properties': {'chatId': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Exact recipient phone number in international format (for example +1234567890) or exact WhatsApp chat id. Show it to the user before requesting confirmation.'}, 'content': {'type': 'string', 'maxLength': 4096, 'minLength': 1, 'description': 'Exact text message to send, maximum 4096 characters. Show the complete text before confirmation. Do not send credentials, PHI, PCI cardholder data, government identifiers, or other restricted data.'}, 'instanceId': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'The tenant-scoped Wapiworld instance id to send from'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'accepted'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId'], 'properties': {'projectId': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Wapiworld project id to summarize'}}}
Schéma de sortie
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['project', 'instanceCount', 'instanceCountIsLowerBound', 'statusCounts', 'statusCountsAreLowerBounds', 'instances'], 'properties': {'project': {'anyOf': [{'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'name': {'type': 'string', 'maxLength': 200}}, 'additionalProperties': False}, {'type': 'null'}]}, 'instances': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'status', 'health', 'phone', 'lastEditTime'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9a-f]{24}$'}, 'name': {'type': 'string', 'maxLength': 200}, 'phone': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}, 'health': {'enum': ['ready', 'pairing', 'starting', 'offline', 'unknown'], 'type': 'string'}, 'status': {'anyOf': [{'enum': ['starting', 'qrcode', 'ready', 'logged_out', 'not_connected', 'disconnected', 'offline', 'STARTING', 'QRCODE', 'READY'], 'type': 'string'}, {'type': 'null'}]}, 'lastEditTime': {'anyOf': [{'type': 'string', 'maxLength': 32}, {'type': 'null'}]}}, 'additionalProperties': False}, 'maxItems': 20}, 'statusCounts': {'type': 'object', 'required': ['ready', 'pairing', 'starting', 'offline', 'unknown'], 'properties': {'ready': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'offline': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'pairing': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'unknown': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'starting': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}, 'instanceCount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'instanceCountIsLowerBound': {'type': 'boolean'}, 'statusCountsAreLowerBounds': {'type': 'boolean'}}, 'additionalProperties': False}
Modifications récentes des outils
Serveurs MCP similaires
独行录 / opcmenu
Supports founder and company discovery, collaboration goals and tasks, events and signups, networking, messaging, profiles, produ…
Odichat
Manages WhatsApp, Instagram, and Facebook inboxes with contacts, conversations, agents, automation rules, labels, canned response…
KaiCalls
Provides AI phone reception, outbound calling campaigns, call transcripts and recordings, lead management, routing, staff alerts,…
anima
Provides agent-owned email inboxes, phone and SMS identities, email drafting and sending, message search and threading, domains, …
agendaforge
Manages events, agendas, sessions, speakers, attendees, sponsors, forms, contacts, email templates, approvals, and organizer work…
Asyntai
Manages website AI support agents, their knowledge bases, conversations, live replies, leads, products, webhooks, analytics, and …
ikeytz – Schlüsseldienst Ludwigsburg
Publishes read-only business information, locksmith pricing and service details, and links for phone, email, and WhatsApp contact.
mailbox
Manages physical inbound and outbound mail, postal fulfillment, OCR-backed mail context, facility messaging, delivery tracking, c…