WoWSQL MCP (Model Context Protocol)
MCP serverSearchManaged Postgres MCP: projects, SQL, docs search, and storage buckets via OAuth.
Use WoWSQL MCP (Model Context Protocol) in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add WoWSQL MCP (Model Context Protocol) and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use WoWSQL MCP (Model Context Protocol)
Needs your own WoWSQL MCP (Model Context Protocol) account. You sign in to it and approve access when you connect.
Details
Available today. Use it from your connected AI after setup.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Install WoWSQL MCP (Model Context Protocol)
The server’s own address, for the clients that take one directly. Or connect ahel once and every client you use reads it from one address, with the account kept on ahel rather than in each client’s config.
Claude Code
claude mcp add --transport http --scope user wowsql-mcp-model-context-protoco 'https://mcp.wowsql.com/mcp'Run it once in your project, then open /mcp to approve any sign-in the server asks for.
Claude Desktop
https://mcp.wowsql.com/mcpAdd a custom connector in Settings, paste this address, and approve the sign-in.
Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=wowsql-mcp-model-context-protoco&config=eyJ1cmwiOiJodHRwczovL21jcC53b3dzcWwuY29tL21jcCJ9Open the link and Cursor adds the server at that address.
ChatGPT
https://mcp.wowsql.com/mcpIn Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.
Codex
codex mcp add wowsql-mcp-model-context-protoco --url 'https://mcp.wowsql.com/mcp'Run it once, then sign in with codex mcp login wowsql-mcp-model-context-protoco if the server asks for an account.
From the project's README
As published by wowsql/mcp-server in README.md.
wowsql-style HTTP MCP with OAuth 2.0 authorization code + PKCE on the WoWSQL API.
Packages
| Package | Description |
|---|---|
packages/mcp-server-wowsql | @wowsql/mcp-server-wowsql — HTTP MCP server, createToolSchemas() for AI SDK |
Quick start (self-hosted MCP process)
From the repo root:
cd mcp
npm install
npm run build
npm start
Authentication (OAuth 2.0 + MCP)
The MCP process is an OAuth protected resource (not the authorization server):
POST /mcprequiresAuthorization: Bearer <access_token>unlessMCP_ALLOW_UNAUTHENTICATED=true(dev only).- Missing/invalid tokens get 401 with
WWW-Authenticate: Bearer ... resource_metadata="<url>"so MCP clients (Cursor, etc.) can start OAuth. - Token validation calls your API:
GET {WOWSQL_API_BASE}/api/v1/auth/mewith the same Bearer token (must match the JWT issued by WoWSQL OAuth or login). - Discovery
- Authorization server metadata (WoWSQL API):
GET {WOWSQL_API_BASE}/.well-known/oauth-authorization-server - Protected resource metadata (this MCP host):
GET /.well-known/oauth-protected-resource/mcp
- Authorization server metadata (WoWSQL API):
Cursor / Electron: OAuth metadata is rewritten so authorization_endpoint, token_endpoint, and registration_endpoint point at this MCP host (e.g. http://localhost:8787/...). The MCP process proxies those requests to WOWSQL_API_BASE, so the IDE does not need a working direct fetch to localhost:8000 for OAuth (which often shows up as fetch failed). You still need FastAPI running on WOWSQL_API_BASE so the proxy can reach it.
If MCP_PUBLIC_URL is unset, PRM and 401 resource_metadata are derived from each request’s Host (and X-Forwarded-Proto), so http://localhost:8787/mcp and http://127.0.0.1:8787/mcp each get matching metadata. Set MCP_PUBLIC_URL when the MCP is behind a reverse proxy or you need a single fixed origin in production.
| Variable | Default | Purpose |
|---|---|---|
WOWSQL_API_BASE | https://api.wowsql.com | WoWSQL FastAPI base URL (no trailing slash). |
WOWSQL_OAUTH_ISSUER_URL | same as WOWSQL_API_BASE | issuer advertised in PRM (authorization_servers). |
MCP_PUBLIC_URL | unset | If set, fixed public origin (no /mcp path) for OAuth PRM + WWW-Authenticate; overrides Host-based derivation. |
MCP_ALLOW_UNAUTHENTICATED | unset | If true, skips Bearer check (insecure; local testing only). |
PORT / MCP_PORT | 8787 | MCP HTTP port. |
MCP_HOST | 0.0.0.0 | Bind address. |
Option A — .env / .env.local (recommended)
Copy packages/mcp-server-wowsql/.env.example to .env or .env.local in that folder. The CLI loads .env, then .env.local (overrides), then the process cwd .env. Use .env.local for machine-specific values (e.g. http://localhost:8000) without committing them.
cd mcp/packages/mcp-server-wowsql
cp .env.example .env
# edit .env — set WOWSQL_API_BASE to your API
npm run build # from mcp root: npm run build -w @wowsql/mcp-server-wowsql
npm start
Option B — shell (no file)
PowerShell:
cd mcp
$env:WOWSQL_API_BASE="http://localhost:8005"
$env:PORT="8787"
npm start
bash / zsh:
cd mcp
export WOWSQL_API_BASE=http://localhost:8005
export PORT=8787
npm start
Endpoints
- MCP (Streamable HTTP):
POST http://localhost:8787/mcp— JSON-RPC body; append query params for scoping. MCP clients (Cursor, etc.) use this. - MCP (browser):
GET http://localhost:8787/mcpreturns 401 with a short “not authorized” page (no public metadata). The protocol is POST JSON-RPC withAuthorization: Bearer. - Health:
GET http://localhost:8787/health
Example scoped URL for clients:
http://localhost:8787/mcp?project_ref=<uuid-or-slug>&read_only=true&features=database,docs
OAuth (API)
- Metadata:
GET https://api.wowsql.com/.well-known/oauth-authorization-server - Authorize (redirect to dashboard):
GET /api/v1/auth/oauth/mcp/authorize - Approve (logged-in user):
POST /api/v1/auth/oauth/mcp/approve - Token:
POST /api/v1/auth/oauth/mcp/token(grant_type=authorization_codeorrefresh_token)
Dashboard consent UI: /mcp/oauth on the app (see dashboard/app/mcp/oauth/page.tsx).
Deploy mcp.wowsql.com
- Run this Node service behind TLS (reverse proxy or platform of your choice).
- Set
WOWSQL_API_BASE/WOWSQL_OAUTH_ISSUER_URLtohttps://api.wowsql.com(not127.0.0.1:8000/8001). Blue/green flips change the backend host port; the public hostname always follows the active slot via NPM. - Set
MCP_PUBLIC_URL=https://mcp.wowsql.com. - Point DNS
mcp.wowsql.comto the service; health check:GET /health. - Ensure CORS and OAuth
redirect_urivalues include your MCP client callbacks (seeoauth_clientsseed + env).
EC2 blue/green: ./deploy/ec2-blue-green.sh mcp sets those env vars automatically.
npm publish
cd mcp/packages/mcp-server-wowsql
npm version patch
npm publish --access public
Requires an npm org scope @wowsql (or change name in package.json).
Signals
- GitHub stars
- 4
- Last commit
- Aug 2026
Advanced
- Delivery
- WoWSQL MCP server → your ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
com-wowsql-mcp- Source
- github.com/wowsql/mcp-server
- Hosted endpoint
https://mcp.wowsql.com/mcp