# TGGET Niche Research [Health: Active]

**Category:** 🔬 Research  
**Repository:** https://github.com/tgget/tgget-mcp  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/tgget-niche-research

## Description
Validate app and SaaS ideas: search demand, competitors, app store data and a verdict.

## Tools
Capabilities this server exposes over MCP:

- **start_research** — Starts a niche research from a short search phrase or a plain-language description of an app or service idea. A phrase is scanned directly (demand, sub-topics, competitors, signals); a description is first turned into real search queries, the best one is then scanned automatically. Demand is measured in one country and one language: `country` and `language` when given, otherwise the country and the language of the phrase (English: United States, Spanish: Spain, Portuguese: Brazil); write the phrase in the language people search in there. `country` and `language` of the answer tell how the numbers were measured. Returns the research id to poll with get_research. Counts as one research of the plan allowance, whether the data comes from the sources or from the shared cache.
- **get_research** — Returns the current state and findings of a research by id: status, `country` and `language` the demand was measured in (null where a source does not measure by country), headline numbers, ranked candidate phrases, competitor overview, child researches (sub-topics, competitor checks, signals) with their ids, and skipped stages. Call repeatedly until status is completed and pending is 0.
- **get_report** — Returns the final niche report of a finished scan (or the report research itself) as Markdown: verdict, what product to build (customer pains with evidence and severity, positioning, MVP with the pain each feature relieves, platform, monetization, competitor matrix), napkin economics (price hypothesis, acquisition cost from the cost per click in paid search, revenue per customer, whether it adds up, assumptions), SEO plan for the site (clusters, pages with title/H1/description, content plan, FAQ), ASO for App Store and Google Play, name options with domain and App Store availability, landing page draft, distribution channels by type with a first step, effort and priority, validation steps and risks. Pass format "json" for structured data (keys: verdict, product, economics, seo, aso, names, landing, channels, validation, risks).
- **list_research** — Lists the researches the account started itself, newest first: niche scans of a phrase and descriptions of an idea, without the checks they spawned. Use it to find the id of an earlier research before get_research, get_report, compare_research or follow_niche, or to see what is still running. Each item has `id`, `kind`, `phrase`, `status` (queued, running, completed, failed), `mode`, `country` and `language` the demand was measured in, `created_at`, `url` of its page and `total_count`: monthly searches of the phrase, null for a description. `quota` tells how many researches the plan has left. Reads only; spends nothing.
- **run_signal** — Adds one check to a finished research and returns the id of the new child research. Use it when the scan skipped a stage, when a person asks about one phrase in particular, or to rebuild the report after new checks. A niche scan already runs the usual checks by itself, so this tool is for what is missing. Checks added this way are free: they do not spend researches of the plan.

Checks of a demand research (`kind`):
- `competitors`: who holds the search results for a phrase of the research; pass the phrase in `phrase`.
- `dynamics`: two years of demand history.
- `appstore`: App Store apps for the phrase with ratings and freshness.
- `wiki`, `radar`, `youtube`: public interest and community signals.
- `paid`: paid search for the phrase and its strongest candidates: volume, advertiser competition, cost per click.
- `insight`: a summary of the findings written by the language model.
- `report`: the final niche report, written anew from the current data; needs a finished niche scan.

Checks of a child research:
- `fingerprint`: product sites found by a competitors check, with pricing and app links; the parent is that competitors check.
- `reviews`: recent App Store reviews of the leaders; the parent is an App Store research.
- `insight` also accepts a competitors check as the parent.

The parent must be completed and belong to the account. The check runs in the background: poll get_research with the returned `id` every 20-30 seconds until `status` is `completed`. `insight` and `report` are rebuilt at most once an hour.
- **compare_research** — Puts two to five finished niche scans side by side to help choose between ideas. `items` are the niches with their numbers, the report's positioning and napkin economics, and `wins`: in how many rows the niche holds the better value. `rows` are the ranked measures (verdict, demand, trend, cost per click, weak search results, competitor sites, App Store apps, fresh community signals) with the value of every niche and `best`, the indexes of the items that hold the better value; `better` says which way is better (max or min), null when the row is shown but not ranked. Every item names the `country` and the `language` its demand was measured in; demand and cost per click are not ranked across different markets, countries or languages (`mixed_markets`). The marks are computed from numbers, not written by a language model. Every scan needs a finished report. `share_url` is a read-only link to this comparison that works without signing in: give it to the person only when they want to share the comparison, it shows the numbers and the conclusions of their researches to whoever holds it.
- **list_projects** — Lists the niches the account follows. A followed niche (a project) is scanned anew once a month and compared with its previous check. For each project: status, whether the plan serves it, the date of the next check, the latest numbers (verdict, demand, cost per click, competitor sites, App Store, community signals) and what changed at the latest monthly check, as structured `changes` and as `digest` lines of text. Also returns how many niches the plan follows.
- **get_project** — Returns a followed niche with the history of its checks, newest first: the first measurement (`baseline`) and the monthly checks, each with its numbers, what changed since the previous check and the id of the research it came from. Pass that `research_id` to get_report to read the fresh report of a check. Changes are computed from numbers and lists, not written by a language model.
- **follow_niche** — Starts following the niche of a finished scan that has a report: the scan becomes the first measurement and the niche is scanned anew every month, with a digest of what changed sent to the account. Monthly checks do not spend researches; the plan limits how many niches are followed (FREE 1, Starter 2, Pro 10). Following a niche that is already followed returns its project. The niche is followed in the country and the language its scan was measured in (`country` and `language` of the project), so every monthly check measures the same audience.
- **update_project** — Pauses a followed niche (`paused`: no monthly checks, its place in the plan is freed), follows it again (`active`, needs a free place in the plan) or stops following it (`deleted`: the project with its checks and digests is removed for good, the researches stay in the history). Ask the person before deleting.

## Claude Desktop Quick Installation
No confirmed install details yet, so no config is published. Follow the setup steps in the repository above.

## Documentation

## What TGGET Niche Research does

TGGET Niche Research MCP server gives an AI assistant access to TGGET’s hosted niche research service at `https://tgget.io/mcp`. It is intended for checking mobile app and online service ideas against measured search and market data rather than relying only on a written concept.

The TGGET Niche Research MCP server accepts either a search phrase or a plain-language description. A phrase is researched directly; a description is converted into likely search queries and the strongest candidate is scanned. Results can include monthly demand, related phrases, competitors in search results, App Store apps and reviews, demand history, paid search metrics, and public interest signals.

## How it works

Research runs asynchronously. Call `start_research` to receive an id, then poll `get_research` every 20–30 seconds until the status is `completed` and no work remains pending. Use `get_report` to retrieve the finished report in Markdown or structured JSON.

Demand is measured for one country and language. If these are not supplied, TGGET selects them from the phrase, using the corresponding market for English, Spanish, or Portuguese. The returned country and language identify the market behind the measurements.

The service can compare two to five completed scans with `compare_research`. It can also follow a completed niche with `follow_niche`; monthly checks use the same market and provide changes from the previous measurement. Project history is available through `list_projects` and `get_project`.

## Setup and configuration

TGGET Niche Research is a remote Streamable HTTP server. Connect to `https://tgget.io/mcp` and send a personal access token as a Bearer token. The endpoint can describe itself and list tools without authentication, but tool calls require a token.

Create an account at TGGET or in its Android app, confirm the email address, and create a token in Settings under “API and AI assistants.” Tokens are displayed once, expire after one year, and can be revoked by changing the password or closing sessions. Cursor, VS Code, Claude Code, and Codex connection examples are provided in the repository. Codex can read the token from the `TGGET_TOKEN` environment variable.

## Tools and capabilities

The TGGET Niche Research MCP server exposes tools for starting, polling, listing, and reporting research:

- `start_research`, `get_research`, `get_report`, and `list_research` manage scans and their results.
- `run_signal` adds checks such as competitors, dynamics, App Store data, reviews, community signals, paid search, insights, or a rebuilt report. These added checks do not consume research allowance.
- `compare_research` ranks measures across finished reports using their numeric values.
- `follow_niche`, `list_projects`, `get_project`, and `update_project` manage recurring monthly monitoring.

The server also provides the `tgget://quota` and `tgget://sources` resources, plus a `find_niche` prompt that guides an assistant through starting research, waiting for completion, reviewing evidence, and writing a verdict.

## Limitations and notes

A scan counts against the plan when it starts, including when data comes from shared cache. The free plan provides three initial researches and one additional research every 30 days. Followed niches are limited to one on Free, two on Starter, and ten on Pro. Monthly checks do not consume research credits.

Free-plan research is public and may appear in TGGET’s niche catalog; the typed description is not shown there. The API and MCP endpoint share a limit of 60 requests per minute. Search interest is evidence of demand, not a customer count, so the verdict should be treated as an input to further validation. Demand and cost-per-click comparisons are not ranked across different countries or languages.

_Full upstream README: https://allmcps.com/mcp/tgget-niche-research/readme_

