Tideways MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | debug, info, warn or error, case-insensitive; logs go to stderr | info |
| TIDEWAYS_ENV | No | Default environment. Defaults to the API default. | |
| TIDEWAYS_ORG | No | Organization, to match a plain project name. Defaults to the token's projects. | |
| TIDEWAYS_TOKEN | Yes | API token | |
| TIDEWAYS_PROJECT | No | Default project; with several projects and no default, pass `project` per call. Defaults to the token's only project. | |
| TIDEWAYS_SERVICE | No | Default service. Defaults to the project's default service. | |
| TIDEWAYS_BASE_URL | No | API base URL, https only | https://app.tideways.io/apps/api |
| TIDEWAYS_REQUEST_TIMEOUT | No | Request timeout in ms, a positive integer up to 600000 | 30000 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| tideways_list_projectsA | List the projects and scopes of the configured Tideways API token, and how much of the organization's hourly rate limit is left. Call this first when unsure which project to use, or after a scope or unknown-project error. |
| tideways_list_servicesA | List the services of a project (web, APIs, workers, CLI) named by its issues, the default service first. Call it when the user names an app, API or worker that is not a project, or a transaction that tideways_search_traces does not find in the default service, with "search" set to one word of it: each service is searched for that word and the services are sorted by matching traces, so the first ones serve it. Costs 4 requests, plus 1 per service searched: at most 30, fewer when the hourly rate limit is small or nearly used up. Only services named by the newest open or ignored issues are listed; the Tideways UI service selector lists all. |
| tideways_get_performanceA | Performance of any window of 1-1440 minutes ending at "end" (default now) within the last ~30 days: totals (requests, error rate, p95/median/average response time, time per layer), the top 20 transactions by impact, and a timeline. Older windows return zeros; use tideways_get_history for them. For 15-minute trends over 30 days use tideways_get_performance_summary. |
| tideways_get_transactionA | Timeline of one transaction over 1-1440 minutes ending at "end" (default now): per minute (or per bucket above 60 minutes) requests, errors, requests over the response-time target, p95/median/average and time per layer, plus totals with a response-time histogram. Use it to see when a transaction got slow and in which layer. Take transactionId from transactions[].id of tideways_get_performance. |
| tideways_get_performance_summaryA | Requests, errors and p95 response time in 15-minute buckets for the last |
| tideways_list_issuesA | List error, slow-SQL, deprecation, warning or notice issues of a project, newest occurrence first, 10 per page, with the total count. Use to find what is failing or slow and how often. Reads all services unless "service" is passed or configured; "transactionIds" narrows to issues of given transactions. One type and one status per call. There is no time filter; use lastOccurred to judge recency. |
| tideways_get_issueA | Get one issue from tideways_list_issues in depth: the stack trace of its latest occurrence (first 15 frames) with the request it came from (URL, method, status, host, service), the transactions it occurred in with counts, and its occurrences per time bucket over the retention period. Use to point at the failing code, rank the affected endpoints, and say when the issue started, peaked or stopped. Pass the id and the type the issue was listed under. |
| tideways_search_tracesA | Find individual request traces (30 per call unless "limit" asks for up to 100; newest first unless sortBy is set) with response time, memory, bottlenecks and the slowest layers. Use to investigate specific slow or failing requests; filter by transaction IDs from tideways_get_performance, text, time window and response time. |
| tideways_get_historyA | Daily, weekly or monthly performance report for a past date: total requests, error rate, p95, top 20 transactions by impact and a timeline. Use to compare days or weeks. A period that has not ended covers only its finished hours (pendingBuckets > 0), and today has no data until it ends; compare such periods per day or use tideways_get_performance_summary. Covers production and the project's default service only; for another environment or service use tideways_get_performance with end and minutes=1440 (one day per call). |
| tideways_get_observationsA | Automatic findings Tideways made for a project: PHP configuration problems (e.g. OPcache buffers, timeouts) and code bottlenecks detected in traces (e.g. N+1 queries, sleep, waits). Use for a quick health check or optimization ideas. Findings do not name the affected requests, and the API cannot filter traces by bottleneck: give the user the link, whose page in the Tideways UI lists recent affected traces. Do not infer N+1 queries from slow-SQL issues. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Most tools have clearly distinct purposes (list_issues vs get_issue, search_traces vs get_transaction). The performance family—get_performance, get_performance_summary, get_history, get_transaction—overlaps in domain but the descriptions carefully delineate granularity and use cases, leaving only mild ambiguity.
All tools follow a consistent tideways_<verb>_<noun> pattern (list_issues, get_performance, search_traces, get_observations). Prefix and verb/noun conventions are uniform throughout with no deviations.
Ten tools is well-scoped for an observability/monitoring server. Each tool maps to a distinct facet (issues, projects, services, performance, traces, history, observations) without redundancy.
The surface covers the core read workflows well: discovery (projects/services), performance windows, transactions, traces, issues and automatic findings. It is read-only by nature, so lifecycle coverage is reasonable, though some deeper drill-downs (e.g. arbitrary trace-by-bottleneck filtering) are noted as unavailable.