1. Conduid
  2. Developer Tools
  3. Sneek
MCP server · Developer Tools

Sneek

macOS GUI, CLI for turning your cli commands into persistent mcp tools — passwords from Keychain and password managers, SSH tunnels handled.

Unclaimed devtools
34Low

Scored 6 months ago · breakdown

About Sneek

Sneek is an MCP server published by biswaz in the Developer Tools category: macOS GUI, CLI for turning your cli commands into persistent mcp tools — passwords from Keychain and password managers, SSH tunnels handled.

The repository has 8 stars and 0 forks, with the last commit 2 months ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/biswaz/sneek

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Sneek

Powered by Claude · Grounded in docs

I know everything about Sneek. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

Sneek

I wanted Claude Code to query my production databases without pasting passwords into the chat. That turned out to be three problems stacked on top of each other:

  1. Secrets in plaintext. Connection strings with embedded passwords end up in config files, shell history, env vars, or — worst of all — the conversation. None of those are places I want a long-lived prod password to live.
  2. SSH tunnels that keep breaking. Most of my databases sit behind a bastion. The tunnels die, get killed by network changes, or never came up in the first place. Every other "MCP for Postgres" solution assumed a direct connection.
  3. The auto-tunnel script tax. The fix for #2 is usually "write a wrapper script that brings the tunnel up, waits for it, then runs the command." I'd written that script three times for three different databases. Three different ways. None reusable.

Sneek is what I wished existed. One config per command (pg-prod, redis-prod, whatever): the password is a reference to a Keychain / 1Password / Bitwarden entry, the SSH tunnel is described declaratively and the daemon keeps it alive, and the whole thing exposes itself to Claude Code as an MCP tool with a single setup line.

The same command also becomes a menubar entry I can click, and a shell script if I just want to use it from the terminal. But MCP was the goal.

Install

Requires macOS, Swift 6, and full Xcode (not just CommandLineTools).

git clone git@github.com:biswaz/sneek.git
cd sneek
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer

swift build -c release --product sneekd --product Sneek
cp .build/arm64-apple-macosx/release/sneekd /usr/local/bin/sneekd
codesign --force --sign - /usr/local/bin/sneekd

Wire up Claude Code:

sneekd install-mcp        # adds sneek to ~/.claude/settings.json
# or:
claude mcp add sneek -- sneekd mcp-serve

Run

swift run Sneek           # launches GUI; auto-starts the daemon

That's it — one command. The menubar pill (green Running / gray Stopped / orange Error) is also a click toggle for the daemon.

For headless use (no GUI), the CLI is independent:

sneekd start              # foreground daemon
sneekd run pg-prod "select 1"
sneekd tunnel pg-prod up
sneekd list

Example command

~/.config/sneek/commands/pg-prod.json:

{
  "name": "pg-prod",
  "description": "Production Postgres via bastion",
  "tags": ["prod"],
  "mode": "session",
  "readonly": true,
  "command": "psql --csv postgresql://{{user}}:{{password}}@localhost:{{local_port}}/{{database}}",
  "secrets": {
    "password": { "provider": "keychain", "key": "db-prod" }
  },
  "variables": { "user": "app", "database": "myapp_prod" },
  "tunnel": {
    "host": "bastion.example.com",
    "user": "deploy",
    "identity_key": "~/.ssh/prod_key",
    "local_port": 15432,
    "remote_host": "prod-db.internal",
    "remote_port": 5432
  },
  "setup_commands": ["SET default_transaction_read_only = on;"],
  "blocked_patterns": ["DROP", "DELETE", "UPDATE", "INSERT", "ALTER", "TRUNCATE"],
  "mcp": { "enabled": true, "tool_name": "pg_prod" }
}

Claude Code now sees a sneek_pg_prod tool — read-only Postgres, bastion-tunneled, password from Keychain, no secrets in the conversation.

Architecture

GUI is a config editor only. The sneekd daemon owns all runtime: tunnel manager, persistent sessions, secret resolution, MCP stdio server, IPC. The two share SneekLib and talk over a Unix socket at ~/.config/sneek/sneekd.sock. The daemon keeps running after the GUI quits so Claude Code's MCP integration stays available.

More

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Sneek

How do I install Sneek?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Sneek safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Sneek still maintained?

Yes — the last commit was 2 months ago. The repository has 8 stars and 0 forks.