Repository navigation
MCP Client Setup
Slackquery uses remote MCP Streamable HTTP. A generic endpoint is:
https://slackquery.example.com/mcp
Replace the hostname with your deployment. Do not configure a stdio command, the Dagster URL, a health endpoint, or a legacy SSE endpoint.
Client schemas vary, but preserve these concepts:
- server name:
slackquery; - transport:
streamable-http,http, or the client's equivalent; - URL: the complete
/mcpendpoint; - optional bearer authorization header.
Conceptual unauthenticated configuration:
{
"mcpServers": {
"slackquery": {
"transport": "streamable-http",
"url": "https://slackquery.example.com/mcp"
}
}
}Conceptual authenticated configuration:
{
"mcpServers": {
"slackquery": {
"transport": "streamable-http",
"url": "https://slackquery.example.com/mcp",
"headers": {
"Authorization": "Bearer ${SLACKQUERY_BEARER_TOKEN}"
}
}
}
}Environment interpolation is client-specific. Use the client's protected secret store where available. Never commit or paste a literal bearer token.
From the same network context as the client:
curl -fsS https://slackquery.example.com/healthz
curl -fsS https://slackquery.example.com/readyzLiveness confirms the HTTP process. Readiness confirms that a published artifact can be opened read-only. Neither endpoint validates relevance quality, and readiness does not continuously probe query embedding.
The client should discover:
-
search_slack; -
get_slack_message; -
get_slack_thread; -
list_slack_scopes; - resource
slackquery://guide.
If these are absent, reload client configuration and verify current Streamable HTTP MCP support.
- Call
list_slack_scopeswith a small limit. - Search a known exact term with
search_slackinlexicalmode. - Search a paraphrased question in
semanticmode. - Repeat in
hybridmode and inspect component ranks and fused score. - Expand one promising result with
get_slack_messageorget_slack_thread.
Do not put real workspace, channel, user, message, or artifact identifiers in public configuration examples or issue reports.
Use search_slack in hybrid mode by default. Discover stable filters with
list_slack_scopes. Narrow workspace, channel, author, and time constraints before
raising limits. Use lexical mode for exact errors, references, URLs, filenames,
quotes, code, and acronyms; use semantic mode for paraphrased questions. Expand
only promising messages or threads. Preserve source metadata when citing results.
Scores are ranking signals, not probabilities. No result does not prove absence.
Accepts query, mode, optional scope filters, inclusive microsecond timestamp bounds, a result limit, and an opaque cursor. Hybrid is the default. The response identifies the immutable serving snapshot for traceability. A cursor is bound to that snapshot and the complete request; discard it after publication or request changes.
Returns stable scope references, display labels, coverage summaries, and first and last timestamps. Use stable references for filtering instead of mutable names.
Returns the exact document and optional bounded same-channel context. Channel adjacency does not imply thread membership.
Returns a selected thread chronologically. Use it before drawing conclusions about discussion context or sequence.
Archived messages may contain sensitive operational or personal content.
- Preserve equivalent access control in the MCP client and downstream system.
- Do not paste secrets or unrelated private messages into public issues or logs.
- Distinguish direct quotation from interpretation.
- Share permalinks only with recipients who have appropriate access.
- Never log authorization headers.
| Symptom | Resolution |
|---|---|
| Connection refused | Check routing, firewall, proxy, and service bind address. |
404 |
Use the complete /mcp URL. |
| Protocol mismatch | Select Streamable HTTP, not stdio or legacy SSE. |
401 |
Configure the bearer token through a protected secret field. |
| Semantic/hybrid error | Ask the operator to verify query-embedding health; lexical may still work. |
| Cursor rejected | Restart pagination after publication or request changes. |
See Retrieval and RRF and Troubleshooting.
slackquery wiki
🏠 Overview
🚀 Operate
🔎 Search internals
🔌 Integrate
Sister project