Skip to main content
Glama
yongkyu4803

govtpress-mcp

by yongkyu4803

govtpress-mcp

A read-only MCP server that retrieves press releases from 12 South Korean government agencies. Implemented with Next.js App Router + mcp-handler and deployed on Vercel.


What this server does

It is an index that finds "which agency announced what and when." It provides title, agency, publication date, and original URL, but does not provide full text or summaries. To check content, follow the original URL in each result.

Collection period

2025-11-11 ~ present (updated daily)

Total count

approx. 8,300

Agencies

12 (all 12 complete as of 2025-12-19)

Date standard

KST (Asia/Seoul), YYYY-MM-DD

Target agencies

ftc Fair Trade Commission · kca Korea Consumer Agency · fsc Financial Services Commission · fss Financial Supervisory Service · moef Ministry of Economy and Finance · msit Ministry of Science and ICT · molit Ministry of Land, Infrastructure and Transport · motie Ministry of Trade, Industry and Energy · mois Ministry of the Interior and Safety · mohw Ministry of Health and Welfare · mss Ministry of SMEs and Startups · mcst Ministry of Culture, Sports and Tourism


Related MCP server: korean-law-mcp

Tools

Tool

Purpose

press_search

Search by title keyword, agency, period, department (primary)

press_latest

Recent N days of publications + collection freshness warning

press_get

Retrieve single-item metadata by id or original URL

press_daily_briefing

Return publications for a specific date grouped by agency

press_list_agencies

Per-agency code, cumulative count, collection start date

press_stats

Publication volume aggregated by period, agency, time unit

press_coverage

Missing collection days and per-agency collection failure history

Example

"최근 3개월 금융위·금감원의 가계부채 관련 발표 찾아줘"   → press_search
"어제 정부 보도자료 브리핑 만들어줘"                      → press_daily_briefing
"올해 부처별 보도자료 발행 추이 비교해줘"                 → press_stats
"데이터 어디까지 수집돼 있어?"                            → press_coverage

Data limitations — what to know before reading

  1. No full text or summaries. Don't guess content from the title alone; check the original URL.

  2. Search covers titles only. Words not in the title cannot be found.

  3. The collection system changed on 2026-04-21. Around that date, the daily collection volume jumps from about 25 to 55 items. This is not a change in government announcement volume but an expansion of collection scope. Time-series comparisons spanning this point are not valid, and press_stats warns about it automatically.

  4. Each agency has a different collection start date. Do not compare agencies over periods before 2025-12-19.

  5. The responsible department field exists only in data before 2026-07-02 (a field specific to the legacy collection pipeline).

  6. Weekend publications are sparse. Saturday averages 1.8 items per day, Sunday 8.4 (weekdays 31~44).


Architecture

MCP 클라이언트 ──Streamable HTTP──> Vercel Function (Fluid Compute, icn1)
                                     app/[transport]/route.ts
                                     └ mcp-handler (stateless, Redis 불필요)
                                          │ supabase-js, anon key, 읽기 전용
                                          ▼
                                   Supabase Postgres
                                   └ VIEW press_releases_unified
                                        ├ govt_press_releases (현행 파이프라인)
                                        └ press_releases      (구 파이프라인, 이력)

It integrates two generations of collection pipelines into a live VIEW. Using agency + normalized title as the key, duplicates are removed within a ±1 day tolerance of the publication date, and updates from either pipeline are reflected automatically.

Security

Only the anon (publishable) key is used. Since the RLS policies on the target tables and views allow SELECT only, the service_role key is not placed in the deployment environment.


Development

npm install
cp .env.example .env.local   # SUPABASE_URL / SUPABASE_ANON_KEY 채우기
npm run dev                  # http://localhost:3000/mcp

Verification

node scripts/smoke.mjs http://localhost:3000/mcp

It runs initialize → tools/list → calls for 13 tool cases and prints the response line count and approximate token usage. On successful completion, it prints 전 케이스 통과 as the last line.

Interactive inspection is also possible with MCP Inspector.

npx @modelcontextprotocol/inspector

Deployment

vercel link
vercel env add SUPABASE_URL production
vercel env add SUPABASE_ANON_KEY production
vercel --prod

After deployment, the endpoint is https://<project>.vercel.app/mcp.

Client registration

claude mcp add --transport http govtpress https://<project>.vercel.app/mcp

Database objects

Supabase objects this server depends on (created via migration).

Object

Role

press_releases_unified (view)

Integrates both pipelines + removes duplicates. The app reads only this

press_stats(from,to,group_by,agencies)

Publication volume aggregation (GROUP BY not possible via PostgREST)

press_missing_days(from,to)

Computes missing collection days

press_agency_summary()

Per-agency cumulative count/start date/latest date

Performance note: Because the database collation is en_US.UTF-8, sorting Korean strings is very slow. The view's deduplication key (title_key) is fixed with COLLATE "C" — it is a key dedicated to normalized grouping, so linguistic sort order is unnecessary, and this single line reduces query time from 10.3 seconds to 0.2 seconds. Do not remove this specification. It will immediately hit PostgREST's 3-second statement timeout.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Enables searching and retrieving Korean Supreme Court precedents from the law.go.kr Open API, with support for keyword search and detailed judgment text.
    2
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables searching Korean procurement notices from the public data portal, with support for integrated search across categories, flexible date ranges, and attachment extraction.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI to query real-time Korean public data including weather, real estate prices, air quality, economic indicators, and business registration via natural language.
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Search company disclosures and financial statements from the Korean market. Retrieve stock profile…

  • Access Korea’s G2B procurement and Nara Market data for bid notices, awards, contracts, statistics…

  • Korean government open data - weather, population, law search via data.go.kr

View all MCP Connectors

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/yongkyu4803/GQAI-GovtPress-mcp'

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