search_shows

Pack: tvmaze · Endpoint: https://gateway.pipeworx.io/tvmaze/mcp

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search_shows for the schema, then POST the same URL with its arguments for the data.

Search TV shows by name. Returns shows with id, name, premiere date, network, genres, rating, status, and TVMaze URL.

Parameters

NameTypeRequiredDescription
querystringyesShow name (full or partial)

Example call

Arguments

{
  "query": "Breaking Bad"
}

curl

curl -X POST https://gateway.pipeworx.io/tvmaze/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_shows","arguments":{"query":"Breaking Bad"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('search_shows', {
  "query": "Breaking Bad"
});

More examples

{
  "query": "The Office"
}

Response shape

Always returns: query, count, results

FieldTypeDescription
querystringSearch query string
countnumberNumber of results returned
resultsarrayArray of matching shows
Full JSON Schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search query string"
    },
    "count": {
      "type": "number",
      "description": "Number of results returned"
    },
    "results": {
      "type": "array",
      "description": "Array of matching shows",
      "items": {
        "type": "object",
        "properties": {
          "score": {
            "type": [
              "number",
              "null"
            ],
            "description": "Match score from search"
          },
          "id": {
            "type": [
              "number",
              "null"
            ],
            "description": "TVMaze show ID"
          },
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "Show name"
          },
          "type": {
            "type": [
              "string",
              "null"
            ],
            "description": "Show type (e.g., Scripted, Reality)"
          },
          "language": {
            "type": [
              "string",
              "null"
            ],
            "description": "Primary language"
          },
          "genres": {
            "type": "array",
            "description": "Genre tags",
            "items": {
              "type": "string"
            }
          },
          "status": {
            "type": [
              "string",
              "null"
            ],
            "description": "Show status (Running, Ended)"
          },
          "runtime_min": {
            "type": [
              "number",
              "null"
            ],
            "description": "Episode runtime in minutes"
          },
          "premiered": {
            "type": [
              "string",
              "null"
            ],
            "description": "Premiere date (YYYY-MM-DD)"
          },
          "ended": {
            "type": [
              "string",
              "null"
            ],
            "description": "End date (YYYY-MM-DD) or null"
          },
          "official_site": {
            "type": [
              "string",
              "null"
            ],
            "description": "Official website URL"
          },
          "rating": {
            "type": [
              "number",
              "null"
            ],
            "description": "Average rating (0-10)"
          },
          "network": {
            "type": [
              "string",
              "null"
            ],
            "description": "Network or web channel name"
          },
          "network_country": {
            "type": [
              "string",
              "null"
            ],
            "description": "2-letter country code"
          },
          "imdb_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "IMDb ID"
          },
          "tvdb_id": {
            "type": [
              "number",
              "null"
            ],
            "description": "TheTVDB ID"
          },
          "image": {
            "type": [
              "string",
              "null"
            ],
            "description": "Show poster image URL"
          },
          "summary": {
            "type": [
              "string",
              "null"
            ],
            "description": "HTML-stripped show summary"
          },
          "tvmaze_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "TVMaze show page URL"
          }
        }
      }
    }
  },
  "required": [
    "query",
    "count",
    "results"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "tvmaze": {
      "url": "https://gateway.pipeworx.io/tvmaze/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build September 24, 2026