{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "category": "lead-data",
    "endpoint": "https://asyntai.com/mcp",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/asyntai-support-agent.json",
    "kind": "mcp",
    "listed": "indexed",
    "liveUrl": "https://www.anchorterminal.com/api/v1/live/asyntai-support-agent.json",
    "markdownUrl": "https://www.anchorterminal.com/tools/asyntai-support-agent.md",
    "mcpTools": {
      "check": {
        "checker": "anchor-check/1.0",
        "totalTokens": 9661,
        "counts": {
          "error": 0,
          "note": 1,
          "warn": 3
        },
        "findings": [
          {
            "rule": "TC13",
            "severity": "warn",
            "tool": "update_website_features",
            "message": "fields (object with no properties)",
            "fix": "Declare the properties (or additionalProperties with a schema) and the array's items."
          },
          {
            "rule": "TC13",
            "severity": "warn",
            "tool": "update_widget_settings",
            "message": "settings (object with no properties)",
            "fix": "Declare the properties (or additionalProperties with a schema) and the array's items."
          },
          {
            "rule": "TC23",
            "severity": "warn",
            "message": "54 tools",
            "fix": "Offer a smaller default toolset and let clients opt into the rest."
          },
          {
            "rule": "TC24",
            "severity": "note",
            "message": "54 of 54 tools have no outputSchema",
            "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
          }
        ]
      },
      "checkedAt": "2026-10-04T22:22:10Z",
      "count": 54,
      "note": "answered without the initialize handshake",
      "schemaTokens": 9661,
      "status": "ok",
      "tools": [
        {
          "name": "list_websites",
          "title": "List websites",
          "description": "List the websites (AI agents) on this Asyntai account, with the id every other tool takes. Start here when the account may have more than one.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {},
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List websites"
          }
        },
        {
          "name": "get_account",
          "title": "Get account and usage",
          "description": "Get the signed-in account's email, plan, and how many chat messages it has used against its monthly allowance.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {},
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Get account and usage"
          }
        },
        {
          "name": "list_plans",
          "title": "Compare plans",
          "description": "List every Asyntai plan with its price, monthly message allowance and the features it includes, alongside the plan this account is on. Use it to explain which plan includes a feature the account asks about.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {},
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Compare plans"
          }
        },
        {
          "name": "search_asyntai_docs",
          "title": "Search the Asyntai documentation",
          "description": "Search Asyntai's own product documentation and get back the pages that match, with a short excerpt from each. Use this to find out how a feature works before changing anything, rather than guessing. This searches Asyntai's documentation, NOT the customer's own content: for that, use search_knowledge_base. Matching is by keyword, so if the results look wrong, search again using Asyntai's own feature names, for example data feed, widget pinning, access tags, AI instructions.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many pages to return, 1 to 20. Default 8.",
                "type": "integer"
              },
              "query": {
                "description": "What to look for.",
                "type": "string"
              }
            },
            "required": [
              "query"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Search the Asyntai documentation"
          }
        },
        {
          "name": "get_asyntai_doc",
          "title": "Read one documentation page",
          "description": "Read one page of Asyntai's documentation in full, given the url or slug from search_asyntai_docs, for example /documentation/mcp/ or just mcp.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "page": {
                "description": "The url or slug of the page to read.",
                "type": "string"
              }
            },
            "required": [
              "page"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Read one documentation page"
          }
        },
        {
          "name": "get_website",
          "title": "Get one website",
          "description": "Get the full record for one website: its name, domain, platform, widget id and the embed code to paste into the site.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Get one website"
          }
        },
        {
          "name": "create_website",
          "title": "Add a website",
          "description": "Add a new website (a new AI agent) to the account and return its embed code. Each plan allows a limited number of websites, and this refuses once that limit is reached. By default it also starts a crawl of the site to build the knowledge base.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "crawl": {
                "description": "Crawl the site after adding it. True by default.",
                "type": "boolean"
              },
              "domain": {
                "description": "The website address, for example shop.example.com.",
                "type": "string"
              },
              "name": {
                "description": "Display name for this agent. Optional.",
                "type": "string"
              }
            },
            "required": [
              "domain"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Add a website"
          }
        },
        {
          "name": "get_widget_settings",
          "title": "Get the chat widget settings",
          "description": "Read all appearance and behaviour settings for one website's chat widget: colours, greeting, position, auto-trigger, data collection, bookings and the rest. Also returns which settings this account's plan cannot change, and the plan each of those needs.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Get the chat widget settings"
          }
        },
        {
          "name": "update_widget_settings",
          "title": "Change the chat widget settings",
          "description": "Change one or more chat widget settings. Pass an object of setting name to new value; read them with get_widget_settings first. Changes are live for every visitor at once. Settings the plan does not include are refused with the plan they need, and nothing is written unless every value is valid.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "settings": {
                "description": "Setting name to new value, for example widget_color set to #6366f1.",
                "type": "object"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "settings"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Change the chat widget settings"
          }
        },
        {
          "name": "set_data_feed",
          "title": "Set the Real-Time Data Feed",
          "description": "Point the chatbot at a product feed and index it. This fetches the feed, checks it really is a feed, clears whatever was indexed before, and rebuilds the index in the background. Send an empty url to remove the feed. Needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "enabled": {
                "description": "Whether the chatbot may use the feed.",
                "type": "boolean"
              },
              "url": {
                "description": "Address of the product feed. Empty removes it.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "url"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Set the Real-Time Data Feed"
          }
        },
        {
          "name": "set_data_feed_max",
          "title": "Set the Real-Time Data Feed Max",
          "description": "Same as set_data_feed, for the Max tier, which indexes a larger catalogue. Fetches, validates, clears the old index and rebuilds it in the background. Needs the Pro plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "enabled": {
                "description": "Whether the chatbot may use the feed.",
                "type": "boolean"
              },
              "url": {
                "description": "Address of the product feed. Empty removes it.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "url"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Set the Real-Time Data Feed Max"
          }
        },
        {
          "name": "set_access_tags",
          "title": "Turn Access Tags on or off",
          "description": "Switch Access Tags on or off for one website. Turning it on creates the signing secret your server needs to sign visitor entitlements. Needs the Enterprise plan.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "enabled": {
                "description": "True to switch it on.",
                "type": "boolean"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "enabled"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Turn Access Tags on or off"
          }
        },
        {
          "name": "set_widget_pinning",
          "title": "Turn Widget Pinning on or off",
          "description": "Freeze the chat widget at its current version, so the site always serves the same copy with an integrity hash. Turning it on builds that snapshot and changes the embed code. Needs the Enterprise plan.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "enabled": {
                "description": "True to pin the widget.",
                "type": "boolean"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "enabled"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Turn Widget Pinning on or off"
          }
        },
        {
          "name": "get_website_features",
          "title": "Get the website features",
          "description": "Read the plan-gated features for one website: Real-Time Data Feed and its Max tier, Product Cards, Dynamic Images, User Context, Link Parameters, Chat Retention, Chat Categories, Access Tags, Widget Pinning, Zero Retention, PII Redaction and the Output Classifier. Shows current values, which features the plan allows, and the plan each locked feature needs.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Get the website features"
          }
        },
        {
          "name": "update_website_features",
          "title": "Change the website features",
          "description": "Turn website features on or off and set their values, for example the Real-Time Data Feed URL or the PII Redaction rules. Pass an object of field name to value; read them with get_website_features first. A feature the plan does not include is refused with the plan it needs. These change how the live chatbot behaves for every visitor.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "fields": {
                "description": "Field name to new value, for example real_time_products_enabled set to true.",
                "type": "object"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "fields"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Change the website features"
          }
        },
        {
          "name": "search_knowledge_base",
          "title": "Search the knowledge base",
          "description": "Search one website's knowledge base and return the passages the chatbot would retrieve for this question, with a relevance score. Use this to check what the chatbot knows about a topic. It does not generate an answer and does not use the message allowance.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many passages to return (1-20, default 5).",
                "maximum": 20,
                "minimum": 1,
                "type": "integer"
              },
              "query": {
                "description": "What to look for, in plain language.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "query"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Search the knowledge base"
          }
        },
        {
          "name": "list_knowledge",
          "title": "List knowledge base entries",
          "description": "List the sources in one website's knowledge base: uploaded text, documents, added pages and crawls.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many entries to return (1-100, default 50).",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List knowledge base entries"
          }
        },
        {
          "name": "add_knowledge_text",
          "title": "Add text to the knowledge base",
          "description": "Add a titled block of text to one website's knowledge base. The chatbot can use it in answers as soon as this returns. Adds a new entry; it never replaces an existing one.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "content": {
                "description": "The text itself. At least 10 characters.",
                "type": "string"
              },
              "title": {
                "description": "Short name for this entry, shown in the dashboard.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "title",
              "content"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Add text to the knowledge base"
          }
        },
        {
          "name": "delete_knowledge_entry",
          "title": "Delete a knowledge base entry",
          "description": "Permanently delete one knowledge base entry and every passage built from it. The chatbot stops using that content immediately. This cannot be undone.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "entry_id": {
                "description": "The entry id from list_knowledge.",
                "type": "string"
              }
            },
            "required": [
              "entry_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Delete a knowledge base entry"
          }
        },
        {
          "name": "get_ai_instructions",
          "title": "Get the AI instructions",
          "description": "Get the instructions that shape how one website's chatbot answers: its role, tone and rules.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Get the AI instructions"
          }
        },
        {
          "name": "update_ai_instructions",
          "title": "Replace the AI instructions",
          "description": "Replace one website's AI instructions with new text. This overwrites the current instructions and changes how the live chatbot answers every visitor. Read them with get_ai_instructions first, and show the user what will change before calling this.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "instructions": {
                "description": "The full new instructions text.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "instructions"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Replace the AI instructions"
          }
        },
        {
          "name": "get_knowledge_entry",
          "title": "Read one knowledge base entry",
          "description": "Read the stored text of one knowledge base entry. Works for the content you supplied: text, documents, spreadsheets, single pages and videos. A website crawl is listed but not exported, because the source is your own public site.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "entry_id": {
                "description": "The entry id from list_knowledge.",
                "type": "string"
              }
            },
            "required": [
              "entry_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Read one knowledge base entry"
          }
        },
        {
          "name": "add_knowledge_url",
          "title": "Add a page to the knowledge base",
          "description": "Fetch one web page and add its text to the knowledge base. Use this for a single page. To take in a whole site, use start_crawl instead.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "url": {
                "description": "Full address of the page, including https://.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "url"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Add a page to the knowledge base"
          }
        },
        {
          "name": "set_knowledge_tags",
          "title": "Set Access Tags on an entry",
          "description": "Restrict who can retrieve one knowledge base entry. A visitor must present a matching tag, signed by your own server, before the chatbot will use the entry. Send an empty list to make it public again. Access Tags needs the Enterprise plan.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "access_tags": {
                "description": "Tag names. An empty list makes the entry public.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "entry_id": {
                "description": "The entry id from list_knowledge.",
                "type": "string"
              }
            },
            "required": [
              "entry_id",
              "access_tags"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Set Access Tags on an entry"
          }
        },
        {
          "name": "start_crawl",
          "title": "Crawl a website into the knowledge base",
          "description": "Crawl a website and add its pages to the knowledge base. Runs in the background; check on it with list_crawls. Each plan caps the pages per crawl, and asking for more than the cap is refused.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "max_pages": {
                "description": "How many pages to take at most. Capped by the plan.",
                "minimum": 1,
                "type": "integer"
              },
              "start_url": {
                "description": "Where to start. Defaults to the website's own domain.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Crawl a website into the knowledge base"
          }
        },
        {
          "name": "list_crawls",
          "title": "List crawl jobs",
          "description": "List recent crawl jobs for one website with their status, how many pages they took, and why each one stopped.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many jobs to return (1-50, default 10).",
                "maximum": 50,
                "minimum": 1,
                "type": "integer"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List crawl jobs"
          }
        },
        {
          "name": "list_conversations",
          "title": "List recent conversations",
          "description": "List recent visitor conversations for one website, newest first, with the session id, message count and any email or phone the visitor gave.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "days": {
                "description": "How many days back to look (1-90, default 7).",
                "maximum": 90,
                "minimum": 1,
                "type": "integer"
              },
              "limit": {
                "description": "How many conversations to return (1-100, default 20).",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              },
              "with_leads_only": {
                "description": "Only return conversations where the visitor left an email or phone.",
                "type": "boolean"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List recent conversations"
          }
        },
        {
          "name": "get_conversation",
          "title": "Read one conversation",
          "description": "Read the full message history of one conversation, in order, from its session id.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many messages to return (1-200, default 100).",
                "maximum": 200,
                "minimum": 1,
                "type": "integer"
              },
              "session_id": {
                "description": "Session id from list_conversations.",
                "type": "string"
              }
            },
            "required": [
              "session_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Read one conversation"
          }
        },
        {
          "name": "list_leads",
          "title": "List captured leads",
          "description": "List the email addresses and phone numbers visitors left in chat, newest first, with the page they were on.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many leads to return (1-100, default 50).",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List captured leads"
          }
        },
        {
          "name": "get_analytics",
          "title": "Get chat analytics",
          "description": "Summarise one website's chat activity over a period: conversations, messages, leads captured, escalations, and the countries visitors came from.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "days": {
                "description": "How many days back to measure (1-90, default 30).",
                "maximum": 90,
                "minimum": 1,
                "type": "integer"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Get chat analytics"
          }
        },
        {
          "name": "list_knowledge_gaps",
          "title": "List knowledge gaps",
          "description": "List the Knowledge Gaps Asyntai recorded: real visitor questions the chatbot could not answer. Use this to find what to fill in with add_knowledge_text. Needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "days": {
                "description": "How many days back to look (1-90, default 30).",
                "maximum": 90,
                "minimum": 1,
                "type": "integer"
              },
              "include_resolved": {
                "description": "Include gaps already marked as resolved. Off by default.",
                "type": "boolean"
              },
              "limit": {
                "description": "How many gaps to return (1-100, default 25).",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List knowledge gaps"
          }
        },
        {
          "name": "list_images",
          "title": "List the images the chatbot can show",
          "description": "List the images the chatbot may show a visitor, with the description that tells it when each one is relevant.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List the images the chatbot can show"
          }
        },
        {
          "name": "add_image",
          "title": "Add an image the chatbot can show",
          "description": "Add an image the chatbot may show. The description is what the AI reads to decide when the image answers the question, so describe what it shows and when it helps.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "description": {
                "description": "What the image shows and when the chatbot should send it.",
                "type": "string"
              },
              "image_url": {
                "description": "Address of the image.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "image_url",
              "description"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Add an image the chatbot can show"
          }
        },
        {
          "name": "delete_image",
          "title": "Delete an image",
          "description": "Remove one image so the chatbot stops showing it.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "image_id": {
                "description": "Image id from list_images.",
                "type": "integer"
              }
            },
            "required": [
              "image_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Delete an image"
          }
        },
        {
          "name": "list_products",
          "title": "List the product cards",
          "description": "List the products the chatbot can show as cards, with price and links. Product Cards needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List the product cards"
          }
        },
        {
          "name": "add_product",
          "title": "Add a product card",
          "description": "Add a product the chatbot can show as a card. Needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "description": {
                "description": "Short description shown on the card.",
                "type": "string"
              },
              "image_url": {
                "description": "Address of the product image.",
                "type": "string"
              },
              "name": {
                "description": "Product name.",
                "type": "string"
              },
              "price": {
                "description": "Price as text, for example 29 EUR.",
                "type": "string"
              },
              "product_link": {
                "description": "Address of the product page.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "name"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Add a product card"
          }
        },
        {
          "name": "delete_product",
          "title": "Delete a product card",
          "description": "Remove one product so the chatbot stops offering it.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "product_id": {
                "description": "Product id from list_products.",
                "type": "integer"
              }
            },
            "required": [
              "product_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Delete a product card"
          }
        },
        {
          "name": "list_booking_types",
          "title": "List the booking types",
          "description": "List the appointment types visitors can book, with length, price and how many spots each has. Bookings needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List the booking types"
          }
        },
        {
          "name": "list_embeds",
          "title": "List the embeds",
          "description": "List the third-party tools embedded in the chat, such as a booking calendar or a form. Embeds needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List the embeds"
          }
        },
        {
          "name": "list_tickets",
          "title": "List support tickets",
          "description": "List support tickets raised from chat, with status, priority and the visitor's details. Needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many tickets to return (1-100, default 25).",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              },
              "status": {
                "description": "Only tickets with this status, for example open or resolved.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List support tickets"
          }
        },
        {
          "name": "list_webhooks",
          "title": "List webhooks",
          "description": "List the webhooks registered on this account. The signing secret is never returned; it is shown once, when the webhook is created.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {},
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List webhooks"
          }
        },
        {
          "name": "add_webhook",
          "title": "Add a webhook",
          "description": "Register a URL to receive events, for example every new message. Returns a signing secret once; store it, because it is never shown again. Needs a paid plan.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "events": {
                "description": "Event names to subscribe to.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "url": {
                "description": "HTTPS address that will receive the events.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "url",
              "events"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Add a webhook"
          }
        },
        {
          "name": "delete_webhook",
          "title": "Delete a webhook",
          "description": "Delete one webhook. Events stop reaching that address at once.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "webhook_id": {
                "description": "The webhook id from list_webhooks.",
                "type": "string"
              }
            },
            "required": [
              "webhook_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Delete a webhook"
          }
        },
        {
          "name": "list_active_sessions",
          "title": "List visitors chatting right now",
          "description": "List the visitors currently in a chat: which page they are on, their country, how long they have been there, and whether a human has taken the conversation over. Needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "limit": {
                "description": "How many sessions to return (1-100, default 25).",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List visitors chatting right now"
          }
        },
        {
          "name": "take_over_conversation",
          "title": "Take a conversation over from the AI",
          "description": "Stop the AI answering one conversation so a human can reply instead. The visitor is told a person has joined. Use send_agent_reply afterwards, and release_conversation when done. Needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "session_id": {
                "description": "Session id from list_active_sessions.",
                "type": "string"
              }
            },
            "required": [
              "session_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Take a conversation over from the AI"
          }
        },
        {
          "name": "release_conversation",
          "title": "Give a conversation back to the AI",
          "description": "Hand a taken-over conversation back to the AI, which answers the visitor again from the next message.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "session_id": {
                "description": "Session id of the conversation.",
                "type": "string"
              }
            },
            "required": [
              "session_id"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Give a conversation back to the AI"
          }
        },
        {
          "name": "send_agent_reply",
          "title": "Send a message to a visitor",
          "description": "Send a message, as a human agent, to a real visitor who is chatting right now. Take the conversation over first. The visitor sees this immediately, so show the user the exact wording and get their agreement before calling this.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "agent_name": {
                "description": "Name shown to the visitor. Defaults to the account's agent name.",
                "type": "string"
              },
              "message": {
                "description": "The text to send to the visitor.",
                "type": "string"
              },
              "session_id": {
                "description": "Session id of the conversation.",
                "type": "string"
              }
            },
            "required": [
              "session_id",
              "message"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Send a message to a visitor"
          }
        },
        {
          "name": "get_daily_report",
          "title": "Get the daily report setting",
          "description": "Say whether the daily email summary is on for one website, and when the last one went out.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Get the daily report setting"
          }
        },
        {
          "name": "set_daily_report",
          "title": "Turn the daily report on or off",
          "description": "Turn the daily email summary of chats on or off for one website. Needs the Standard plan or higher.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "enabled": {
                "description": "True to switch it on.",
                "type": "boolean"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "enabled"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Turn the daily report on or off"
          }
        },
        {
          "name": "list_audit_log",
          "title": "Read the audit log",
          "description": "Read the record of what changed on this account: who did it, when, and from where. Recorded on the Enterprise plan only.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "category": {
                "description": "Only entries in this category. Optional.",
                "type": "string"
              },
              "days": {
                "description": "How many days back to read (1-90, default 30).",
                "maximum": 90,
                "minimum": 1,
                "type": "integer"
              },
              "limit": {
                "description": "How many entries to return (1-100, default 50).",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Read the audit log"
          }
        },
        {
          "name": "list_team_members",
          "title": "List team members",
          "description": "List the people who share this account, what each may reach, and how many seats the plan allows.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {},
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List team members"
          }
        },
        {
          "name": "list_widget_translations",
          "title": "List the widget translations",
          "description": "List the languages the chat widget has its own wording for, with the greeting and agent name used in each.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List the widget translations"
          }
        },
        {
          "name": "set_widget_translation",
          "title": "Set the widget wording for one language",
          "description": "Set the chat widget's greeting, agent name and bubble text for one language. A visitor in that language sees this wording instead of the default.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "ai_support_name": {
                "description": "Agent name shown in the header.",
                "type": "string"
              },
              "initial_message": {
                "description": "The greeting the visitor sees first.",
                "type": "string"
              },
              "language_code": {
                "description": "Language code, for example de or fr.",
                "type": "string"
              },
              "notification_bubble_text": {
                "description": "Text of the notification bubble.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "language_code"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": true,
            "idempotentHint": true,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Set the widget wording for one language"
          }
        },
        {
          "name": "ask_ai",
          "title": "Ask the chatbot a question",
          "description": "Ask one website's chatbot a question and get the answer a real visitor would receive. Use this to test the bot. It spends one message from the account's monthly allowance, and it calls an external model provider.",
          "inputSchema": {
            "additionalProperties": false,
            "properties": {
              "message": {
                "description": "The question to ask, as a visitor would type it.",
                "type": "string"
              },
              "session_id": {
                "description": "Reuse the same value across calls to continue one test conversation. Omit to start a fresh one.",
                "type": "string"
              },
              "website_id": {
                "description": "Numeric id of the website, from list_websites. Omit to use the account's primary website.",
                "type": "integer"
              }
            },
            "required": [
              "message"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Ask the chatbot a question"
          }
        }
      ]
    },
    "name": "Asyntai",
    "note": "Indexed from the official MCP registry: facts and our own checks, not reviewed, so no score, grade or rank.",
    "packages": [
      {
        "registryType": "npm",
        "identifier": "@asyntai/mcp",
        "version": "1.0.1",
        "transport": "stdio"
      }
    ],
    "pageJsonUrl": "https://www.anchorterminal.com/tools/asyntai-support-agent.json",
    "popularity": {
      "npmWeekly": 34
    },
    "registryName": "com.asyntai/support-agent",
    "remotes": [
      {
        "type": "streamable-http",
        "url": "https://asyntai.com/mcp"
      }
    ],
    "repository": "",
    "reviewed": false,
    "slug": "asyntai-support-agent",
    "source": "the official MCP registry",
    "sourceUrl": "https://registry.modelcontextprotocol.io/v0.1/servers?search=com.asyntai/support-agent",
    "summary": "Run your website's AI support agent: knowledge, conversations, leads and live replies.",
    "updatedAt": "2026-09-02T08:41:04Z",
    "url": "https://www.anchorterminal.com/tools/asyntai-support-agent",
    "vendor": "asyntai.com",
    "vendorUrl": "https://asyntai.com/documentation/mcp/",
    "version": "1.0.0",
    "websiteUrl": "https://asyntai.com/documentation/mcp/",
    "where": "both",
    "why": [
      "vendor"
    ]
  }
}
