# PostgreSQL_get_top_heavy_queries

Get top queries by total time, calls, and mean time from pg_stat_statements.

Agent View of the PolicyLayer registry record for `PostgreSQL_get_top_heavy_queries`. HTML page: https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-get-top-heavy-queries

## Facts

- Tool: `PostgreSQL_get_top_heavy_queries`
- Server: Postgres (`mukul975/postgres-mcp-server`) — https://policylayer.com/tools/mukul975-postgres-mcp-server.md
- Homepage: https://github.com/mukul975/postgres-mcp-server
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Allowed

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "PostgreSQL_get_top_heavy_queries",
    "arguments": {}
  }
}
```

## Why PostgreSQL_get_top_heavy_queries is rated Low

This tool reads performance statistics from PostgreSQL's built-in pg_stat_statements extension. It retrieves aggregated query metrics (total time, call counts, mean time) for analysis and monitoring purposes. There are no side effects, no data modification, and no code execution triggered by the tool itself. The worst-case misuse is information disclosure of query patterns, which is a low severity read risk.

From the tool's own definition: "Tool queries pg_stat_statements to retrieve statistics on top queries; description indicates data retrieval ('Get top queries') with no modification, deletion, or execution of arbitrary code."

## Use case

AI agents call PostgreSQL_get_top_heavy_queries to retrieve information from Postgres without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Postgres:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "PostgreSQL_get_top_heavy_queries": {}
  }
}
```

## Other tools on Postgres (238)

- `PostgreSQL_drop_index` — Destructive — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-drop-index.md
- `PostgreSQL_drop_schema` — Destructive — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-drop-schema.md
- `PostgreSQL_drop_user` — Destructive — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-drop-user.md
- `PostgreSQL_analyze_database` — Execute — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-analyze-database.md
- `PostgreSQL_execute_select_query` — Execute — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-execute-select-query.md
- `PostgreSQL_execute_update_query` — Execute — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-execute-update-query.md
- `PostgreSQL_kill_connection` — Execute — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-kill-connection.md
- `PostgreSQL_refresh_materialized_view` — Execute — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-refresh-materialized-view.md
- `PostgreSQL_vacuum_analyze_table` — Execute — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-vacuum-analyze-table.md
- `analyze_buffer_utilization` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-buffer-utilization.md
- `analyze_foreign_key_locks` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-foreign-key-locks.md
- `analyze_index_effectiveness` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-index-effectiveness.md
- `analyze_query_complexity` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-query-complexity.md
- `analyze_query_plans` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-query-plans.md
- `analyze_sequence_usage` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-sequence-usage.md
- `analyze_transaction_wraparound` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-transaction-wraparound.md
- `analyze_trigger_performance` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-trigger-performance.md
- `analyze_vacuum_efficiency` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/analyze-vacuum-efficiency.md
- `check_constraint_violations` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/check-constraint-violations.md
- `check_database_encoding_collation` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/check-database-encoding-collation.md
- `check_function_performance` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/check-function-performance.md
- `check_replication_lag_details` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/check-replication-lag-details.md
- `check_table_inheritance` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/check-table-inheritance.md
- `monitor_autovacuum_progress` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/monitor-autovacuum-progress.md
- `monitor_checkpoint_efficiency` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/monitor-checkpoint-efficiency.md
- `monitor_connection_patterns` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/monitor-connection-patterns.md
- `monitor_materialized_views` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/monitor-materialized-views.md
- `monitor_wal_generation_rate` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/monitor-wal-generation-rate.md
- `PostgreSQL_active_temp_file_users` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-active-temp-file-users.md
- `PostgreSQL_analyze_advanced_buffer_usage` — Read — https://policylayer.com/tools/mukul975-postgres-mcp-server/postgresql-analyze-advanced-buffer-usage.md
- …and 208 more: https://policylayer.com/tools/mukul975-postgres-mcp-server.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=mukul975-postgres-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/mukul975-postgres-mcp-server
