mcp server
mcp
Sezzlee MCP servers and SDKs for files, databases and existing backends.
Set up
Runs on your computer. Pick your agent and operating system.
Before you start
- Node.js 20 or newer
{
"mcpServers": {
"sezzlee-mcp": {
"command": "npx",
"args": [
"-y",
"@liaiso/file-core"
]
}
}
}same format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12
Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs
README
synced Oct 14, 2026Sezzlee MCP
Swagger for agents. Sezzlee turns what you already have — an HTTP backend, a folder of spreadsheets, PDF and XML documents — into tools an AI agent can find and call over the Model Context Protocol.
It comes in two shapes:
- The HTTP catalog embeds in an ASP.NET Core or NestJS backend. It exposes your endpoints as a search-first tool catalog and replays every agent call through your backend's own request pipeline, so your authentication, authorization and validation apply unchanged. For a backend on any other stack, an OpenAPI gateway builds the same catalog from its document.
- Source servers are standalone, read-only MCP servers for local files: Excel, XML and PDF, plus a server that hands bounded language work to a local model.
Status: early. Every package below is on npm or NuGet; APIs may still change. The spec, the fixture corpus and both SDKs are tested in CI.
Why
A naive MCP adapter turns every endpoint into a tool and forwards calls over the network. That floods the agent's context, loses the caller's identity and silently papers over what it cannot represent. Sezzlee instead:
- shows the agent three meta-tools (
search_tools,load_tool,invoke_tool) rather than the whole catalog, so the size of your API does not grow the agent's context; - decides what a caller can see from the backend's own authorization, and still enforces every call in the backend at invoke time;
- treats every silent resolution — a name collision, an unknown argument, a truncated response — as an error with a code the agent can act on.
The longer argument is on the docs site: why sezzlee is not an OpenAPI adapter.
Quick start
Pick what you need. The servers need Node.js 22+; the ASP.NET Core SDK targets .NET 8 and 10.
| I want to… | Install | Start here |
|---|---|---|
| Expose an ASP.NET Core API to agents | dotnet add package Sezzlee.AspNetCore | sdks/dotnet |
| Expose a NestJS API to agents | npm install @sezzlee/sdk-nestjs | sdks/nestjs |
| Expose any backend that has an OpenAPI file | npx -y @sezzlee/openapi-mcp | packages/servers/openapi-mcp |
| Let an agent read Excel workbooks | npx -y @sezzlee/excel-mcp | packages/servers/excel-mcp |
| Let an agent read XML documents | npx -y @sezzlee/xml-mcp | packages/servers/xml-mcp |
| Let an agent read PDF documents | npx -y @sezzlee/pdf-mcp | packages/servers/pdf-mcp |
| Hand bounded text work to a local model | npx -y @sezzlee/llm-mcp | packages/servers/llm-mcp |
| Build my own read-only MCP server | npm install @sezzlee/mcp-core | packages/cores/mcp-core |
Each package README has its own quick start, configuration and limits. To build from source, see CONTRIBUTING.md.
Packages
HTTP catalog
| Package | What it is | Status |
|---|---|---|
| Sezzlee.AspNetCore | ASP.NET Core SDK | stable |
| Sezzlee.AspNetCore.NewtonsoftJson | Newtonsoft.Json adapter for the ASP.NET Core SDK | stable |
| Sezzlee.AspNetCore.Testing | Test helper: audits per-caller visibility against the real pipeline | stable |
| @sezzlee/sdk-nestjs | NestJS SDK | stable |
| @sezzlee/openapi-mcp | Gateway: an OpenAPI document as a catalog over a remote backend | stable |
| @sezzlee/openapi | Swagger 2.0 / OpenAPI 3.0–3.2 ingestion | stable |
| @sezzlee/core | TypeScript reference implementation of the spec | stable |
| spec | The normative spec and JSON Schemas — the single source of truth | normative |
| conformance | 480 JSON fixtures across 11 kinds that every implementation must pass | — |
Source servers and their cores
| Package | What it is | Status |
|---|---|---|
| @sezzlee/excel-mcp | Reads local Excel workbooks | published |
| @sezzlee/xml-mcp | Reads local XML documents | published |
| @sezzlee/pdf-mcp | Reads local PDF documents, with pluggable OCR | published |
| @sezzlee/llm-mcp | Delegates bounded language work to a local model (Ollama) | published |
| @sezzlee/ocr-ollama | OCR provider for pdf-mcp | published |
| @sezzlee/pdf-raster-pdfjs | Page rasterizer for pdf-mcp | published |
| @sezzlee/mcp-core | Source-agnostic machinery for read-only MCP servers | published |
| @sezzlee/file-core | Sandboxed file layer over mcp-core | published |
| @sezzlee/ooxml-core | Reader for OOXML (zip/OPC) containers | published |
Every package is published from CI with npm provenance; the tarballs are checked and smoke-installed before publication.
Also in this repository
- apps/docs — the documentation site (TanStack Start). Run it with
pnpm --filter @sezzlee/docs devand openhttp://localhost:5180.
How the HTTP catalog works
- At startup the SDK reads your framework's route and authorization metadata and builds a catalog of tools, named by fixed rules; a name collision fails startup.
- An agent calls
search_tools, gets compact cards for the tools this caller may use, andload_toolfor the full schema of the one it picks, with aversionfingerprint of it. invoke_toolcomposes an HTTP request from the arguments and replays it through your pipeline as the caller. The response is mapped to a fixed error vocabulary and a size budget before it reaches the agent. A call that passesversionback is refused withtool_changedif the server answering it holds a different definition, as can happen mid-deploy. A behaviour change behind an unchanged schema is caught the same way once you declare it as a revision, on the operation, its controller or the whole catalog.
The rules for each step are in the spec, and the conformance corpus pins them so the TypeScript and C# implementations cannot drift apart.
Documentation
- Guides and reference: the docs site in apps/docs (tutorials, how-tos, explanations).
- The spec: packages/http/spec.
- What is planned: ROADMAP.md.
- Contributing: CONTRIBUTING.md.
License
MIT — see LICENSE.