Repository navigation
Conversation
mccanne
marked this pull request as ready for review
November 4, 2026 19:54
mattnibs
reviewed
Nov 5, 2026
| var r vio.Puller | ||
| switch { | ||
| case args.Path != "": | ||
| f, err := anyio.Open(ctx, sctx, storage.NewLocalEngine(), args.Path, opts) |
Collaborator
There was a problem hiding this comment.
The worry here is that an outsider could load any file on the local file system into a table then query it
Collaborator
Author
There was a problem hiding this comment.
Good catch, fixed. Load now uses the same remote-only storage engine as queries (HTTP/HTTPS/S3), so it can’t read the server’s files or stdin. Local paths are allowed only for super db mcp over stdio, where the client already runs as the user. Added tests for both transports.
This commit adds native support for MCP. There are two modes. With "super db serve -mcp" a running service is extended with MCP endpoints so an agent can interact with data used by other users. This piggy backs on the auth capabilities of db serve. With "super db mcp", a stdin/stderr invocation can be run by an agent to privately use SuperDB capabilities in a session.
The query tool gets the csv, tsv, table, and line formats and a structured mode that returns MCP structured content. New tools: health, create_table, and drop_table. The load tool takes text formats only (data_base64 is removed; binary files can still be loaded by path). With -include (super db mcp) or -mcp.include (super db serve), the query tool's include argument names SuperSQL source files in that directory whose text precedes the query, like -I. Names that are absolute, contain "..", or resolve outside the directory are rejected. In read-only mode, the included files are checked too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mattnibs
approved these changes
Nov 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This commit adds native support for MCP. There are two modes.
With "super db serve -mcp" a running service is extended with MCP endpoints so an agent can interact with data used by other users. This piggy backs on the auth capabilities of db serve.
With "super db mcp", a stdin/stderr invocation can be run by an agent to privately use SuperDB capabilities in a session.