Tool reference
The MCP server exposes 21 tools. An assistant picks which to call from your request — you never name a tool yourself — but knowing what exists tells you what you can reasonably ask for, and what will not work.
Each tool is either read or write. Write tools need a connection with write access and an account role that allows writing; see permissions and safety.
Identifiers
Section titled “Identifiers”Records are addressed by prefixed ids, never database ids. Every list, search and get result carries them, which is what lets an assistant chain calls together — search, then fetch, then download — without you pasting an id out of the web UI.
| Prefix | Record |
|---|---|
q_ |
A question asked through ResponseHub |
kbi_ |
A knowledge base item |
qu_ |
A questionnaire |
rfp_ |
An RFP |
s_ |
A source |
Questions
Section titled “Questions”ask_question
Section titled “ask_question”Read. Asks ResponseHub a question, running the full answer pipeline against your knowledge base and sources. Returns the answer, a confidence rating and the references used.
| Parameter | Type | Notes |
|---|---|---|
question |
string | Required. The question to answer. |
answer_detail_level |
string | low, normal or high. Defaults to normal. |
custom_prompt |
string | Extra instructions to steer the answer. |
If the pipeline is still running when the tool returns, the result says so and
carries the question’s id — the assistant polls get_question with it.
get_question
Section titled “get_question”Read. Retrieves a question by id, with its answer, confidence and references as they now stand.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. For example q_abc123. |
Knowledge base
Section titled “Knowledge base”search_knowledge_base
Section titled “search_knowledge_base”Read. Semantic search across your approved knowledge base items, ranked by relevance. This is vector search, not keyword matching, so a question phrased differently from the stored item still finds it.
| Parameter | Type | Notes |
|---|---|---|
query |
string | Required. A natural-language query. |
limit |
integer | Defaults to 10. Values outside 1–25 are clamped, and the result says so. |
Only approved items are searchable. To read an item in any other state, fetch it
by id with get_knowledge_base_item.
get_knowledge_base_item
Section titled “get_knowledge_base_item”Read. Fetches a knowledge base item by id, in any state — including one just created and not yet approved.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. For example kbi_abc123. |
create_knowledge_base_item
Section titled “create_knowledge_base_item”Write. Creates a knowledge base item. The answer is optional: create the item with just a question and ResponseHub can draft the answer, exactly as it does in the web UI.
| Parameter | Type | Notes |
|---|---|---|
question |
string | Required. The question this item answers. |
answer |
string | The answer. Can be generated later instead. |
rationale |
string | Internal notes about the answer. |
New items are not approved, so they are not used for answering until someone approves them.
update_knowledge_base_item
Section titled “update_knowledge_base_item”Write. Updates an item. Only the fields supplied are changed — anything omitted is left alone, so a partial update never blanks a field by accident.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. |
question |
string | The question this item answers. |
answer |
string | The answer text. |
rationale |
string | Internal notes. |
applicable |
boolean | Whether the item applies to your organisation. |
auto_answer |
boolean | Whether it may be used to auto-answer questionnaire items. |
answer_detail_level |
string | low, normal or high, for regenerated answers. |
state |
string | The review state: approved, needs_input or new. |
Approving an item is an ordinary field update — state: "approved" — so “approve
this item” is a request an assistant can carry out.
Categories cannot be set through MCP. There is no tool for listing an account’s categories, so there would be no way for an assistant to discover a valid one.
delete_knowledge_base_item
Section titled “delete_knowledge_base_item”Write. Deletes an item.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. |
This is a soft delete — the item leaves the active knowledge base and can be restored in the web UI, or by support.
Questionnaires
Section titled “Questionnaires”list_questionnaires
Section titled “list_questionnaires”Read. Lists the account’s questionnaires with their status and completion stats, most recent first.
| Parameter | Type | Notes |
|---|---|---|
page |
integer | Defaults to 1. |
limit |
integer | Defaults to 20. Values outside 1–100 are clamped, and the result says so. |
get_questionnaire
Section titled “get_questionnaire”Read. Fetches one questionnaire, including its status and completion stats.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. For example qu_abc123. |
create_questionnaire
Section titled “create_questionnaire”Write. Starts a questionnaire from an XLSX or DOCX file. Question extraction
runs in the background — poll get_questionnaire to watch it progress.
| Parameter | Type | Notes |
|---|---|---|
filename |
string | Required, with its extension. |
file_url |
string | Preferred. An http(s) URL ResponseHub fetches the file from. |
content_base64 |
string | The file inline, base64-encoded. Only workable for tiny files. |
content_type |
string | Rarely needed — inferred from the extension. |
title |
string | Kept exactly as given. Omit it and one is generated from the document. |
description |
string | Optional. |
deadline |
string | An ISO 8601 date, YYYY-MM-DD. |
See uploading documents for why file_url is
the one that works in practice.
download_questionnaire
Section titled “download_questionnaire”Read. Exports a questionnaire with its answers merged back in, returned base64-encoded in the result.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. |
format |
string | original (default) keeps the uploaded format; csv exports a CSV. |
Every download through MCP is written to the audit trail, the same as a download from the web UI.
delete_questionnaire
Section titled “delete_questionnaire”Write. Deletes a questionnaire and its items.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. |
A soft delete, restorable in the web UI.
The RFP tools mirror the questionnaire tools exactly, with one addition.
list_rfps
Section titled “list_rfps”Read. Lists the account’s RFPs with their status and completion stats, most
recent first. Takes page and limit, as list_questionnaires does.
get_rfp
Section titled “get_rfp”Read. Fetches one RFP by id, including its status, context and completion stats.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. For example rfp_abc123. |
create_rfp
Section titled “create_rfp”Write. Starts an RFP from an XLSX or DOCX file. Item extraction runs in the background.
| Parameter | Type | Notes |
|---|---|---|
filename |
string | Required, with its extension. |
file_url |
string | Preferred. An http(s) URL ResponseHub fetches the file from. |
content_base64 |
string | The file inline, base64-encoded. Tiny files only. |
content_type |
string | Rarely needed. |
title |
string | Kept exactly as given. |
description |
string | Optional. |
deadline |
string | An ISO 8601 date. |
background |
string | Background context used to steer the answers. |
download_rfp
Section titled “download_rfp”Read. Exports an RFP with its answers, base64-encoded, in the original format or as CSV. Recorded in the audit trail.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. |
format |
string | original (default) or csv. |
delete_rfp
Section titled “delete_rfp”Write. Soft-deletes an RFP and its items.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. |
Sources
Section titled “Sources”list_sources
Section titled “list_sources”Read. Lists the account’s sources with their processing state, most recent first.
| Parameter | Type | Notes |
|---|---|---|
page |
integer | Defaults to 1. |
limit |
integer | Defaults to 20. Values outside 1–100 are clamped. |
get_source
Section titled “get_source”Read. Fetches one source, including how far through processing it is — which is how an assistant knows when an upload is ready to answer from.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. For example s_abc123. |
create_source
Section titled “create_source”Write. Uploads a policy or other document. ResponseHub reads it and prepares its content so answers can be drawn from it.
| Parameter | Type | Notes |
|---|---|---|
filename |
string | Required, with its extension. PDF, DOCX, DOC, ODT, RTF, PPTX and PPT are accepted. |
file_url |
string | Preferred. An http(s) URL ResponseHub fetches the file from. |
content_base64 |
string | The file inline, base64-encoded. Tiny files only. |
content_type |
string | Rarely needed. |
title |
string | Kept exactly as given. Omit it and one is generated from the document. |
description |
string | Optional. |
Processing runs in the background — poll get_source until it is ready to use.
delete_source
Section titled “delete_source”Write. Deletes a source and takes its content out of use for answering.
| Parameter | Type | Notes |
|---|---|---|
id |
string | Required. |
A soft delete, restorable in the web UI.
What is not here
Section titled “What is not here”There is no tool for questionnaire or RFP items — an assistant can start a questionnaire, watch it progress and download the finished file, but the question-by-question work of reviewing and approving answers stays in the web UI and the Chrome extension. There is no tool for creating accounts, managing members or reading billing either.
The JSON API covers considerably more ground. If an assistant cannot do something through MCP, that is where to look.