Servidor MCP

SingChat

org.singchat/singchat
Negocio y operaciones Comunicación Público y accesible MCP 2025-11-25

Qué hace este MCP

Sets up and manages an AI-supported customer chat workspace, knowledge base, FAQs, conversations, replies, analytics, and website embeds.

add_knowledge
Add knowledge
Train the AI agent by adding a knowledge source. type='url' crawls a website (up to 50 pages, fewer when the workspace knowledge-base quota is nearly full); type='qa' stores a single question/answer pair. Ingestion is asynchronous, the source starts as PENDING; poll `list_knowledge` for READY status.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['type'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': "Website root URL to crawl. Required when type='url'."}, 'type': {'enum': ['url', 'qa'], 'type': 'string', 'description': "'url' to crawl a website, or 'qa' to add a question/answer pair."}, 'answer': {'type': 'string', 'description': "The answer. Required when type='qa'."}, 'question': {'type': 'string', 'description': "The question. Required when type='qa'."}}}
claim_account
Claim SingChat account
Return the link to claim (permanently secure) this SingChat workspace by setting an email and password. Use this for workspaces that were auto-created via MCP so the user does not lose access. The link is single-use and expires after 15 minutes. Requires an authenticated legacy workspace.
Esquema de entrada
{'type': 'object', 'properties': {}}
configure_agent
Configure AI agent
Configure this workspace's AI support agent. All fields are optional, only the fields you pass are updated; the rest keep their current values. Call with no fields to just read back the current configuration. Does not touch or return any API keys.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'model': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Chat model id, e.g. gpt-4o-mini.'}, 'enabled': {'type': 'boolean', 'description': 'Turn the automated AI agent on (true) or off (false).'}, 'providerMode': {'enum': ['platform', 'byok'], 'type': 'string', 'description': "'platform' = platform-hosted keys (billed via AI credits); 'byok' = bring your own key."}, 'systemPrompt': {'type': 'string', 'maxLength': 8000, 'minLength': 1, 'description': "The agent's system prompt / persona and answering rules."}, 'greetingMessage': {'type': 'string', 'maxLength': 2000, 'description': 'First message visitors see when they open the chat. Pass an empty string to clear it.'}}}
fetch
Fetch
Fetch the full text of a single document by id, using an id returned by the search tool. With a workspace API key this reads a knowledge document from that workspace; without a key it reads a SingChat help article. Returns id, title, text, url, and optional metadata.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'The document id returned by the search tool.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'title', 'text', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'text': {'type': 'string'}, 'title': {'type': 'string'}, 'metadata': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}}, 'additionalProperties': False}
get_analytics
Get Analytics
Return a compact analytics summary for this workspace over the last `days` days (default 30): conversation counts + resolution rate, message volume + AI share, plus a live snapshot of today (UTC).
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'days': {'type': 'integer', 'default': 30, 'maximum': 365, 'minimum': 1, 'description': 'Look-back window in days for the conversation/message stats (default 30).'}}}
get_conversation
Get conversation
Fetch a single conversation with its contact details and the most recent messages (oldest→newest).
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['conversationId'], 'properties': {'conversationId': {'type': 'string', 'minLength': 1, 'description': 'The conversation id (from list_conversations).'}}}
get_embed_snippet
Get widget embed snippet
Return the SingChat chat-widget embed code for this workspace's web inbox, in three flavors: plain HTML, React (useEffect), and Next.js (next/script). Requires a workspace API key. Optionally pass `platform` to get just one flavor.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'platform': {'enum': ['html', 'react', 'next'], 'type': 'string', 'description': 'Which snippet to return. Omit to get all three.'}}}
list_conversations
List conversations
List the workspace's support conversations (agent/inbox view), newest activity first. Optionally filter by status or a free-text search over the contact name/email and last message. Returns a compact list: id, contact name, status, unreadCount, last message preview, updatedAt.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 200, 'description': 'Max conversations to return (default 100).', 'exclusiveMinimum': 0}, 'search': {'type': 'string', 'description': 'Free-text match on contact name/email and the last message preview.'}, 'status': {'enum': ['OPEN', 'PENDING', 'RESOLVED', 'SNOOZED'], 'type': 'string', 'description': 'Only conversations with this status.'}}}
list_knowledge
List knowledge
List all knowledge documents for this workspace with their processing status (PENDING | PROCESSING | READY | FAILED) and chunk counts. Use this to check whether items added via add_knowledge have finished training.
Esquema de entrada
{'type': 'object', 'properties': {}}
manage_faq
Manage FAQ
List, create, update, or delete this workspace's FAQ items (shown in the chat widget and usable by the AI agent). Set `action` to 'list' | 'create' | 'update' | 'delete'. 'create' needs `question` + `answer`; 'update' and 'delete' need `id`.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['action'], 'properties': {'id': {'type': 'string', 'description': "FAQ item id. Required for 'update' and 'delete'."}, 'action': {'enum': ['list', 'create', 'update', 'delete'], 'type': 'string', 'description': 'Which FAQ operation to run.'}, 'answer': {'type': 'string', 'maxLength': 4000, 'minLength': 1, 'description': "Answer text. Required for 'create'; optional for 'update'."}, 'enabled': {'type': 'boolean', 'description': "Whether the FAQ item is visible/active. Optional for 'create' and 'update'."}, 'question': {'type': 'string', 'maxLength': 500, 'minLength': 1, 'description': "Question text. Required for 'create'; optional for 'update'."}}}
ping
Ping
Health check for the SingChat MCP server. Returns 'pong' and whether this request is authenticated to a workspace.
Esquema de entrada
{'type': 'object', 'properties': {}}
reply_to_conversation
Reply to conversation
Send an agent reply through a supported SingChat real-time inbox. This takes the conversation over from the AI and broadcasts the message to the visitor and agent inbox. Email, Telegram, and WhatsApp conversations are rejected before any change.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['conversationId', 'content'], 'properties': {'content': {'type': 'string', 'minLength': 1, 'description': 'The reply text to send to the visitor.'}, 'conversationId': {'type': 'string', 'minLength': 1, 'description': 'The conversation id to reply in.'}}}
resolve_conversation
Resolve conversation
Mark a conversation as RESOLVED (closes it). The visitor's widget will no longer show it as active.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['conversationId'], 'properties': {'conversationId': {'type': 'string', 'minLength': 1, 'description': 'The conversation id to resolve.'}}}
search
Search
Search SingChat for relevant documents. When called with a workspace API key, this searches that workspace knowledge base; without a key it searches SingChat's own help content (what SingChat is, adding the chat widget, MCP setup, free tier, AI training, channels, white label, pricing). Returns a list of results with id, title, and url. Use the fetch tool with a result id to read the full text.
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'The search query or user question.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'title': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
search_knowledge
Search knowledge
Semantic search over the workspace knowledge base. Returns the most relevant chunks (with source document title and similarity score) for a query. Only searches documents that have finished training (status READY).
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'topK': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Max number of chunks to return (default 5).'}, 'query': {'type': 'string', 'minLength': 1, 'description': 'The search query / user question.'}}}
set_keywords
Add keyword auto-reply
Add a keyword auto-reply rule: when an inbound message matches any of the keywords, the bot replies with the given text. Good for canned FAQ-style triggers (e.g. keyword 'invoice' -> 'Download it from the billing page').
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['keywords', 'reply'], 'properties': {'reply': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'The reply text to send.'}, 'keywords': {'type': 'array', 'items': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'maxItems': 20, 'minItems': 1, 'description': 'Trigger words/phrases (case-insensitive).'}, 'matchType': {'enum': ['CONTAINS', 'EXACT'], 'type': 'string', 'description': 'CONTAINS (default) = keyword appears anywhere in the message; EXACT = whole message equals the keyword.'}}}
singchat_setup
Set up SingChat
Get the user up and running with SingChat live-chat. Call this FIRST. If no authenticated workspace is configured, this creates a brand-new free workspace and returns a short-lived, single-use browser claim link plus the website embed snippet. The user chooses their own sign-in details in the browser; no reusable credentials are returned to the model. If a workspace is already authenticated, it returns THIS workspace's embed snippet and dashboard link (it never creates a duplicate workspace).
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'name': {'type': 'string', 'maxLength': 120, 'description': 'Optional workspace/brand name for a newly created workspace. Ignored if a key is already set.'}}}
Modificado
add_knowledge
23 de September de 2026 a las 02:50
Añadido
fetch
17 de September de 2026 a las 12:54
Añadido
search
17 de September de 2026 a las 12:54
Añadido
get_analytics
17 de September de 2026 a las 12:54
Añadido
manage_faq
17 de September de 2026 a las 12:54
Añadido
set_keywords
17 de September de 2026 a las 12:54
Añadido
configure_agent
17 de September de 2026 a las 12:54
Añadido
search_knowledge
17 de September de 2026 a las 12:54
Añadido
list_knowledge
17 de September de 2026 a las 12:54
Añadido
add_knowledge
17 de September de 2026 a las 12:54
Añadido
resolve_conversation
17 de September de 2026 a las 12:54
Añadido
reply_to_conversation
17 de September de 2026 a las 12:54
Añadido
get_conversation
17 de September de 2026 a las 12:54
Añadido
list_conversations
17 de September de 2026 a las 12:54
Añadido
claim_account
17 de September de 2026 a las 12:54
Añadido
get_embed_snippet
17 de September de 2026 a las 12:54
Añadido
singchat_setup
17 de September de 2026 a las 12:54
Añadido
ping
17 de September de 2026 a las 12:54