Mukoko News

Pan-African news & analytics for Zimbabwe and 15 African countries: briefings and trends.

사용해야 할까요

품질 및 안전성

A
설명 품질
94%
스키마 완전성
82%
이름 품질
95%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (2)

  • LOWTool 'get_source_view' description lacks action verbget_source_view에서
  • LOWTool 'get_stats' description lacks action verbget_stats에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,705토큰 (도구 정의)
~665 B일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.33%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "mukoko-news": {
      "command": "npx",
      "args": [
        "@nyuchi/mukoko-news-mcp"
      ]
    }
  }
}

실행 가능한 패키지

npm@nyuchi/mukoko-news-mcp1.2.0stdio

원격 엔드포인트

https://news.mukoko.com/mcpstreamable-http
https://news.mukoko.dev/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (16)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_briefing(focus, limit)

Answer "What's happening in [place/topic]?" — top story, recent articles, and trending topics in one call. Accepts country codes (ZW, KE), region names (East Africa, Southern Africa), category topics (politics, business), or omit focus for a pan-African overview. Returns short excerpts with word counts and app links only — call get_article with an article id to read a full article body inline.

입력 스키마

{
  "type": "object",
  "properties": {
    "focus": {
      "type": "string",
      "description": "Country code, region, category, or topic (optional)"
    },
    "limit": {
      "type": "number",
      "description": "Max articles, 1–12 (default 8)"
    }
  }
}
⚪track_story(topic, since, country, limit)

Follow the development of a news story over time. Returns articles in chronological order showing how a story evolved. Use since to control the lookback window.

입력 스키마

{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "description": "Topic, keyword, event, or person name to track"
    },
    "since": {
      "type": "string",
      "enum": [
        "today",
        "week",
        "month"
      ],
      "description": "Lookback window (default: week)"
    },
    "country": {
      "type": "string",
      "description": "Limit to a country code (optional)"
    },
    "limit": {
      "type": "number",
      "description": "Max articles, 1–20 (default 10)"
    }
  },
  "required": [
    "topic"
  ]
}
🟢get_location_news(location, category, limit)

News from a specific place in Africa. Accepts country codes, country names, region names, or city names.

입력 스키마

{
  "type": "object",
  "properties": {
    "location": {
      "type": "string",
      "description": "Country code, country name, region, or city"
    },
    "category": {
      "type": "string",
      "description": "Category to filter (optional)"
    },
    "limit": {
      "type": "number",
      "description": "Max articles, 1–20 (default 10)"
    }
  },
  "required": [
    "location"
  ]
}
⚪compare_locations(locations, topic, limit)

Compare news coverage between 2–4 African countries or regions side by side.

입력 스키마

{
  "type": "object",
  "properties": {
    "locations": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 2,
      "maxItems": 4,
      "description": "2–4 country codes, country names, or region names"
    },
    "topic": {
      "type": "string",
      "description": "Narrow comparison to a topic (optional)"
    },
    "limit": {
      "type": "number",
      "description": "Max articles per location, 1–10 (default 5)"
    }
  },
  "required": [
    "locations"
  ]
}
🟢get_source_view(source, topic, limit)

See how a specific news source is covering a topic.

입력 스키마

{
  "type": "object",
  "properties": {
    "source": {
      "type": "string",
      "description": "Publication name (partial match)"
    },
    "topic": {
      "type": "string",
      "description": "Topic to filter by (optional)"
    },
    "limit": {
      "type": "number",
      "description": "Max articles, 1–20 (default 8)"
    }
  },
  "required": [
    "source"
  ]
}
🟢find_stories(q, tag, category, country, limit)

Search articles by keyword, tag, category, or country. Results carry short excerpts, word counts, and app links only — call get_article with a result's id to read the full article body inline.

입력 스키마

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Keyword or phrase (optional)"
    },
    "tag": {
      "type": "string",
      "description": "Tag name (optional)"
    },
    "category": {
      "type": "string",
      "description": "Category slug or name (optional)"
    },
    "country": {
      "type": "string",
      "description": "Country code (optional)"
    },
    "limit": {
      "type": "number",
      "description": "Max results, 1–20 (default 10)"
    }
  }
}
🟢get_article(id)

Read a single article by ID or slug. Returns the full article body inline as markdown (truncated at ~8000 characters with a link to continue in the app) plus source metadata and the Mukoko app URL. Use this after a list tool (get_briefing, find_stories, …) to read an article without leaving the conversation.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Article _id or slug"
    }
  },
  "required": [
    "id"
  ]
}
🟢list_categories

List all news categories with article counts.

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟢list_sources(country)

List active news sources. Optionally filter by country code.

입력 스키마

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "Filter by country code (optional)"
    }
  }
}
🟢get_stats

Platform statistics: total articles, active sources, and today's output.

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟢get_my_feed(limit)

Personalised news feed based on the authenticated user's article likes and saves. Requires Authorization: Bearer <WorkOS access token>.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "description": "Max articles, 1–20 (default 12)"
    }
  }
}
🟢get_trending_analytics(location, period, limit)

Open analytics: trending topics, categories, keywords, and sources for any location or period. Part of Mukoko's open data policy.

입력 스키마

{
  "type": "object",
  "properties": {
    "location": {
      "type": "string",
      "description": "Country code, region, or city (optional)"
    },
    "period": {
      "type": "string",
      "enum": [
        "today",
        "week",
        "month"
      ],
      "description": "Time window (default: today)"
    },
    "limit": {
      "type": "number",
      "description": "Max results per section, 1–20 (default 10)"
    }
  }
}
⚪detect_surge(location, limit)

Detect sudden spikes in news coverage — compares last 24h against 7-day baseline. Surfaces unusual increases like crime up 5× in Bulawayo or a football surge in Ghana.

입력 스키마

{
  "type": "object",
  "properties": {
    "location": {
      "type": "string",
      "description": "Country, region, or city (optional — omit for continent-wide)"
    },
    "limit": {
      "type": "number",
      "description": "Max surges to return, 1–20 (default 10)"
    }
  }
}
🟢get_content_analytics(location, period)

Open data breakdown of news coverage by category, country, and keyword for a given period.

입력 스키마

{
  "type": "object",
  "properties": {
    "location": {
      "type": "string",
      "description": "Country, region, or city (optional)"
    },
    "period": {
      "type": "string",
      "enum": [
        "today",
        "week",
        "month"
      ],
      "description": "Time window (default: week)"
    }
  }
}
⚪trigger_enrichment(limit, article_ids, reset_attempts)

Manually run the AI enrichment agent over existing articles (classification, keywords, entities, quality scoring). RESTRICTED to platform-team accounts — requires a WorkOS bearer token issued inside the platform-team org. By default enriches the most recent un-enriched articles; pass article_ids to target specific ones, or reset_attempts to re-run articles that previously hit the failure cap.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "description": "How many un-enriched articles to enqueue, 1–50 (default 25). Ignored when article_ids is given."
    },
    "article_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specific article IDs to (re)enrich (optional). Capped at 50."
    },
    "reset_attempts": {
      "type": "boolean",
      "description": "Re-enrich even articles that already hit the failure cap (default false). Use sparingly — it re-bills AI."
    }
  }
}
⚪drain_enrichment_backlog

Drain the ENTIRE un-enriched article backlog, not just one batch. RESTRICTED to platform-team accounts (WorkOS bearer issued inside the platform-team org). Fire-and-forget: asks the pipeline worker to enrich un-enriched articles in batches (oldest first) until the backlog is clear, running independently of the automatic 10-minute sweep. Returns immediately; use trigger_enrichment for a single targeted batch instead.

입력 스키마

{
  "type": "object",
  "properties": {}
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 16개
관측 실패버전이 기록되지 않음—
관측 실패버전이 기록되지 않음—
검증됨버전이 기록되지 않음도구 16개