Skip to main content

Crate sery_mcp

Crate sery_mcp 

Source
Expand description

§sery-mcp — local-files MCP server.

sery-mcp is primarily a binary — most users run cargo install sery-mcp and configure their MCP client to spawn it. The library surface exists for the rare downstream that wants to embed the same tool implementations into their own MCP server (e.g. Sery Link’s desktop app spawning the logic in-process instead of as a subprocess).

§v0.3.0 surface

  • SeryMcpServer — the configured MCP server. Construct via SeryMcpServer::new with a single --root path; serve with rmcp::ServiceExt::serve and your transport of choice.
  • Six tools, all read-only:
    • list_folder — enumerate files (scankit)
    • search_files — filename + extension search with scoring (scankit)
    • get_schema — column names + types + row count (tabkit)
    • sample_rows — N rows of sampled data, header-keyed (tabkit)
    • read_document — DOCX/PDF/PPTX/HTML/IPYNB → markdown (mdkit)
    • query_sql — read-only SQL queries against a CSV / Parquet file (DataFusion). The file is registered as table data for the duration of the call.

§Privacy + threat model

sery-mcp opens no sockets and makes no outbound network calls. All file reads are bounded by --root: any tool argument that tries to escape via .. or absolute paths is rejected before the filesystem call. Tools are read-only by design — no write_file, no delete, no execute.

Structs§

ColumnInfo
One column in a get_schema response.
DocumentResponse
read_document response.
FileEntry
One entry in a list_folder response.
GetSchemaRequest
Input for the get_schema tool.
ListFolderRequest
Input for the list_folder tool.
QueryResponse
query_sql response.
QuerySqlRequest
Input for the query_sql tool.
ReadDocumentRequest
Input for the read_document tool.
SampleRowsRequest
Input for the sample_rows tool.
SamplesResponse
sample_rows response.
SchemaResponse
get_schema response.
SearchFilesRequest
Input for the search_files tool.
SearchHit
One result in a search_files response.
SeryMcpServer
A configured MCP server. Cheap to construct + clone; share a single instance across the rmcp serve loop.

Constants§

VERSION
The crate version as reported by Cargo at build time.