Search / io.github.solvionholdings/guardlayer
GuardLayer
R0· no sign-inSecurity checks for Next.js + Supabase apps: code scan, read-only live DB check, fix confirmation.
v1.0.1 · active · repository · website · descriptor JSON · versions
Search / io.github.solvionholdings/guardlayer
R0· no sign-inSecurity checks for Next.js + Supabase apps: code scan, read-only live DB check, fix confirmation.
v1.0.1 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"guardlayer": {
"type": "http",
"url": "https://www.guardlayer.io/api/mcp"
}
}
}claude mcp add --transport http guardlayer https://www.guardlayer.io/api/mcp[mcp_servers.guardlayer]
url = "https://www.guardlayer.io/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"guardlayer": {
"type": "remote",
"url": "https://www.guardlayer.io/api/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"guardlayer": {
"type": "http",
"url": "https://www.guardlayer.io/api/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=guardlayer&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vd3d3Lmd1YXJkbGF5ZXIuaW8vYXBpL21jcCJ9"
}{
"servers": {
"guardlayer": {
"type": "http",
"url": "https://www.guardlayer.io/api/mcp"
}
}
}{
"mcpServers": {
"guardlayer": {
"httpUrl": "https://www.guardlayer.io/api/mcp"
}
}
}extensions:
"guardlayer":
enabled: true
name: "guardlayer"
type: streamable_http
uri: "https://www.guardlayer.io/api/mcp"
timeout: 300
protocol.modernprotocol.statelessprotocol.transportprotocol.list_ttlauth.prm, auth.as_metadata, auth.cimdauth.secret_in_urltools.descriptionstools.description_lengthtools.schemastools.annotationstools.directory_hintstools.token_costtools.api_dumptools.hidden_textstability.changes, stability.rug_pull, stability.new_linksdeps.known_vulns, deps.mcp_sdk_version, deps.resolvableNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-3d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://www.guardlayer.io/api/mcp streamable-http | none | yes | 100% | 512 ms | 2025-06-18 | 2026-11-14 |
check_supabase_snapshotread-only | Checks the JSON from get_supabase_snapshot_sql: tables anyone can read, RLS off, policies that only check for a signed-in user (public in practice when sign-ups are open), users who can update their own role or plan columns, exposed SECURITY DEFINER functions, public buckets. Pass auth_config (the project's Auth settings) when you can: it decides whether 'any signed-in user' means anyone. Pass previous_issue_keys from an earlier result to see what is closed, still open or new. Returns each issue with its SQL fix and a fix prompt. |
get_supabase_snapshot_sqlread-only | Returns the read-only SQL for the live Supabase check and how to run it. It reads only catalog metadata (table and column names, RLS flags, policies, grants, triggers, SECURITY DEFINER functions, bucket settings), never table rows, and returns one JSON value. |
scan_filesread-only | Static security scan of a Next.js + Supabase codebase: secrets in code or public env vars (NEXT_PUBLIC_, VITE_), service role keys in client code, RLS off or open policies in supabase/migrations, unauthenticated API routes, Server Actions and Edge Functions, unsafe redirects and more. Send source files (ts, tsx, js, jsx, sql, .env*, config files) with paths relative to the project root; skip node_modules, build output and lockfiles. Up to 300 files and 4 MB per call; split bigger projects. Files are scanned in memory and discarded. |
Schemas: list_tools.
{
"name": "io.github.solvionholdings/guardlayer",
"icons": [
{
"src": "https://www.guardlayer.io/icon.svg",
"sizes": [
"any"
],
"mimeType": "image/svg+xml"
},
{
"src": "https://www.guardlayer.io/apple-icon.png",
"sizes": [
"180x180"
],
"mimeType": "image/png"
}
],
"title": "GuardLayer",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://www.guardlayer.io/api/mcp",
"type": "streamable-http"
}
],
"version": "1.0.1",
"repository": {
"url": "https://github.com/solvionholdings/guardlayer-plugin",
"source": "github"
},
"websiteUrl": "https://www.guardlayer.io/mcp",
"description": "Security checks for Next.js + Supabase apps: code scan, read-only live DB check, fix confirmation."
}