Documentation Index
Fetch the complete documentation index at: https://docs.q-uestionable.ai/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Python 3.11 or later
- uv (recommended) or pip
- Node.js / npm — MCP server targets are typically npm packages. Install the example target used below with
npm install -g @modelcontextprotocol/server-memory. - LLM provider API key (optional) — Required only for
injectcampaigns andchainexecution. q-ai supports 100+ providers via litellm. Store credentials in the OS keyring or set environment variables. See Configure a provider below. - sentence-transformers + chromadb (optional) — Required only for
rxpmodule. Install withpip install q-uestionable-ai[rxp].
Install
Configure a provider (optional)
If you plan to run injection campaigns or chain analysis, set up a provider credential. q-ai supports 100+ providers via litellm. Store your API key in the OS keyring using the provider name:provider/model format (e.g., anthropic/claude-sonnet-4-20250514, openai/gpt-4o, groq/llama-3.3-70b-versatile).
Run your first scan
Pick a target server
You can scan any MCP server you have permission to test. This guide uses the
official MCP memory server as an example. You don’t need to start the server
manually — q-ai spawns it via the
--command flag.Install the example target if you don’t have one:Run the scan
q-ai launches the server as a child process, connects over stdio,
enumerates its tools and resources, then runs all 10 scanner modules
against it — each mapped to the OWASP MCP Top 10 and MITRE ATLAS.The transport is inferred automatically — a URL is treated as SSE or Streamable HTTP, a command string as stdio. Override with
--transport if needed.Enumerate a server
Before a full scan, you can quickly check what a server exposes:Import external results
If you already use Garak, PyRIT, or any SARIF-producing tool, import their results into qai and associate them with a target. Imported findings inform which inject payloads are prioritized when you run campaigns against that target.Launch the web UI
qai findings list).
Use --port to specify a port, or --no-browser to start the server without opening a browser.
Try other modules
Next steps
- Core Concepts — MCP protocol, OWASP and MITRE ATLAS mapping, module methodologies, threat model
- Audit CLI Reference — full scan options and reporting
- IPI Overview — indirect prompt injection testing
- CXP Overview — context file poisoning for coding assistants