{"name":"io.github.parseablehq/parseable-mcp-server","slug":"parseablehq-parseable-mcp-server","title":"Parseable","description":"Model Context Protocol server for Parseable. Lets LLMs discover and query Parseable.","url":"https://mcp.market/server/parseablehq-parseable-mcp-server","rating":null,"grade":"A","score":89,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":25,"stars":4,"forks":0,"downloads_week":45,"last_push_at":"2026-08-22T02:37:34.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/parseablehq/parseable-mcp-server","website":null,"version":"0.2.16","remotes":[],"packages":[{"registryType":"npm","identifier":"@parseable/parseable-mcp-server","version":"0.2.16","transport":{"type":"stdio"}}],"tools":[{"name":"create_alert","description":"Create a new Parseable alert. BEFORE calling this tool, gather inputs from the user ONE QUESTION AT A TIME. Do not invent values. Ask in this order: 1. \"What should this alert be called?\" → title 2. \"Which dataset should it watch?\" → call list_datasets if user is unsure, then pick 3. \"What condition should trigger it?\" → translate user's natural-language condition into: - alert SQL against the sel","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_alert_target","description":"Create a new notification target (Slack/webhook/Alertmanager). Ask the user step-by-step: name, type, endpoint URL, then type-specific fields (headers for webhook, basic auth for Alertmanager). Confirm full JSON before submitting.","write_action":true,"price_micros":0,"input_schema":null},{"name":"disable_alert","description":"Disable an active alert (stops evaluating + firing).","write_action":false,"price_micros":0,"input_schema":null},{"name":"enable_alert","description":"Enable a previously-disabled alert.","write_action":false,"price_micros":0,"input_schema":null},{"name":"evaluate_alert","description":"Force-evaluate an alert immediately (out-of-schedule). MAY TRIGGER REAL NOTIFICATIONS if threshold breached - confirm with user before running on production alerts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"explain_query","description":"Run EXPLAIN on a SQL query to see the DataFusion execution plan without executing it. Useful for debugging slow queries, verifying predicate pushdown, and checking partition pruning. Same SELECT-only restriction as query_sql.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_alert","description":"Get full configuration for one alert: query, threshold, evaluation window, targets, tags, state, last fired timestamp.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_alert_target","description":"Get full config for one alert target (endpoint URL, auth, headers, notification interval).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cluster_metrics","description":"Get aggregated metrics across all nodes in this Parseable cluster (ingest rate, query latency, storage utilization, errors). Distributed mode only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cluster_status","description":"List all nodes in this Parseable cluster (Prism, Querier, Ingestor, Indexer) with their domains, status, and metadata. Only works on distributed Parseable deployments - standalone instances will return an error.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_dataset_info","description":"Get metadata for a dataset: created_at, first/last event time, owner, retention, hot-tier config, time partition.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_dataset_schema","description":"Get the Arrow schema (columns + types) for a dataset. Run this before writing SQL so you know available columns.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_dataset_stats","description":"Get event count, ingested bytes, and storage (compressed) bytes for a dataset. Useful for cost and volume audits.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_default_role","description":"Get the default role assigned to new users on this Parseable server. Returns the role name, or null if no default is set.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_retention","description":"Get the retention policy for a dataset - how long data is kept before being deleted, and any tiering rules. Read-only; modification stays in the Parseable UI.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_role","description":"Get the full privilege definition for a role: which actions (Ingest, Query, GetStream, PutAlert, etc.) the role grants, and which datasets each privilege applies to. Use to answer 'does role X let me write to dataset Y?' style questions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_roles","description":"Get the roles assigned to a specific user. Returns a map of role name → role definition. Combine with list_roles + get_role to determine effective permissions for a user (which datasets they can read, write, manage alerts on, etc.).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_alert_tags","description":"List all tags currently in use across alerts. Useful for filtering and grouping alerts by service/team/severity.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_alert_targets","description":"List all alert notification targets (Slack webhooks, generic webhooks, Alertmanager endpoints) configured on this Parseable server. Returns array of `{id, name, type, ...}`. Use BEFORE create_alert so the user can pick valid target IDs for the alert's `targets` array.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_alerts","description":"List all alerts on this Parseable server with their IDs, names, state (enabled/disabled), severity, and last evaluation. Use first to discover what alerts exist before drilling in with get_alert.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_datasets","description":"List all log datasets (streams) on this Parseable server. Returns an array of dataset metadata. Use this first to discover what data is available.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_roles","description":"List all roles defined on this Parseable server. Returns role names. Use get_role on each to inspect privileges. Read-only - this server does not provide role creation/modification.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_users","description":"List all registered users on this Parseable server. Returns user IDs and basic metadata. Caller must have ListUser permission. Read-only - this server does not provide user creation/deletion.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ping","description":"Check connectivity and report server version/build info. Returns about (version, mode, license, deployment id), liveness, and readiness. Use for diagnosing MCP-server-to-Parseable connection issues.","write_action":false,"price_micros":0,"input_schema":null},{"name":"query_promql","description":"Execute a PromQL query against a Parseable metrics dataset. Pass start+end+step for a range query (time series), or omit them for an instant query (single point). Requires a metrics dataset name in `stream`.","write_action":true,"price_micros":0,"input_schema":null},{"name":"query_sql","description":"Execute a SQL SELECT against a Parseable dataset over a time window. Use this for any analytical question on logs/events. Run get_dataset_schema first to know columns. Time window is mandatory.","write_action":true,"price_micros":0,"input_schema":null},{"name":"sample_events","description":"Return the most recent N events from a dataset. Useful for understanding the shape of data before writing SQL.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":89,"grade":"A","scanned_at":"2026-09-24T05:04:03.298Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T05:04:03.265Z","components":{"code":{"score":25,"max":25,"notes":["79 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":12,"max":15,"notes":["last push 33 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@parseable/parseable-mcp-server","version":"0.2.16","found":true,"license":"Apache-2.0","hasInstallScripts":false,"dependencyCount":8,"publishedAt":"2026-08-07T06:45:08.901Z","repositoryUrl":"git+https://github.com/parseablehq/parseable-mcp-server.git","weeklyDownloads":45}],"repo":{"found":true,"owner":"parseablehq","repo":"parseable-mcp-server","archived":false,"pushedAt":"2026-08-22T02:37:34Z","stars":4,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/94332517?v=4","ownerCreatedAt":"2021-11-15T01:48:11Z","license":"Apache-2.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/94332517?v=4&s=128","source":"github"},"presence":{"stars":4,"forks":0,"downloadsWeek":45,"license":"Apache-2.0","lastPushAt":"2026-08-22T02:37:34.000Z","score":25}}}},"grade_history":[],"reviews":[]}