The Model Context Protocol (MCP) is Anthropic's open standard for letting AI assistants call tools. EQQ's MCP Gateway turns every governed query into a tool that Cursor, Windsurf, Continue, VS Code, or Claude Desktop can invoke - without handing the model raw SQL access.
Why raw database MCP access is risky — and how EQQ handles it

- Auth. An API key maps to a role, which maps to a set of queries. The model can only use what that key permits.
- Schema. EQQ exposes each query as an MCP tool with a JSON schema for inputs - the model knows exactly what parameters to pass.
- Safety. Because the model cannot write SQL, prompt injection cannot escalate access.
- Audit. Every AI-triggered run is logged with a marker showing the calling agent.
The six MCP tools EQQ exposes to AI clients
list_queries- what queries this key can useget_query_detail- columns, description, metadataget_query_parameters- JSON schema of inputsexecute_query- run and return rowsexport_query- write to xlsx/csv/jsonexecute_chart_query- run with chart classification
How the gateway enforces governance
The gateway is a small .NET 8 service that speaks MCP over HTTP streaming. It calls EQQ's existing REST API with the supplied API key - no back-channel, no special privileges. If the key cannot run a query through the web UI, it cannot run it through MCP either.
Wiring up a supported MCP client
EQQ supports Cursor, Windsurf, Continue, VS Code, and Claude Desktop. The MCP endpoint is available under My Account → AI Assistant Integration in the EQQ web app. The exact config format shown in the app is:
{
"mcpServers": {
"eqq": {
"url": "http://[your-eqq-server]/mcp",
"headers": { "X-API-Key": "YOUR_API_KEY" }
}
}
}
Config file locations by client: ~/.cursor/mcp.json for Cursor, ~/.codeium/windsurf/mcp_config.json for Windsurf. Claude Desktop uses its own MCP settings panel. See the MCP Gateway docs for the full per-client setup guide.