Search
The global search spotlight lets you quickly find resources, jump to pages, create new items, and browse documentation — all from a single overlay.
UI, API, and MCP
Search is available through three channels with the same core ranking behavior but different authentication/context:
| Channel | Entry point | Authentication | Account scope |
|---|---|---|---|
| UI Spotlight | Header search / ⌘K or Ctrl+K | Signed-in session (JWT) | Current workspace account |
| REST API | GET /api/search | X-API-Key | Account associated with API key |
| MCP | search MCP tool | X-API-Key (MCP transport) | Account associated with API key |
Opening Search
There are three ways to open the search spotlight:
- Keyboard shortcut — Press ⌘K (Mac) or Ctrl+K (Windows/Linux) from anywhere in the app.
- Search bar — Click the search input in the header (visible on desktop).
- Search icon — Tap the magnifying-glass icon in the header (visible on mobile).
Resource Search
Type at least two characters to search across all your resources by name or description. Results are ranked so the best matches appear first:
- Prefix match — resources whose name starts with your query.
- Substring match — resources whose name contains your query.
- Description match — resources whose description contains your query.
You can also paste a UUID directly into the search field to jump straight to that resource.
Account Scoping
Search results are always scoped to the account currently selected in the app header.
- In personal workspaces, search runs against your personal account.
- In organization workspaces, search runs against that organization account.
If a request references an account you do not have access to, the authenticated search API returns 404 Not Found.
Entity Type Filter
Prefix your query with type:<entity_type> followed by a space to restrict results to a single entity type. For example:
type:agent support— search for agents matching "support"type:knowledge_base faq— search for knowledge bases matching "faq"type:alert billing— search for alerts matching "billing"
Searchable Entity Types
| Type | Filter key | Description |
|---|---|---|
| Agent | type:agent | AI agents configured in your account |
| Knowledge Base | type:knowledge_base | Collections of content for agents |
| Content Source | type:source_connection | RSS feeds and websites |
| Solution | type:solution | Bundled agent configurations |
| Memory Bank | type:memory_bank | Conversation memory stores |
| Alert | type:alert | Monitoring alerts |
| API Key | type:api_key | API access keys |
| Governance Policy | type:governance_policy | Compliance and governance policies |
| MCP Client | type:mcp_client | Connected external MCP servers (matches name and URL) |
Typing a query also surfaces an MCP Servers group — the preconfigured server catalog. Selecting one jumps straight into the create-client flow pre-filled for that server (or opens its setup guide). This is reference data for adding a server, separate from the MCP Clients you've already connected (above).
Page Navigation
When search is open, you can also find top-level pages like Dashboard, Agents, Knowledge Bases, Sources, Settings, and more. Just start typing the page name.
Quick Actions
Type "create" or "new" to see quick actions for creating new resources:
- Create new Agent
- Create new Solution
- Create new Knowledge Base
- Create new Content Source
- Create new Memory Bank
- Create new Governance Policy
Documentation Search
The documentation itself is searchable from the spotlight — not just page titles, but the content of every docs page. Type a topic or a question (e.g. "API keys", "stop an agent from looping", "retention") and matching pages appear under a Documentation group; selecting one opens it in a new tab.
Two kinds of matches are combined and de-duplicated per page:
- Keyword — pages whose title or summary contains your words. These appear instantly as you type.
- Semantic — pages whose body content best answers your query, even when it doesn't use your exact words. These fill in a moment later.
Because semantic matching understands meaning rather than just text, a plain-language question usually surfaces the right page even if you don't know its title. When a result clearly maps to a specific section, the link jumps straight to that heading on the page.
Documentation search is also available outside the app — through the REST API (GET /api/docs-search) and the search_docs MCP tool — so agents and integrations can look up the docs too. Unlike resource search, documentation results are global (not account-scoped). See API Access and MCP Server below.
Recent Searches
Your last 5 search queries are saved locally and shown when you open the spotlight with an empty query. Recent searches are stored in your browser and are not synced across devices.
Keyboard Shortcuts
Press ? (question mark) anywhere in the app to open the keyboard shortcuts reference. Available shortcuts:
| Shortcut | Action |
|---|---|
| ⌘K / Ctrl+K | Open search |
| Esc | Close search or dialog |
| ↑ ↓ | Navigate results |
| Enter | Open selected result |
| ? | Toggle keyboard shortcuts dialog |
API Access
Search is also available through the public REST API:
curl -H "X-API-Key: YOUR_API_KEY" \
"https://api.seclai.com/api/search?q=my+agent&limit=10"
Query parameters:
| Parameter | Required | Description |
|---|---|---|
q | Yes | Search query (1–200 characters) |
limit | No | Maximum results (1–50, default: 10) |
entity_type | No | Filter by entity type (e.g. agent, knowledge_base) |
Response:
{
"results": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"entity_type": "agent",
"name": "My Support Agent",
"description": "Handles customer support queries"
}
]
}
For browser-session authenticated calls (JWT), Seclai also exposes:
GET /authenticated/search?q=...&account_id=...&limit=...&entity_type=...
In this endpoint, account_id is optional. If omitted, Seclai searches in your default account.
If an account_id is provided but not accessible to the user, this endpoint returns 404 Not Found.
To search the documentation instead of your resources, use GET /api/docs-search:
curl -H "X-API-Key: YOUR_API_KEY" \
"https://api.seclai.com/api/docs-search?q=rate+limits&mode=semantic&limit=8"
Query parameters:
| Parameter | Required | Description |
|---|---|---|
q | Yes | Search query (1–200 characters) |
mode | No | keyword (titles/summaries, default) or semantic (page body) |
limit | No | Maximum results (1–20, default: 8) |
Response — each result carries a doc_slug and an optional section anchor; build a link as https://seclai.com/docs/<doc_slug> (append #<anchor> when present). In semantic mode, highlight is the most relevant verbatim sentence from the page body (used as the snippet and to scroll to/highlight the match); it is null in keyword mode. score is a relevance value within a single mode and is not comparable across keyword and semantic — results are already returned best-first, so prefer the order over the raw score.
{
"results": [
{
"doc_slug": "search",
"title": "Search",
"snippet": "Use the global search spotlight to quickly find resources…",
"score": 0.82,
"anchor": "channels",
"highlight": "Use the global search spotlight to quickly find resources across your account."
}
]
}
Documentation results are global, so /api/docs-search is not account-scoped. The semantic mode is rate-limited per account; beyond the limit it transparently falls back to keyword.
MCP Server
If you use an MCP-compatible tool (such as Claude Code or Cursor), the search tool is available on the Seclai MCP server. It accepts the same query, entity_type, and limit parameters as the REST API and returns matching resources from your account.
Example MCP tool call:
{
"tool": "search",
"arguments": {
"query": "type:agent support",
"entity_type": "agent",
"limit": 10
}
}
To search the documentation from an MCP client, use the search_docs tool. It accepts query, mode (keyword or semantic), and limit (1–20, default 8), and returns the same fields as the REST endpoint: each result has a doc_slug and optional section anchor, plus a score and — in semantic mode — a highlight (the most relevant verbatim sentence; null for keyword):
{
"tool": "search_docs",
"arguments": {
"query": "how do alerts work",
"mode": "semantic",
"limit": 8
}
}
See the MCP Server documentation for setup instructions.