changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "description": "Compact directory rows for discovering groups. Sorted by Limzo Score.",
+ "properties": {
+ "docs": {
+ "description": "Human-readable API documentation.",
+ "format": "uri",
+ "type": "string"
+ },
+ "groups": {
+ "items": {
+ "properties": {
+ "active_users_7d": {
+ "type": "integer"
+ },
+ "member_count": {
+ "type": [
+ "integer",
+ "null"
+ ]
+ },
+ "messages_7d": {
+ "type": "integer"
+ },
+ "plan": {
+ "enum": [
+ "free",
+ "pro",
+ "community"
+ ],
+ "type": "string"
+ },
+ "score": {
+ "description": "Limzo Score — the directory ranking metric.",
+ "type": "number"
+ },
+ "slug": {
+ "description": "Use with /s/{slug}.json or the get_group_stats MCP tool.",
+ "type": "string"
+ },
+ "stats_json": {
+ "description": "Full curated stats payload for this group.",
+ "format": "uri",
+ "type": "string"
+ },
+ "title": {
+ "type": "string"
+ },
+ "url": {
+ "description": "The human stats page for this group.",
+ "format": "uri",
+ "type": "string"
+ },
+ "username": {
+ "description": "Telegram username without @, when the group is public on t.me.",
+ "type": [
+ "string",
+ "null"
+ ]
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "ok": {
+ "const": true,
+ "type": "boolean"
+ },
+ "openapi": {
+ "description": "Machine-readable OpenAPI document for the REST API.",
+ "format": "uri",
+ "type": "string"
+ },
+ "query": {
+ "description": "The normalized search keyword, or null when listing top groups.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "total_matches": {
+ "description": "Groups that matched, before the limit was applied.",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "ok",
+ "total_matches",
+ "groups"
+ ],
+ "type": "object"
+}