Skip to main content
Glama

@ottasia/mcp-server

npm version MIT License MCP Registry Glama

Where can I watch X in Y? Answer that question, in your AI assistant, for 30 Asian and Middle Eastern streaming markets.

OTTASIA's Model Context Protocol server gives Claude (and any MCP-compatible client) live access to streaming availability across India, Pakistan, Bangladesh, Indonesia, Malaysia, Philippines, Singapore, Thailand, Myanmar, Cambodia, Laos, Brunei, China, Hong Kong, Japan, Korea, Taiwan, Kazakhstan, Uzbekistan, Turkey, Israel, Lebanon, Jordan, Saudi Arabia, UAE, Kuwait, Qatar, Bahrain, Oman, and Egypt.

It wraps ottasia.com, so the same data that powers our website is one prompt away.


Install (Claude Desktop)

Add this to your Claude Desktop config file:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "ottasia": {
      "command": "npx",
      "args": ["-y", "@ottasia/mcp-server"]
    }
  }
}

Restart Claude Desktop. The OTTASIA tools should appear in the tool list.

No API keys. No env vars. Nothing to configure.


Related MCP server: mcp-watchmode

Tools

where_to_watch

Find which streaming services carry a specific movie or TV show in a specific country.

Inputs:

  • title (string, required): movie or TV show name

  • country (2-letter ISO code, optional, default IN)

Example prompts:

  • "Where can I watch Squid Game in Indonesia?"

  • "Is Pathaan available on any service in Saudi Arabia?"

  • "Use the ottasia where_to_watch tool to find Game of Thrones in Japan."

whats_new_on

List the latest titles added to a specific streaming service in a country.

Inputs:

  • provider (slug, required): e.g. netflix, prime-video, disney-plus-hotstar, wavve, shahid, viu

  • country (2-letter ISO code, optional, default IN)

  • limit (number, optional, default 15, max 30)

Example prompts:

  • "What's new on Netflix in India this month?"

  • "Any new K-dramas added to Wavve in Korea?"

  • "List recent arrivals on Shahid in Saudi Arabia."

search_titles

Multi-result search for movies and TV shows. Returns multiple candidates so you can disambiguate before checking availability.

Inputs:

  • q (string, required): search query

  • country (2-letter ISO code, optional, default IN)

  • limit (number, optional, default 8, max 20)

Example prompts:

  • "Search OTTASIA for 'the office'"

  • "Find all matches for 'joker' and tell me which one is the 2019 Joaquin Phoenix film."


Supported countries

IN India · PK Pakistan · BD Bangladesh · ID Indonesia · MY Malaysia · PH Philippines · SG Singapore · TH Thailand · MM Myanmar · KH Cambodia · LA Laos · BN Brunei · CN China · HK Hong Kong · JP Japan · KR South Korea · TW Taiwan · KZ Kazakhstan · UZ Uzbekistan · TR Turkey · IL Israel · LB Lebanon · JO Jordan · SA Saudi Arabia · AE UAE · KW Kuwait · QA Qatar · BH Bahrain · OM Oman · EG Egypt

Common providers

netflix · prime-video · disney-plus-hotstar · jiohotstar · hulu-japan · wavve · tving · viu · vidio · iqiyi · shahid · osn-plus · starzplay · hoichoi · chorki · zee5 · sun-nxt · aha · eros-now · manorama-max · shemaroo-me · crunchyroll · apple-tv-plus · hbo-max

Pass any of these as the provider argument to whats_new_on. The API will suggest near-matches if the slug is wrong.


How it works

The MCP server is a thin client that calls public JSON endpoints on ottasia.com:

  • /api/mcp/where-to-watch?title=...&country=...

  • /api/mcp/whats-new?provider=...&country=...&limit=...

  • /api/mcp/search?q=...&country=...&limit=...

All TMDB data, caching, and per-country provider logic stays on the OTTASIA backend, so your installed npm package never holds an API key.

Alternate transport: HTTP/SSE

If you're integrating from a non-Claude-Desktop client (Claude API, browser-based MCP playground, custom code), you can connect directly to the hosted HTTP endpoint:

https://ottasia.com/api/mcp/sse

Uses the MCP Streamable HTTP transport (stateless, JSON responses). Same 3 tools, same data.

Local development override

To run against a local OTTASIA dev server, set OTTASIA_BASE_URL=http://localhost:3000 in your MCP config:

{
  "mcpServers": {
    "ottasia-local": {
      "command": "node",
      "args": ["/absolute/path/to/this/repo/dist/server.js"],
      "env": { "OTTASIA_BASE_URL": "http://localhost:3000" }
    }
  }
}

Listings

Privacy Policy

This server is a read-only lookup tool. It sends only the query your AI assistant makes (a title name, a streaming service, a two-letter country code) to OTTASIA's public API at ottasia.com and returns streaming availability data with links back to ottasia.com. It does not collect, store, or transmit personal data, credentials, files, or conversation content, and it requires no account or API key.

Full privacy policy: https://ottasia.com/privacy

License

MIT

Available Tools

3 tools
search_titlesSearch titlesAInspect

Search OTTASIA's catalog for movies or TV shows by name. Returns multiple candidates with year, type, brief overview, and country-aware OTTASIA link.

Use this when a user asks 'find me X' or when a query is ambiguous (e.g. 'joker', 'the office') and you need to clarify which title they meant before checking availability. Use where_to_watch instead when the user has already named a specific title and country and just wants the streaming providers.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSearch query (movie or TV show name). English, romanized, or original-language all work.
countryNo2-letter ISO country code for the resulting OTTASIA links (so clicking through opens that country's streaming context). One of: IN, PK, BD, ID, MY, PH, SG, TH, MM, KH, LA, BN, CN, HK, JP, KR, TW, KZ, UZ, TR, IL, LB, JO, SA, AE, KW, QA, BH, OM, EG. Defaults to IN.
limitNoMax number of results (1-20, default 8).

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It describes return fields (year, type, overview, link) and implies read-only operation via 'Search'. Lacks explicit safety or side-effect statement but is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences covering purpose, usage context, and sibling distinction. No wasted words, front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, description adequately covers return values (candidates with year, type, overview, link). Also provides usage guidance and differentiation from sibling, making it complete for a search tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and description adds minimal new meaning beyond the schema's parameter descriptions. It mentions 'country-aware OTTASIA link' relating to country param, but does not elaborate on q or limit beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'Search OTTASIA's catalog for movies or TV shows by name', clearly indicating verb and resource. It distinguishes from sibling tool 'where_to_watch' by specifying when to use each.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use ('when a user asks find me X' or ambiguous queries) and when not to use ('Use where_to_watch instead when user has specific title and country'). Provides clear alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whats_new_onWhat's new on a streaming serviceAInspect

List the latest movies and TV shows recently added to a specific streaming service in a specific country.

Use this tool when a user asks 'what's new on Netflix in India', 'any new shows on Wavve', 'what came out on Disney+ Hotstar this month', etc.

Common provider slugs to use as the provider argument: netflix, prime-video, disney-plus-hotstar, jiohotstar, hulu-japan, wavve, tving, viu, vidio, iqiyi, shahid, osn-plus, starzplay, hoichoi, chorki, zee5, sun-nxt, aha, eros-now, manorama-max, shemaroo-me, crunchyroll, apple-tv-plus, hbo-max

Country must be a 2-letter ISO code from OTTASIA's 30 supported markets (IN PK BD ID MY PH SG TH MM KH LA BN CN HK JP KR TW KZ UZ TR IL LB JO SA AE KW QA BH OM EG). Returns a list of recent arrivals with brief overviews + links. Pair with where_to_watch if the user wants details on a specific title.

ParametersJSON Schema
NameRequiredDescriptionDefault
providerYesStreaming service slug. Examples: netflix, prime-video, disney-plus-hotstar, jiohotstar, wavve, tving, viu, shahid, hoichoi, zee5, sun-nxt. Use lowercase + hyphens.
countryNo2-letter ISO country code. One of: IN, PK, BD, ID, MY, PH, SG, TH, MM, KH, LA, BN, CN, HK, JP, KR, TW, KZ, UZ, TR, IL, LB, JO, SA, AE, KW, QA, BH, OM, EG. Defaults to IN if omitted.
limitNoMax number of titles to return (1-30, default 15). Lower limit = quicker response.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description notes returns list with overviews+links and that limit affects response speed. No mention of auth, rate limits, or side effects. Adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, followed by usage, provider list, country list, return info, and pairing hint. Country list is somewhat long but necessary. No wasted sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but description explains return format and suggests pairing with where_to_watch. For a simple list tool with 3 well-defined parameters, it covers essential context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%; description adds context by listing common provider slugs, valid country codes, default country (IN), and limit range with performance hint. Adds value beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists latest movies and shows added to a specific streaming service and country. It distinguishes from siblings by mentioning pairing with where_to_watch for details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Includes explicit examples and contexts like 'what's new on Netflix in India' and suggests pairing with where_to_watch. Lacks explicit when-not-to-use or contrast with search_titles.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

where_to_watchWhere to watchAInspect

Find which streaming services carry a specific movie or TV show in a specific Asian or Middle Eastern country.

Use this tool whenever a user asks 'where can I watch X in Y' for any of these 30 markets: IN PK BD ID MY PH SG TH MM KH LA BN CN HK JP KR TW KZ UZ TR IL LB JO SA AE KW QA BH OM EG

Returns the matched title's official name + year + provider list grouped by category (subscription, free, free-with-ads, rent, buy). Includes a link to OTTASIA's full title page for users who want trailers, cast, or alternate-country lookups. Best for queries about availability on Netflix, Amazon Prime, Disney+ Hotstar, JioCinema, Hulu Japan, Wavve, TVING, Shahid, OSN+, iQiyi, Viu, Vidio, RCTI+, Hoichoi, Chorki, ZEE5, Sun NXT, Aha, Eros Now, and other regional Asian/MENA streamers.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesMovie or TV show name. English, romanized, or original-language title all work (e.g. 'Squid Game', 'RRR', 'Pathaan', 'Dilwale Dulhania Le Jayenge').
countryNo2-letter ISO country code. One of: IN, PK, BD, ID, MY, PH, SG, TH, MM, KH, LA, BN, CN, HK, JP, KR, TW, KZ, UZ, TR, IL, LB, JO, SA, AE, KW, QA, BH, OM, EG. Defaults to IN if omitted.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully explains the tool's behavior: returns matched title, year, provider list grouped by category, and includes a link to OTTASIA. It does not mention any side effects, authentication, or rate limits, but as a read-only tool this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: first sentence states purpose, then usage condition, then output format, then example streamers. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers all necessary information: input parameters (title and country with examples), output format (matched title, year, providers grouped, link), and specific countries and streamers. No missing details for an AI agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with good descriptions already. The description adds extra context such as example titles ('Squid Game', 'RRR') and streaming services (Netflix, Amazon Prime, etc.), which helps the agent understand typical use cases beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Find which streaming services carry a specific movie or TV show in a specific Asian or Middle Eastern country.' It specifies the exact region and distinguishes from sibling tools like search_titles and whats_new_on by focusing on streaming availability in 30 specific markets.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs when to use: 'Use this tool whenever a user asks where can I watch X in Y for any of these 30 markets' and lists the countries. It also provides examples of streamers. However, it does not explicitly mention when not to use or directly contrast with siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: search_titles for initial lookup, whats_new_on for new arrivals, and where_to_watch for availability. No overlap, so agents can easily select the correct tool.

Naming Consistency2/5

The naming pattern is inconsistent: one tool uses verb_noun (search_titles), while the other two use phrase-style names (whats_new_on, where_to_watch). This mixed convention may confuse agents expecting a uniform pattern.

Tool Count4/5

Three tools is on the lower end of the well-scoped range (3-15). While the set covers core functionality, it feels slightly minimal but still acceptable for a focused streaming guide server.

Completeness2/5

The tool set lacks obvious operations like browsing a provider's full catalog or filtering by genre/rating. Agents cannot answer queries such as 'What sci-fi movies are on Netflix in India?' without workarounds, indicating significant gaps.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    MCP server for searching, discovering, and exploring Chinese long-form video content from WeTV and Tencent Video, enabling AI assistants to recommend dramas, variety shows, anime, and movies with play links, ratings, and episode info.
    6
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AIweather-Anurag/ottasia-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server