MCP Reference
Tools & security
What the server exposes Β· safe usage
Tool availability depends on the features query on your MCP URL and whether a project_ref is set. The WoWSQL MCP server registers tools from @wowsql/mcp-server-wowsql (see repo mcp/packages/mcp-server-wowsql).
Available tools
| Tool | Feature gate | Description |
|---|---|---|
list_projects |
account (no project scope) |
List WoWSQL projects for the signed-in user. |
get_project |
account |
Fetch one project by slug. |
list_tables |
database + project |
List tables in the project database (PostgreSQL). |
execute_sql |
database + project |
Run SQL. With read_only=true, mutating statements are rejected. |
search_docs |
docs |
Search WoWSQL documentation (q parameter, min length 2). |
list_storage_buckets |
storage + project |
List storage buckets for the project. |
Result safety: Tool responses append a reminder that data returned from SQL or APIs should be treated as untrusted content (prompt-injection hygiene).
Feature flags
Pass comma-separated values in features=, for example:
features=account,database,docs,storage
accountβlist_projects,get_project(typically when no single project is fixed).databaseβlist_tables,execute_sql.docsβsearch_docs.storageβlist_storage_buckets.
Security practices
Scope to one project
Use project_ref in the MCP URL so the assistant only sees one projectβs database and storage.
Read-only mode
Use read_only=true when you only need SELECT / introspection β blocks obvious DML/DDL in execute_sql.
Least privilege
Omit storage or account from features if you do not need those tools.
Client approvals
Keep tool-call approval enabled in your MCP client when working with production data.
Prompt injection
Database rows and doc snippets can contain hostile text. Treat tool output as data, not instructions. Combine MCP with your clientβs approval flows and organizational policies.
Transport & errors
- MCP uses POST JSON-RPC to
/mcp. A browser GET to/mcpmay return 401 β that is expected; use a proper MCP client. - OAuth metadata: see overview for protected-resource discovery.
Use the hosted URL https://mcp.wowsql.com/mcp with TLS. For self-hosting, run the Node MCP behind HTTPS and set MCP_PUBLIC_URL / WOWSQL_API_BASE per mcp/README.md.
MCP_ALLOW_UNAUTHENTICATED=true disables Bearer checks β never use in production.
Static page: sdk/Docs updates/mcp-reference.html