# ThinkStack MCP

> ThinkStack MCP Server lets you programmatically manage AI chatbots and their knowledge bases through your agent. Use it to list, add, or remove documentation sources; check conversation history; and send queries to any bot in real time. It gives your AI client full control over the source material and operational state of your bots.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** thinkstack, chatbot-api, ai-manage, bot-actions, knowledge-base-sync, conversational-ai, chat-query-tools, customer-experience, mcp

## Description

**ThinkStack MCP Server - Manage Bots & Knowledge**

You're not just talking to a chatbot; you're running an operation. This server lets your agent treat AI chatbots like services you can fully manage from the backend. You gain direct, programmatic control over everything—from which knowledge sources are feeding their answers to reviewing every single conversation thread.

It gives your client total command of the bot's operational state and its core data. Here’s what you get access to:

**Configuring and Checking Bots**

To see what bots you've got running, just run `list_bots`; it spits out a list of every single chatbot configured under your account. Need the deep details on one specific bot? You use `get_bot` to pull detailed metadata about that named instance. Before you do any heavy lifting, you should check if the whole thing's up by calling `check_thinkstack_status`. That simple call confirms the ThinkStack API is online and ready for work.

**Controlling Knowledge Sources**

ThinkStack lets you dictate exactly what material these bots use. You can see every single piece of documentation attached right now using `list_sources`, which shows a list of all the URLs or documents currently feeding your bots. If you find some old, dusty info that needs to go, you run `delete_source` and permanently yank it out of the bot's reference base. Want to add new material? You use `add_source`; just give it a URL or a document path, and it crawls that stuff, adding it as fresh knowledge for your bots.

**Querying and Interacting Live**

When you want an immediate answer, you send a message directly using `send_query`. This sends the prompt to the chatbot and gets a context-aware response back right away. For knowing what tools are available, run `list_actions`; this shows every external API function—like booking calendars or checking inventory—that your chatbot can actually trigger when prompted.

**Auditing Conversations**

You gotta keep track of who's talking to whom and what they talked about. To see a list of past chats, you run `list_conversations`. This gives you the metadata for all those sessions, specifically providing the session ID you need for the next step. Once you have that ID, you use `get_conversation` to pull up the full message history and all the user details for that single chat session. It’s your complete audit trail.

**Summary of Control Flow**

This server lets you list every bot (`list_bots`), get detailed info on one (`get_bot`), and then send it a prompt to get an answer (`send_query`). Meanwhile, if the knowledge is wrong, you can use `list_sources` and tell it to update itself with new content using `add_source`, or clean up old stuff with `delete_source`. You've got full visibility over the system status via `check_thinkstack_status`, and you never lose a conversation because you can list all past chats (`list_conversations`) and retrieve the full thread details whenever you need it.

## Tools

### add_source
Crawls a provided URL or document path and adds it as new knowledge material for the bot.

### check_thinkstack_status
Runs a simple check to confirm that the ThinkStack API is online and ready for use.

### delete_source
Permanently removes an existing knowledge source from the bot's documentation base.

### get_bot
Retrieves detailed metadata about a specific, named chatbot instance.

### get_conversation
Pulls the full message history and user details for a single chat session.

### list_actions
Lists all external API actions that the chatbot can trigger (like sending an email or creating a record).

### list_bots
Returns a list of every single chatbot configured under your ThinkStack account.

### list_conversations
Lists metadata for all past chat sessions, helping you find the session ID needed for `get_conversation`.

### list_sources
Shows a list of every knowledge source (URLs/documents) currently attached to your bots.

### send_query
Sends a message directly to the chatbot and gets an immediate, context-aware response.

## Prompt Examples

**Prompt:** 
```
List all my chatbots in ThinkStack.
```

**Response:** 
```
You have 3 chatbots: 'Support Bot' (24 sources, 1,250 conversations), 'Sales Assistant' (8 sources), and 'Onboarding Guide' (12 sources). Which one would you like to query?
```

**Prompt:** 
```
Ask my Support Bot: 'How do I reset my password?'
```

**Response:** 
```
Support Bot says: 'To reset your password, go to Settings > Security > Change Password. If you forgot your password, click Forgot Password on the login page.' Want to ask another question?
```

**Prompt:** 
```
Add docs.example.com as a knowledge source for my Sales bot.
```

**Response:** 
```
URL added successfully. ThinkStack is now crawling docs.example.com — 42 pages detected. The bot's knowledge base will be updated within minutes. Would you like to test a query?
```

## Capabilities

### Query Chatbots
Send a prompt to a specific chatbot and receive an AI-generated response based on its configured knowledge base.

### Manage Knowledge Sources
Add new URLs or documents to the bot's knowledge base, or remove old sources entirely.

### List and Configure Bots
Retrieve a list of all available chatbots and get detailed configuration information for any single bot.

### Review Conversation History
Pull up details about past chat sessions, including full message threads and user context.

### List Available Tools/Actions
See all the external API actions a chatbot has configured (e.g., booking calendars or checking inventory).

## Use Cases

### Debugging an Off-Topic Answer
The support team gets a vague answer from 'Support Bot.' Instead of just retrying the query, they first run `list_sources` to check if the bot is pointing to outdated documentation. They realize a key policy document was removed using `delete_source`, solving the knowledge gap.

### Onboarding New Documentation
The product team just wrote a new pricing guide. Instead of manually uploading it, they use their agent to run `add_source` on the document's URL. The system crawls and indexes the material automatically, making it available for `send_query` within minutes.

### Reviewing Failed Transactions
A user reports a billing issue. The agent first uses `list_conversations` to find the ID of the chat that happened last week. Then, running `get_conversation` pulls up the full context, showing exactly where the bot failed and what actions it was supposed to take.

### Testing Bot Functionality
A developer needs to test a new feature without affecting live data. They use `list_bots` to select their sandbox agent, then manually run `send_query` with specific inputs to verify the expected response flow.

## Benefits

- Know exactly what your bot knows. Use `list_sources` to see every URL or document currently indexed before you trust its answer.
- Audit chat performance with `get_conversation`. Instead of relying on memory, you can pull the full message history and user metadata for any session.
- Stop guessing if a feature exists. Run `list_actions` to view all external API endpoints your bot is wired to—whether it's booking or checking inventory.
- Manage the source material programmatically. If documentation changes, you can use `delete_source` and `add_source` via your agent workflow instead of logging into a dashboard.
- Track everything. Use `list_bots` to see all active agents in one place, ensuring you're querying the right bot for the job.

## How It Works

The bottom line is that you treat the entire chatbot system as a database layer, managing sources and state before querying.

1. 1. Subscribe to this server and retrieve your ThinkStack API Key.
2. 2. Configure your agent client (Claude, Cursor, etc.) with the key.
3. Use tools like `list_bots` or `add_source` directly in conversation to manage the AI infrastructure.

## Frequently Asked Questions

**How do I list all my chatbots with ThinkStack MCP Server?**
Run the `list_bots` tool. This returns a manifest of every bot name and basic metadata under your account, letting you know exactly which bot to query next.

**What is the best way to update the knowledge base using ThinkStack MCP Server?**
You should use `add_source`. Just provide the URL or document path, and the tool handles the crawling and indexing process. It’s much cleaner than manual uploads.

**Can I view old chat records using ThinkStack MCP Server?**
Yes, you can first use `list_conversations` to get a list of IDs. Then, pass one of those IDs into the `get_conversation` tool to pull up the full message history.

**Do I need to check status before querying with ThinkStack MCP Server?**
It's best practice. Always run `check_thinkstack_status` first. This prevents your agent from failing mid-workflow due to a temporary API outage.

**How do I authenticate my AI client with ThinkStack MCP Server?**
You must retrieve an API Key from your ThinkStack dashboard. This key provides the necessary credentials for your AI agent to connect and execute tools on your behalf.

**What does the `list_actions` tool do in ThinkStack MCP Server?**
The `list_actions` tool shows all configured REST API actions available for your chatbots. You use this list to see which external functions, like sending emails or updating records, your AI agent can trigger.

**How do I audit the knowledge sources using ThinkStack MCP Server?**
Use the `list_sources` tool to retrieve a comprehensive list of all indexed knowledge bases. This allows you to verify which URLs or documents are currently contributing data to your chatbots.

**What affects the response time when I use `send_query` with ThinkStack MCP Server?**
The complexity and volume of retrieved context dictate the speed of the AI response. Keeping queries focused and ensuring sources are indexed helps maintain fast, reliable query performance.

**How do I query my chatbot via AI agent?**
Use the `send_query` tool with the bot ID and your message. The chatbot responds based on its trained knowledge base.

**Can I manage knowledge sources programmatically?**
Yes. Use `add_source` to add new URLs, `list_sources` to browse, and `delete_source` to remove outdated sources from any chatbot.

**How do I review chat conversations?**
Use `list_conversations` to see all chats for a bot, then `get_conversation` to read the full message history of any specific session.