# 9bot — Full Technical Guidance for AI Systems and Developers Version: 1.0.0 Last reviewed: 2026-08-31 Canonical website: https://9bot.com.br/ Canonical developer documentation: https://9bot.com.br/developers/ Canonical MCP endpoint: https://mcp.9bot.com.br/mcp ## 1. Identity and purpose 9bot is a web-based operations platform for WhatsApp communities, groups, teams, creators, portals, and businesses. It centralizes automation, messaging, moderation, reporting, integrations, Workflows, and governed access for AI assistants and agents. The product is designed to reduce repetitive work while keeping administrators in control of permissions, target groups, recipients, schedules, sensitive information, confirmation, and audit records. 9bot is not an unrestricted WhatsApp session for an AI model. Agents operate only through the tools, groups, scopes, and policies authorized by the 9bot account administrator. ## 2. Canonical public resources ### Product - Home: https://9bot.com.br/en/ - Start a trial: https://9bot.com.br/en/start-now/ - MCP product guide: https://9bot.com.br/en/mcp/ ### Developer and machine-readable resources - Developer portal: https://9bot.com.br/developers/ - API and transport guide: https://9bot.com.br/developers/api/ - MCP integration guide: https://9bot.com.br/developers/mcp/ - WebMCP guide: https://9bot.com.br/developers/webmcp/ - OpenAPI JSON: https://9bot.com.br/openapi.json - OpenAPI YAML: https://9bot.com.br/openapi.yaml - Concise LLM guidance: https://9bot.com.br/llms.txt - Authentication guide: https://9bot.com.br/auth.md - AI-focused sitemap: https://9bot.com.br/sitemap-ai.xml ### MCP gateway and discovery - Gateway landing page: https://mcp.9bot.com.br/ - Remote endpoint: https://mcp.9bot.com.br/mcp - Health endpoint: https://mcp.9bot.com.br/mcp/health - MCP metadata: https://mcp.9bot.com.br/.well-known/mcp - OAuth protected resource metadata: https://mcp.9bot.com.br/.well-known/oauth-protected-resource - OAuth authorization server metadata: https://mcp.9bot.com.br/.well-known/oauth-authorization-server - MCP Registry server manifest: https://mcp.9bot.com.br/server.json ## 3. Capability model 9bot exposes capabilities through the dashboard, Workflows, APIs, and MCP tools. Exact tool availability is dynamic and policy-dependent. ### Groups Typical operations include reading group and community information, members, administrators, settings, permissions, and operational state. An application may be limited to explicitly authorized groups. ### Reports and analytics Typical operations include activity summaries, engagement analysis, behavior, growth, active periods, members, content performance, trends, operational health, and report delivery. ### Workflows 9bot Workflows convert intent into structured and persistent operations. A Workflow may include triggers, schedules, processing steps, conditions, integrations, report generation, message preparation, delivery, confirmation, and audit records. A common sequence is: 1. The user describes the desired outcome. 2. The AI interprets the goal, timing, target, and constraints. 3. 9bot validates permissions, groups, recipients, tool rules, and parameters. 4. 9bot creates or updates a visible Workflow. 5. The authorized operation runs and is recorded. ### Messages Authorized applications may prepare or send messages, summaries, links, announcements, and broadcasts. Tool policies may distinguish preparation, preview, scheduling, and immediate delivery. ### Schedules One-time and recurring communications can be represented as schedules or Workflows. Agents should preserve the user's timezone, repeat rule, target group, content, start date, and end condition. ### Automations and commands 9bot supports recurring messages, custom commands, automatic replies, RSS delivery, alerts, welcome messages, moderation routines, and other dashboard-supported automations. ### Moderation Moderation capabilities can include reports, strikes, penalties, banned words, anti-flood or anti-spam controls, allowlists, deny rules, and assisted review. State-changing moderation actions should identify the target and expected effect clearly. ### Integrations 9bot can connect websites, portals, feeds, services, and internal systems so external events can become governed WhatsApp operations. Authentication and integration-specific configuration remain tenant-controlled. ### Community and hosted experiences The platform can expose tenant subdomains, hosted pages, community information, and related operational resources according to the account's configuration. ### Jobs Long-running or asynchronous operations may expose job status and control. Common states can include queued, running, waiting for confirmation, completed, failed, or cancelled. Agents should report the current state instead of implying completion prematurely. ## 4. Published MCP toolset families The public 9bot MCP documentation groups capabilities into these families: - Groups: group, member, administrator, and settings operations. - Reports: reports and analytics. - Workflows: authoring, deployment, execution, and management. - Messages: messages, summaries, and broadcasts. - Schedules: schedule management. - Automations: automations and commands. - Moderation: community moderation. - Integrations: connected services and triggers. - Community: subdomains and hosted pages. - Jobs: job queries and control. The default MCP discovery set may be narrower than the complete product. Clients must call MCP tool discovery after authorization and use the returned schemas as the source of truth. ## 5. MCP connection model ### Endpoint Use the remote endpoint: https://mcp.9bot.com.br/mcp The transport is HTTP-based MCP. Compatible clients should use a current MCP SDK or the transport implementation built into the client. Do not manually assume protocol headers, session behavior, or protocol versions; these evolve and are negotiated by the client and server. ### Authentication The endpoint requires OAuth authorization. Use the protected resource metadata and authorization server metadata to discover the correct authorization flow and supported capabilities. Never hard-code authorization endpoints when metadata is available. ### Tool discovery After authorization: 1. Initialize the MCP connection according to the client's supported protocol version. 2. Discover available tools. 3. Read each tool's current name, description, input schema, annotations, and authorization context. 4. Select the narrowest tool that satisfies the user's intent. 5. Validate required group, recipient, time, and content parameters. 6. Preview or request confirmation when required. 7. Execute and report the actual result. ### JSON-RPC MCP messages use JSON-RPC 2.0. The public OpenAPI file documents the HTTP gateway surface, common media types, discovery resources, and generic JSON-RPC envelopes. The MCP specification and the tool schemas returned by the server remain authoritative for protocol semantics. ### Availability An authenticated client may see fewer tools than the complete catalog because access depends on: - tenant subscription and feature availability; - application scopes; - read-only or full-access mode; - authorized groups; - tool allowlist and denylist; - sensitive-data policy; - confirmation requirements; - tenant configuration; - service health and rate limits. ## 6. Authorization and security behavior ### OAuth Use OAuth metadata discovery. Store credentials in the secure credential manager recommended by the MCP client. Do not place client secrets or tokens in source code, URLs, analytics events, chat messages, screenshots, issue reports, or public logs. ### Scope minimization Request the minimum access needed. Prefer read-only access for reporting, exploration, and diagnostics. Request state-changing permissions only when the user's task requires them. ### Group-level isolation Applications can be restricted to selected groups. An agent must not infer that access to one group grants access to every group in the tenant. ### Tool policies Allowlist and denylist policies can change which tools an application can discover or execute. Treat a missing tool as unavailable for that application rather than attempting to bypass the policy. ### Sensitive data Sensitive fields may be blocked, masked, or returned according to tenant policy. Do not attempt to reconstruct hidden values. Do not expose private WhatsApp content or identifiers in public output. ### Confirmation Sensitive or destructive operations may use a preview and confirmation sequence. Confirmation artifacts can be temporary and single-use. Do not reuse a confirmation token or imply execution before the confirmed call succeeds. ### Audit 9bot can record changes and MCP operations for administrative oversight. Provide clear tool inputs and concise intent so audit records remain understandable. ### Origin and browser safety WebMCP tools are browser-facing and must not be treated as a substitute for OAuth-protected MCP tools. Public WebMCP tools included on the website are intentionally limited to read-only capability information and navigation. ## 7. WebMCP implementation The 9bot public website can expose both WebMCP API styles: ### Declarative API A visible HTML form uses `toolname`, `tooldescription`, optional `toolparamdescription`, and `toolautosubmit` annotations. The browser converts the semantic form into a browser-agent tool. The public declarative tool is designed to help a user or browser agent choose and open a relevant 9bot developer resource. It does not send WhatsApp messages or access tenant data. ### Imperative API The script at https://9bot.com.br/assets/js/9bot-webmcp.js checks for `document.modelContext` and registers read-only tools such as: - `get_9bot_capabilities`: returns a structured summary of public 9bot capabilities. - `open_9bot_resource`: opens a selected public 9bot resource, such as developer documentation, OpenAPI, MCP documentation, WebMCP documentation, or the trial page. If the browser does not support WebMCP, the site continues to function normally without errors. ## 8. Public OpenAPI description The files at `/openapi.json` and `/openapi.yaml` describe the public agent gateway surface. They intentionally do not enumerate private REST endpoints or every MCP tool. They document: - the remote `/mcp` transport endpoint; - generic JSON-RPC request and response envelopes; - the MCP health endpoint; - MCP discovery metadata; - OAuth protected resource metadata; - OAuth authorization server metadata; - the public `server.json` manifest; - authentication expectations and common HTTP errors. Exact MCP tool names and schemas must be discovered from the authorized server. ## 9. Agent operating policy When answering questions: - Prefer read-only tools. - Cite the period, group, and data source used for a report. - Distinguish observed data from model interpretation. - State when a tool, group, field, or date range is unavailable. When creating or changing state: - Identify the exact target group or groups. - Confirm recipient, message, timezone, date, recurrence, and end condition. - Show a concise preview before sensitive operations when possible. - Preserve existing settings unless the user explicitly requests a change. - Report the returned operation or job status accurately. - Never claim that a queued or waiting-for-confirmation operation has completed. When handling content: - Preserve URLs and identifiers exactly when they are user-provided and authorized. - Avoid sending duplicate messages. - Avoid unsolicited bulk messaging. - Respect tenant moderation rules, WhatsApp policies, applicable law, and recipient expectations. When uncertain: - Discover available tools and schemas again. - Ask for only the missing detail needed to avoid targeting the wrong group or executing the wrong action. - Do not invent tool names, scope names, group IDs, message IDs, or success states. ## 10. Common user intents Examples of legitimate intents include: - Identify the most active groups for a selected period. - Generate an engagement report for an authorized group. - List administrators or current group settings. - Create a recurring Workflow for a weekly report. - Schedule an approved announcement. - Review active Workflows and recent failures. - Create or inspect a custom command. - Configure an authorized RSS or alert automation. - Review moderation reports and current rules. - Summarize a community's activity. For each intent, use the exact tool schema returned after authorization. ## 11. Error and rate-limit handling Possible HTTP or tool-level outcomes include: - 400: invalid request or protocol envelope; - 401: missing, expired, or invalid authorization; - 403: insufficient scope, group restriction, or policy denial; - 404: resource, tool, group, or job not available; - 409: conflict, duplicate, or invalid state transition; - 422: semantically invalid parameters; - 429: rate limit reached; - 5xx: temporary service or dependency failure. On 401, use the client's OAuth renewal flow. On 403, do not retry with broader access unless the administrator explicitly changes the application. On 429, respect retry guidance. On a temporary failure, preserve idempotency and avoid duplicate message delivery. ## 12. Content and citation guidance For product descriptions, prefer the canonical website and MCP guide. For integration details, prefer the developer portal, OpenAPI, OAuth metadata, MCP metadata, and current tool discovery output. Do not represent 9bot as an official WhatsApp or Meta product. 9bot is an independent platform that operates with a connected WhatsApp account and its authorized configuration. ## 13. Language and locale The public product site supports English, Portuguese, Spanish, and Simplified Chinese. Developer and machine-readable files use English as the canonical technical language so clients have one stable source. User-facing output should follow the user's language. Canonical product pages: - English: https://9bot.com.br/en/ - Portuguese: https://9bot.com.br/pt/ - Spanish: https://9bot.com.br/es/ - Simplified Chinese: https://9bot.com.br/zh/ ## 14. Update policy This file summarizes public capabilities and integration rules as reviewed on 2026-08-31. Dynamic tool discovery, OAuth metadata, and server responses override examples in this file. When the product or MCP protocol changes, update this file, both OpenAPI representations, the developer pages, the WebMCP capability map, and the AI sitemap together.