# Sobot MCP

> Sobot connects your AI agent directly to a major customer support platform. It lets you run complex operations—like checking live agent status, auditing chat history, or finding deep knowledge base articles—using nothing but natural conversation. You can list open tickets with `list_tickets`, get full details for any ticket using `get_ticket_details`, and even create new issues instantly via `create_ticket`.

## Overview
- **Category:** customer-support
- **Price:** Free
- **Tags:** ticketing-system, knowledge-base, agent-coordination, customer-service-automation, chat-history

## Description

Sobot hooks your AI agent right into a major customer support platform. Forget clicking around in dozens of web tabs; you just ask your agent to handle complex operations for your whole support team using natural conversation. It's like having an ops manager sitting next to you, ready to run reports or check on agents' status without ever needing you to touch the main dashboard.

### Managing Tickets
To keep track of the workflow, you can use `list_tickets` to get a list of all active customer support tickets, showing key info like their current status and when they were created. If you need to deep-dive into one specific issue, you run `get_ticket_details` using a ticket ID to pull every piece of information attached to it. You can also generate entirely new issues instantly with `create_ticket`, letting your agent log the problem straight into the system.

### Monitoring Agent Availability
The system lets you check out who's actually available. First, run `list_agents` to get an array listing every support person and their current status. If you need to know if a specific agent is online or busy right now, use `get_agent_status` with that agent’s name. This keeps the whole team coordinated so nobody misses a call.

### Deep Knowledge Retrieval
When someone asks a question, your agent doesn't guess; it looks up the answer. You start by calling `list_knowledge`, which gives you a searchable index of all the knowledge base articles and their titles available. Once you know what article you need, run `get_knowledge_detail` to retrieve the full, structured content for that specific topic.

### Auditing Interactions and Accounts
To audit how support is running, your agent can pull historical chat transcripts by calling `list_chat_history`, giving you a chronological list of past customer conversations. For big-picture performance metrics, use `get_org_summary` to generate an overview report summarizing overall organizational support activity. You can also get visibility into the user base itself; run `list_users` to retrieve a complete list of all registered customers and users in the system.

## Tools

### create_ticket
Creates a brand new support ticket record in the system.

### get_agent_status
Pulls the current online or busy status for a specific support agent.

### get_knowledge_detail
Retrieves the full text and details of a specified knowledge base article.

### get_org_summary
Generates an overview report summarizing overall organizational support activity metrics.

### get_ticket_details
Gets all the specific information associated with a single ticket ID.

### list_agents
Returns an array of all available support agents and their current status.

### list_chat_history
Retrieves a chronological list of past customer chat conversations for review.

### list_knowledge
Provides a searchable index listing all available knowledge base articles and their titles.

### list_tickets
Lists all active customer support tickets, showing key details like status and creation date.

### list_users
Retrieves a list of registered customers or users within the system.

## Prompt Examples

**Prompt:** 
```
List all active support tickets from Sobot.
```

**Response:** 
```
I've retrieved your active Sobot tickets. You have 15 pending tickets, including 'Login issue' and 'Refund request'. Would you like more details on any of them?
```

**Prompt:** 
```
Check if agent 'Mario' is currently online.
```

**Response:** 
```
I've checked the status for agent Mario. He is currently 'Online' and ready to take new chats. Would you like me to assign a ticket to him?
```

**Prompt:** 
```
Search the knowledge base for 'refund policy'.
```

**Response:** 
```
I've found an article titled 'Refund Policy and Procedures' in your Sobot knowledge base. It details the steps for processing refunds and the eligibility criteria. Shall I retrieve the full content for you?
```

## Capabilities

### Manage Ticket Lifecycle
You tell the agent to list, check details on, or create entirely new support tickets.

### Monitor Team Availability
The system checks if individual agents are currently online and ready to take chats using `get_agent_status` and `list_agents`.

### Retrieve Deep Knowledge Articles
You can search the knowledge base (`list_knowledge`) and pull the full, structured content of an article with `get_knowledge_detail`.

### Audit Support Interactions
The agent pulls historical chat transcripts or provides summaries of organization-wide support activity.

### Identify Users and Accounts
You can list all registered users/customers in the system using `list_users`.

## Use Cases

### The ticket needs more context.
A customer calls about a refund, but the agent can't find the necessary policy. Instead of leaving the customer on hold to search the manual, they ask their AI client: 'Find the refund rules.' The agent runs `list_knowledge`, finds the article, and executes `get_knowledge_detail`, pulling the exact process steps for the support engineer to read back.

### Need to staff up quickly.
It’s 3 PM, and three major tickets are stuck waiting for an agent. The manager asks their client: 'Who is available right now?' The agent runs `list_agents` and immediately tells the manager who can take a ticket, bypassing any manual status checks.

### A user reports a problem, but we don't know if they exist.
The team needs to validate if the person reporting the issue is even a registered customer. They run `list_users` first. If successful, they can then use the returned IDs in conjunction with `get_ticket_details` to confirm ownership and priority.

### End-of-day report required.
Instead of logging into three different reporting dashboards, the operations lead asks: 'Give me a summary of today's support volume.' The agent runs `get_org_summary`, providing immediate, high-level performance data without requiring manual data compilation.

## Benefits

- Get immediate visibility into team resources. Instead of checking a dashboard, ask the agent to run `get_agent_status` for any specific employee, confirming their availability in seconds.
- Stop sifting through emails for ticket data. Use `list_tickets` and then follow up with `get_ticket_details` to get all relevant customer info—all within a single prompt chain.
- Never waste time writing answers from scratch again. First, use `list_knowledge` to find the article title, then run `get_knowledge_detail` for the full text to draft a perfect response.
- Track team performance without manual reports. The agent runs `get_org_summary`, giving you high-level metrics on support volume and activity across your entire organization.
- Build better processes by auditing past work. Run `list_chat_history` to review exactly what was said, making it easier to spot systemic issues or gaps in knowledge articles.

## How It Works

The bottom line is that your AI client talks directly to Sobot's API layer, running specific tools in response to simple language prompts.

1. Subscribe to this server on Vinkius. Enter your Sobot App ID and App Key.
2. Connect your preferred AI client (Claude, Cursor, etc.) to the MCP Server endpoint.
3. Start by prompting the agent with a task, like 'What are my open tickets?' The agent runs `list_tickets` and gives you the data.

## Frequently Asked Questions

**How do I check if a support agent is online using `get_agent_status`?**
You simply ask your AI client to run `get_agent_status` and provide the name or ID of the agent. The tool returns their current status (e.g., Online, Busy) directly.

**What is the difference between `list_tickets` and `get_ticket_details`?**
`list_tickets` shows you a summary of many tickets—like a list view with ID and status. You run `get_ticket_details` when you know the specific ticket ID and need all the deep, granular information about that one issue.

**Can I use Sobot to find policy details? Which tool should I use?**
Yes. First, run `list_knowledge` to search titles for keywords like 'refund.' Once you find the article title, use `get_knowledge_detail` to pull the actual text content.

**Do I need to list users before creating a ticket?**
No. You can run `create_ticket` immediately. However, if you need to verify who is filing the ticket or needs service, running `list_users` first helps confirm their identity.

**What happens if I run `create_ticket` but don't include a priority level?**
The tool returns an explicit validation error. It tells you exactly which required field is missing or improperly formatted, so you know immediately what to fix.

**When I use `list_chat_history`, what data points can my agent access?**
The history retrieval gives you the timestamp, the user ID, and the full message content for every exchange. You get a clear record of who said what and when.

**How do I ensure Sobot is connected properly before running `list_tickets`?**
You must provide both your Sobot App ID and the corresponding App Key in the client configuration. The agent will fail if either key pair isn't set up correctly.

**Can I use `get_org_summary` to track performance across multiple departments?**
It provides high-level metrics, but you must scope the request by department ID or team name. The summary is limited to the specific organizational segment you query.

**How do I obtain my Sobot App ID and Key?**
You need to contact your Sobot business manager or support personnel to apply for your unique `appid` and `app_key`.

**Can I check if an agent is currently online?**
Yes. Use the `get_agent_status` tool with the specific agent ID to retrieve their real-time status, including whether they are online, busy, or offline.

**Is it possible to retrieve knowledge base articles through the agent?**
Yes! You can list available articles using `list_knowledge` and retrieve the full content of a specific document using the `get_knowledge_detail` tool.