MCPVault

analyze_disk_io_patterns

MCP tool from Pgtuner MCP by isdaniel

Analyze disk I/O read/write patterns, identify hot tables, buffer cache efficiency, and I/O bottlenecks. Supports filtering by analysis type (all, bufferpool, tables, indexes, tempfiles, checkpoints).

How to use it

analyze_disk_io_patterns is exposed by the Pgtuner MCP MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), and the analyze_disk_io_patterns tool becomes available to the model automatically. See the full listing for setup details and every tool this server provides.

Install Pgtuner MCP

$pip install pgtuner_mcp
FULL PGTUNER MCP LISTING

Other tools in Pgtuner MCP (39)

analyze

Execute query with EXPLAIN ANALYZE (default: true)

analyze_index_bloat

Analyze B-tree index bloat using pgstatindex. Shows leaf density, fragmentation, and empty/deleted pages. Also supports GIN and Hash indexes.

analyze_query

Analyze a query's execution plan with EXPLAIN ANALYZE, including automated issue detection

analyze_table_bloat

Analyze table bloat using pgstattuple extension. Shows dead tuple counts, free space, and wasted space percentage.

analyze_wait_events

Analyze wait events to identify I/O, lock, or CPU bottlenecks. Focuses on client backend processes.

buffers

Include buffer statistics (default: true)

check_database_health

Comprehensive health check with scoring (connections, cache, locks, replication, wraparound, disk, checkpoints)

explain_with_indexes

Run EXPLAIN with hypothetical indexes to test improvements without creating real indexes

find_unused_indexes

Find unused and duplicate indexes that can be safely dropped

format

Output format - json, text, yaml, xml

get_active_queries

Monitor active queries, find long-running transactions and blocked queries. By default excludes system processes.

get_bloat_summary

Get a comprehensive overview of database bloat with top bloated tables/indexes, total reclaimable space, and priority maintenance actions.

get_index_recommendations

AI-powered index recommendations based on query workload analysis

get_slow_queries

Retrieve slow queries from pgstatstatements with detailed stats (total time, mean time, calls, cache hit ratio). Excludes system catalog queries.

get_table_stats

Get detailed table statistics including size, row counts, dead tuples, and access patterns

include_hypothetical_testing

Test with HypoPG (default: true)

include_recommendations

Include actionable recommendations (default: true)

include_toast

Include TOAST table analysis (default: false)

index_name

Name of a specific index to analyze (optional)

limit

Maximum queries to return (default: 10)

manage_hypothetical_indexes

Create, list, drop, or reset HypoPG hypothetical indexes. Supports hide/unhide existing indexes.

max_recommendations

Maximum recommendations (default: 10)

min_bloat_percent

Only show indexes with bloat above this percentage (default: 20)

min_calls

Minimum call count filter (default: 1)

min_improvement_percent

Minimum improvement threshold (default: 10%)

min_index_size_gb

Minimum index size in GB to include (default: 5)

min_mean_time_ms

Minimum mean (average) execution time in milliseconds filter

min_table_size_gb

Minimum table size in GB to include in schema-wide scan (default: 5)

monitor_vacuum_progress

Track manual VACUUM, VACUUM FULL, and autovacuum operations. Monitor progress percentage, dead tuples collected, index vacuum rounds, and estimated time remaining. Includes autovacuum configuration review and tables needing maintenance.

order_by

Sort by meantime, calls, or rows

query

(required): SQL query to analyze

review_settings

Review PostgreSQL settings by category with optimization recommendations

schema_name

Schema name (default: public)

table_name

Name of a specific table to analyze (optional)

target_tables

Focus on specific tables

top_n

Number of top bloated objects to show (default: 10)

use_approx

Use pgstattupleapprox for faster analysis on large tables (default: false)

verbose

Include detailed statistics (default: false)

workload_queries

Optional list of specific queries to analyze