Tools reference

Complete reference of every tool the GroupDocs.Search MCP server exposes to AI agents, with parameters, example prompts, and results. Captured from a live tools/list call against server version 26.10.1 (raw capture: tools-list.generated.json in this section’s source).

ToolWhat it does
add_to_indexIndexes a file or folder from the storage folder into a named index (created if missing)
searchFinds the documents that match a query — words, phrases, boolean, fuzzy, date and number ranges
get_text_fragmentsReturns the matching passages with surrounding words, per document
update_indexRe-reads changed, added and deleted files in an index’s paths
remove_from_indexRemoves a path that was added with add_to_index
get_index_infoReports an index’s documents, paths, status and the indexes that exist
create_indexCreates an empty named index, or empties one with recreate
get_license_statusReports the active licensing mode and, under metered licensing, consumption

How the tools address documents and indexes

No tool takes a document’s content. They take paths inside the storage folder and index names:

ArgumentShapeExample
documentsPath / documentPathrelative to the storage folder (/data in Docker) — a file or a folder; omit to mean the whole folder"contracts", "contracts/lease.pdf"
indexNamea name, never a path; omit for the index called default"contracts", "legal-2026"
querythe search language below"termination AND penalty"

Indexes live in the index store — /data/.groupdocs-search-index/<name> by default, or under GROUPDOCS_MCP_INDEX_PATH when set — and persist between calls and restarts. The server never indexes its own index folder. Result paths come back relative to the storage folder (contracts/acme-master-services-agreement.pdf); a match inside an email or archive adds innerPath (the attachment’s name).

The query language

You wantQueryNote
a wordpenaltycase-insensitive unless caseSensitive: true
a phrase"termination penalty"always quote multi-word phrases — unquoted words do not match
all of / any of / nottermination AND penalty · renewal OR renews · lease NOT draftalso &, |, !; group with parentheses
one unknown characterterminat?matches terminate, not termination — ? is one character
spelling variantsrenewl with fuzzy: truealso matches near words — check the terms it found
dates written in documentscontent: daterange(2026-07-01 ~~ 2026-09-30)use content: — see the note below
numbers in a rangecontent: (100000 ~~ 999999)whole numbers written without separators
a file-name wordfilename: q3matches words in the file name
a regular expression^inv[0-9]+a query starting with ^

There is no trailing * wildcard: use ? patterns or fuzzy: true for variants. AND is evaluated per document, not per sentence — confirm with get_text_fragments that the words are about the same thing.

Warning
Put content: in front of a date range. The engine also indexes each file’s creation and modification dates as fields, so a bare daterange(…) matches every file written in that period. content: daterange(…) searches only the dates written inside the documents. To search by file date on purpose, use modificationdate: daterange(…).

The full grammar: query language specification.