SearchStack
dev.searchstack/searchstackManaged search API: full-text, vector, geo and image search over one JSON API, driven via MCP.
Tools · 88
Permanently delete a Search Result.
Retrieve the details of a List.
Add a Contributor. Contributors can add fields and search results to a List but cannot make breaking changes.
Remove a Resource. Breaking change: bumps the List version.
Image-similarity search of a Group using an absolute image URL. POST variant accepting a SearchByImageRequest body.
Start an asynchronous batch Judge run over a candidate set. Returns a run_id to poll with JudgeRunStatus; results are produced off the request path.
Image-similarity search of a List using an absolute image URL. POST variant accepting a SearchByImageRequest body.
Create a Searchable field.
Create a bring-your-own LLM judge: a post-search filter that runs your LLM over each candidate and returns a schema-validated verdict. The API key is verified against the provider on create.
Remove the Coordinates field from a List. Breaking change: bumps the List version.
Get a curated library of worked request/response examples for the Search Stack Public API.
Clone a Group into a new Group, copying its configuration and member Lists. By default members are re-pinned to their latest version.
Typeahead suggestions within a List version. Returns an array of dictionaries (each dictionary is a suggested Search Result's fields).
Synchronously evaluate a Judge against a single sample candidate — the prompt/schema tuner. Does not persist a run.
List every searchable membership version of a Group. Pass one as group_version to search a frozen set of records.
Queue a background job to soft delete (set active to false on) every Search Result in a List that matches the filter. A filter is required (an empty filter would match the whole List). Returns 202 Acc…
Image-similarity search of a Group using a base64-encoded image. POST variant accepting a SearchByImageBase64Request body.
Get the member Lists (and pinned versions) that a specific group_version searches.
Get an eval set's score history, newest first, paged by an opaque continuation token.
Remove a List from a Group.
Restore a historical membership version as the Group's new current_version (roll-forward, not rewind). Member Lists deleted since that version are skipped and returned in skipped_lists.
Queue a background job to permanently delete every Search Result in a List that matches the filter. A filter is required (an empty filter would match the whole List). Returns 202 Accepted once queued.
Create an eval set against a pinned list/group version. The version is frozen to a concrete number; a pin fixes WHICH RECORDS are searched, not the results (records, embeddings, model and reranker are…
Create a List. A List is a collection of related Search Results.
Rename an existing Searchable field. Breaking change: bumps the List version.
Image-similarity search of a Group using a base64-encoded image. Hits include 'list_name'.
Edit a Group's default search/suggest size and distance unit.
Typeahead suggestions across all Lists in a Group. Requires the 'list-group:read' permission.
Detach the reranker from a Group, reverting to score-based ordering.
Transfer a Group and its member Lists to a different subscription.
Records a click-through on a Group search result for analytics, correlated to its query by query_id.
Poll a batch Judge run: status, tally (processed/passed/errored) and the per-candidate verdicts persisted so far.
Bulk insert Search Results, also creating any missing fields from the supplied dictionaries.
Bump a Group's version: re-pins every member List to its latest version and advances current_version. A no-op when every member is already current.
Image-similarity search of a Group using an absolute, publicly reachable image URL. Hits include 'list_name'.
Restore a historical schema version (facets, searchable fields, resources) as the List's new latest version (roll-forward, not rewind). Schema only — Search Result data is not versioned.
Add a List (at a version) to a Group.
Free-text and/or vector search of a List version. POST variant accepting a SearchOptions body. Use when filter/radius strings are long enough to risk URL limits.
Add a Coordinates field to a List, enabling geographical queries.
Start an asynchronous eval run: each query is searched against the pinned records and its hits scored by the judge. Returns a run_id to poll with EvalRunStatus plus an up-front estimate of the billed …
Extract text from PDF documents attached to a Search Result. Only available when the List's model declares a positive MaxDocumentPages limit.
Retrieves the details of an Account by name.
Rename an existing Facet. Breaking change: bumps the List version.
Bulk insert Search Results into an existing List. Each item is a free-form field dictionary matching the List's fields.
Create a single Search Result.
Get the Public API self-describing manifest (auth, error codes, MCP integration guidance). Call once per session.
Get a Group's configuration, member Lists and IP whitelist.
Poll one eval run: lifecycle status, the environment it ran under (model/reranker/judge), the tally counts and rates, and the per-query rows.
Add an IP address to a Group's access whitelist.
Search analytics for a Group over a UTC date range: total searches, zero-result searches, click-through rate, and the top searches / top zero-result searches. Dates are yyyy-MM-dd; defaults to the las…
Attach a bring-your-own reranker to a Group.
Remove an IP address from a Group's access whitelist.
Rename an existing Resource. Breaking change: bumps the List version.
Permanently delete a media item from a media store.
Directly update the text and image vectors of an existing Search Result. The List must not be attached to a model.
Create a Resource. A Resource is a non-searchable, non-filterable field (often a URL).
Get the Public API discovery catalog (IETF API Catalog draft) with links to OpenAPI, docs, manifest and examples.
Delete an eval set and cascade its runs and per-query rows.
Delete a Judge.
Find Search Results within a List that are vector-similar to a given seed Search Result. POST variant accepting a RelatedOptions body.
Free-text and/or vector search across a Group of Lists. POST variant accepting a SearchOptions body.
Remove a Contributor from a List.
Image-similarity search of a List using a base64-encoded image. Use when the image cannot be fetched by URL.
Get an eval set's configuration (pinned target, judge, context and query cases).
Get a Judge's configuration (provider, model, instructions, output schema, pass field).
Typeahead suggestions within a List version. POST variant accepting a SuggestOptions body. Use when filter/radius strings are long enough to risk URL limits.
List the distinct values of a Facet on a List version. Useful for building filter UIs before searching. Requires the search-result:read permission, like the search tools.
Search analytics for a List over a UTC date range: total searches, zero-result searches, click-through rate, and the top searches / top zero-result searches. Dates are yyyy-MM-dd; defaults to the last…
Image-similarity search of a List using an absolute, publicly reachable image URL.
Create a Facet. A Facet is a filterable field (e.g. brand, color, price, category).
Permanently delete a List.
List the bring-your-own LLM judges configured for an Account (secret API keys omitted).
Edit the properties of an existing Search Result.
Edit List defaults and settings.
Free-text and/or vector search of a List version. Returns a SearchResponse JSON document with a 'results' array and 'count'.
Retrieves the account name of the currently authenticated API key.
Remove a Facet. Breaking change: bumps the List version.
Create a Group. A Group combines multiple Lists for cross-list searching.
Typeahead suggestions across all Lists in a Group. POST variant accepting a SuggestOptions body.
Bootstrap an eval set from prior retrieve-then-judge runs: each source run replays its search as one eval query, and the pinned target and judge are taken from those runs (which must all share one tar…
Free-text and/or vector search across a Group of Lists. Hits include 'list_name' so you can tell which list each hit came from.
Remove the embedding model from a Group, reverting it to keyword search.
Set the embedding model for a Group. Member Lists are re-embedded asynchronously.
Find Search Results within a List that are vector-similar to a given seed Search Result. Use for 'related items' / 'more like this' flows.
Remove a Group.
Remove a Searchable field. Breaking change: bumps the List version.
List the eval sets configured for an Account. An eval set is a named relevance test: query cases pinned to a list/group version and scored by a judge, with a score history.
Records a click-through on a List search result for analytics, correlated to its query by query_id.
Similar MCP servers embedding-nearest
How to use
Add to your Claude Desktop / Cursor / Cline MCP config:
{
"mcpServers": {
"searchstack": {
"url": "https://mcp.searchstack.dev",
"transport": "http"
}
}
}