{"id":"wati-mcp-server","name":"wati-mcp-server","homepage":"https://pypi.org/project/wati-mcp-server/","repo_url":"https://github.com/Jairajmehra/wati_whatsapp_mcp.git","category":"communication","subcategories":[],"tags":["mcp","whatsapp","wati","messaging","contacts","templates","media","python","api-integration"],"what_it_does":"wati-mcp-server is a Python Model Context Protocol (MCP) server that integrates with the WATI WhatsApp Business API, exposing MCP tools for messaging, contacts, template/broadcast messaging, media file handling, and conversation history retrieval (with pagination/filtering), plus a demo get_weather tool.","use_cases":["Let an MCP-capable AI assistant send WhatsApp messages (including template messages) via a WATI WhatsApp Business account","Manage WhatsApp contacts (list, add, update attributes) through MCP tool calls","Retrieve conversation/message history with pagination and filtering","Send media files to WhatsApp sessions from the assistant","Run bulk/template broadcasts to multiple recipients (including CSV-based bulk send)"],"not_for":["A production-grade WhatsApp gateway without verifying MCP tool contracts against the actual server implementation","Use cases requiring fine-grained OAuth authorization flows per end-user (the README describes bearer token usage)","Environments that require documented rate-limit behavior and retry/idempotency semantics for safe automated retries"],"best_when":"You want a straightforward MCP integration to automate WhatsApp Business actions (send templates/messages, manage contacts, fetch history) from an AI assistant using environment-variable credentials.","avoid_when":"You need guaranteed safety around retries/idempotency for message sends, or you require clear, provider-level limits (rate limits, quotas) and strong confidentiality guarantees beyond storing an access token in environment variables.","alternatives":["Using WATI’s API directly from your own backend (with proper retry/idempotency controls)","Implementing an MCP server wrapper around WATI yourself with stricter schemas and observability","Using a different WhatsApp automation provider with mature SDKs and documented limits (if acceptable)"],"af_score":62.2,"security_score":59.2,"reliability_score":30.0,"package_type":"mcp_server","discovery_source":["pypi"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T21:39:44.012315+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":["Python"],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["ACCESS_TOKEN bearer token via API_ENDPOINT"],"oauth":false,"scopes":false,"notes":"Authentication is configured via environment variables: API_ENDPOINT and ACCESS_TOKEN (described as a Bearer token). The README does not describe fine-grained scopes or per-tool authorization."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Pricing for the integration itself is not described; WATI API usage would still incur provider costs."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":62.2,"security_score":59.2,"reliability_score":30.0,"mcp_server_quality":60.0,"documentation_accuracy":70.0,"error_message_quality":null,"error_message_notes":"README states 'comprehensive error handling' with structured error responses, env var validation, and structured logging, but it does not provide concrete example payloads or error code taxonomy.","auth_complexity":85.0,"rate_limit_clarity":20.0,"tls_enforcement":80.0,"auth_strength":60.0,"scope_granularity":30.0,"dependency_hygiene":55.0,"secret_handling":70.0,"security_notes":"Uses API_ENDPOINT over an HTTPS URL in the example config and bearer-token authentication via environment variables. The README does not describe scope granularity, token rotation, storage/log redaction guarantees, or rate-limit handling. Dependency hygiene is unknown from provided content; requests/python-dotenv/mcp are standard libraries but no CVE/lockfile evidence is included.","uptime_documented":0.0,"version_stability":35.0,"breaking_changes_history":45.0,"error_recovery":40.0,"idempotency_support":"false","idempotency_notes":"No idempotency guarantees are described for send operations (e.g., template sends or media sends). Agents should avoid automatic retries unless the server/WATI semantics are verified.","pagination_style":"page_size based pagination mentioned for conversation history; exact cursor/next-token semantics not provided","retry_guidance_documented":false,"known_agent_gotchas":["Automatic retries for send_message/template/bulk operations may cause duplicate WhatsApp messages because idempotency behavior is not documented","Bulk operations from CSV may be sensitive to formatting/encoding; README does not document expected CSV schema constraints","The README includes a demo get_weather tool; ensure the agent uses only WhatsApp-related tools for production"]}}