Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,554Letters: 14Defects: 1,331counted 4 min ago
teppi

Server definition

Hash
sha256:5ad15a8647922f17f15af5d09356cdd015520fe7d622f128667bb1917a260e65
What it is
What a remote MCP server returned when asked what it offers: 6 tools

The blob, as servednamed by its sha256

{ "instructions": "A free directory of the press, institutions, datasets, media, people and communities behind the video games industry across twelve profiled markets, plus the trends, platforms and genres that frame them. It answers where to look, not what is true: nothing here is ranked or scored, and a figure reached through it carries the authority of the outlet that published it and no more. Every response carries its own date, its licence and its caveats — pass those on rather than dropping them.", "tools": [ { "description": "The platform and genre maps. 38 platforms — storefronts, consoles, livestreaming and UGC — with who owns each and where its data lives. 30 genres with definitions, subgenres, example games, and the terms actually used in Chinese, Korean and Japanese. Read the genre map before comparing two datasets: the industry has no shared taxonomy and this records where the vendors disagree.", "inputSchema": { "additionalProperties": false, "properties": { "kind": { "description": "Which map.", "enum": [ "platforms", "genres" ], "type": "string" } }, "required": [ "kind" ], "type": "object" }, "name": "get_landscape", "outputSchema": null }, { "description": "How to research one of 12 games markets, and the profile behind it. It opens with before_you_start, the research notes for that market: which national annuals are paid and what is free, which venues are closed or could not be verified, which figures overlap or are published on a basis that will not compare, what a weekly chart does and does not count. Then known_gaps, what the directory does not hold for that market and where to go instead. Then a sourced narrative built from claims that each carry the link they came from, a market-size figure with the basis it was published on, a player-population figure with the definition of who was counted, and where that market's data lives. Only these twelve have profiles — for any other market code, search_sources with a market filter is what exists.", "inputSchema": { "additionalProperties": false, "properties": { "code": { "description": "Market code.", "enum": [ "US", "JP", "KR", "UK", "DE", "IN", "BR", "FR", "CN", "MENA", "IT", "CA" ], "type": "string" } }, "required": [ "code" ], "type": "object" }, "name": "get_market", "outputSchema": null }, { "description": "Retrieve one source by its slug, with everything recorded about it. Slugs come back from search_sources and are permanent — the same slug names the same source across releases, so it is what to cite.", "inputSchema": { "additionalProperties": false, "properties": { "slug": { "description": "Permanent identifier, e.g. \"sensor-tower\".", "type": "string" } }, "required": [ "slug" ], "type": "object" }, "name": "get_source", "outputSchema": null }, { "description": "The 42 conversations currently moving the games industry, each with what it is, why it matters, the markets it lands in, its stage, how old the row is, and where it sits on the Three Horizons: H1, the current system running down, H2, the transition and its four groups, H3, the emerging future, or perennial ground. The placements are an editorial reading, not a score, and every answer carries the key to them in horizons. A routing map rather than a synthesis: it names arguments and points at where they are happening, and takes no position on any of them. Filter by horizon, group, market, stage, category or a free-text query; every filter narrows the list and none of them ranks it. Rows come in the order /trends reads them, 14 to a page: page with offset. Name one by slug to read it in full, with its further reading and its claims: a dated timeline, figures, status, consequences, objections and what to watch, each with the link it came from. This is the fastest-decaying data here — every row is dated, and anything older than about six months needs a refresh.", "inputSchema": { "additionalProperties": false, "properties": { "category": { "enum": [ "Money & business model", "Platform & distribution", "Culture & audience", "Regulation, safety & age", "Geography & power", "Technology" ], "type": "string" }, "group": { "description": "One of the four groups inside h2: shifts that make room for h3, rules being rewritten, moves that prolong h1, and bets that stalled. Only h2 trends carry one.", "enum": [ "makes-room", "rewriting-rules", "prolongs-h1", "stalled-bets" ], "type": "string" }, "horizon": { "description": "h1 is the currently dominant system, losing its fit. h3 is the early working examples of what may replace it. h2 is the turbulent ground between them, sorted into four groups. perennial is the pressures every horizon has to answer.", "enum": [ "h1", "h2", "h3", "perennial" ], "type": "string" }, "include_further_reading": { "description": "Default false, and true when slug is given. Further reading roughly doubles a row, so at most 10 rows travel with it; ask for a row by slug to read one in full.", "type": "boolean" }, "limit": { "description": "Rows per page, default and at most 14 without further reading and 10 with it. A page is the next rows in the order described, never the top ones — nothing here is ranked.", "type": "number" }, "market": { "description": "Trends that reach this market: tagged to it directly, reached through an EU tag, or global. Each row then says which, in market_relevance, and the list comes back closest first. Most trends in games are global and apply everywhere.", "enum": [ "US", "Global", "JP", "KR", "Not market specific", "UK", "DE", "IN", "BR", "FR", "CN", "MENA", "IT", "SEA", "CA", "Nordics", "MX", "ES", "TR", "NL", "AU", "PL", "TW", "EU", "LATAM", "Asia", "BE" ], "type": "string" }, "offset": { "description": "Rows to skip before the first one returned, for paging. Default 0. The note on each page says what to pass for the next.", "type": "number" }, "query": { "description": "Free text, matched against the name, what it is, why it matters, where to follow it, its category, its horizon label and line, and the titles of its further reading. All words must appear. A word filter, not a semantic search: \"layoffs\" finds the layoff trend, a synonym the rows never use finds nothing. Omit to browse a filter instead.", "type": "string" }, "slug": { "description": "One trend by its permanent slug, as a list returns it. Comes back with its claims, and with its further reading unless include_further_reading says otherwise. The other filters are ignored when this is set.", "type": "string" }, "stage": { "description": "Dominant is sustained mainstream coverage for a year or more. Emerging is real and accelerating. Perennial recurs cyclically. Receding was dominant and is cooling, kept so dated coverage is recognisable as dated.", "enum": [ "Dominant", "Emerging", "Perennial", "Receding" ], "type": "string" } }, "type": "object" }, "name": "list_trends", "outputSchema": null }, { "description": "Search 978 curated sources on the video games industry: press outlets, trade associations, datasets, analysts, podcasts, books, YouTube channels and communities across 26 markets. Every one was opened and read before it was described, and each result says what it lets you find out, who owns it and what it costs. This answers \"where would I look for this?\" — it is a directory of sources, not a source of facts, and nothing in it is ranked or scored.", "inputSchema": { "additionalProperties": false, "properties": { "cost": { "description": "Recorded on 576 of 978 rows — the press outlets and the individual people are not priced, so filtering on this excludes them rather than reporting them as not free.", "enum": [ "Free", "Paid", "Freemium", "Unknown" ], "type": "string" }, "group": { "description": "Broad kind of source.", "enum": [ "Press", "Institutions", "Media", "Data", "Communities", "People" ], "type": "string" }, "language": { "description": "The language you would be reading it in.", "enum": [ "English", "Japanese", "Korean", "German", "French", "Spanish", "Portuguese", "Arabic", "Italian", "Chinese", "Turkish", "Dutch", "Polish", "Traditional Chinese", "Multilingual", "Bahasa Indonesia", "Swedish", "Hindi", "Vietnamese", "Finnish", "Danish", "Norwegian", "Thai", "Indonesian", "Malay" ], "type": "string" }, "limit": { "description": "Rows per page, default 20, maximum 50. A page is the next rows in file order, never the top ones — nothing here is ranked.", "type": "number" }, "market": { "description": "Market code. US, JP, KR, UK, DE, IN, BR, FR, CN, MENA, IT, CA have full profiles behind them; SEA, Nordics, MX, ES, TR, NL, AU, PL, TW, EU, LATAM, Asia, BE only tag sources. Global means the source covers everything, and \"Not market specific\" means market is not its axis.", "enum": [ "US", "Global", "JP", "KR", "Not market specific", "UK", "DE", "IN", "BR", "FR", "CN", "MENA", "IT", "SEA", "CA", "Nordics", "MX", "ES", "TR", "NL", "AU", "PL", "TW", "EU", "LATAM", "Asia", "BE" ], "type": "string" }, "medium": { "description": "What form it takes.", "enum": [ "News outlet", "Organisation", "Forum or community", "Video channel", "Person", "Data tool", "Podcast", "Book or paper", "Company disclosure", "Report or document", "Newsletter", "Research firm", "Link list" ], "type": "string" }, "offset": { "description": "Rows to skip before the first one returned, for paging. Default 0. The note on each page says what to pass for the next.", "type": "number" }, "query": { "description": "Free text, matched against the name, the description and the owner. All words must appear. Omit to browse a filter instead.", "type": "string" } }, "type": "object" }, "name": "search_sources", "outputSchema": null }, { "description": "44 search techniques for games research, each with a query you can paste, what it surfaces and why it works. Includes local-language strategies for researching the Japanese, Korean and Chinese markets without reading the language. Use this before searching the open web on a games question — these are the queries that reach material a plain search buries.", "inputSchema": { "additionalProperties": false, "properties": { "market": { "description": "Techniques for this market, plus the ones that apply everywhere.", "enum": [ "US", "Global", "JP", "KR", "Not market specific", "UK", "DE", "IN", "BR", "FR", "CN", "MENA", "IT", "SEA", "CA", "Nordics", "MX", "ES", "TR", "NL", "AU", "PL", "TW", "EU", "LATAM", "Asia", "BE" ], "type": "string" }, "query": { "description": "Your question in your own words, for example \"what are Japanese players saying about a launch\". Techniques are ranked by how many of its words they mention, so a whole question works better than one keyword.", "type": "string" } }, "type": "object" }, "name": "search_techniques", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:5ad15a8647922f17f15af5d09356cdd015520fe7d622f128667bb1917a260e65 | sha256sum