
agri-ja 日本の農業政策・補助金・米の概算金
net.agri-jaPublished by agri-ja.netOfficial publisherv1.0.0Updated Oct 24, 2026
Japanese agriculture policy, subsidies and rice advance payments. 日本の農業政策・補助金・米の概算金
Overview
A remote, read-only MCP endpoint for a Japanese agriculture news site, letting an assistant search articles and look up rice advance payments and subsidies.
- What you can do
- Search and read articles: search the site's articles and fetch a single article as key points, an opening excerpt and its URL rather than full text. Look up rice advance payments: retrieve the site's figures on Japanese rice advance payment amounts. Find subsidies: look up Japanese agriculture subsidy information. All results point back to the source site so answers can cite it.
- When to use it
- Useful when answering questions about Japanese agriculture policy, farm subsidies or rice advance payment figures and you want sourced results from one Japanese-language agriculture site. Not a general web search or a substitute for official government sources.
- Requirements
- A remote streamable HTTP endpoint; no installation, account, API key or header is needed. The README states it is read-only and unauthenticated, and that it is registered as a custom connector in Claude, ChatGPT or Cursor.
Installation
In SourceWeft
- Open agri-ja 日本の農業政策・補助金・米の概算金 in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/net.agri-ja%2Fagri-ja/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"agri-ja": {
"type": "http",
"url": "https://agri-ja.net/mcp"
}
}
}README
農業情報メディア(nogyo-media)
Next.js 15(App Router)+ TypeScript + Tailwind CSS v4 で構築した農業情報メディアの静的サイトです。記事本文は content/articles/*.md の frontmatter と HTML 本文で管理します。Git リモートは GitHub を想定しています(Vercel の Git 連携とも相性がよいです)。
メディア方針・未決バックログ・SEOメモは docs/メディア方針と実装メモ.md にまとめています(実装・運用時の参照用)。
はじめての公開まで(ほぼ自動)
ターミナルでこのフォルダに移動できる前提です。あなたが用意するのは 名前・メール・GitHub のトークン だけです(トークンは GitHub に一度も載せない でください)。
-
設定ファイルを作る(例にコピーして編集)
setup.secrets.envを開き、GIT_USER_NAME・GIT_USER_EMAIL・GH_TOKENを埋めます。- GH_TOKEN … GitHub → Settings → Developer settings → Personal access tokens で作成(リポジトリへの push ができる権限が必要です)。
- トークンの代わりに GitHub CLI で
gh auth login済みなら、GH_TOKENを空にしても push できます。
-
初回の Git 設定・コミット・GitHub へ push を一括実行
-
(任意)Vercel をトークンだけで先に本番に出す
setup.secrets.envにVERCEL_TOKEN=...(Vercel → Account Settings → Tokens)を追加し: -
push のたびに自動で本番更新したい場合(おすすめ)
Vercel で New Project → さきほどの GitHub リポジトリを Import(Root Directory は空のまま)。これで 2回目以降はgit pushだけでデプロイされます。
注意: setup.secrets.env は .gitignore 済みです。絶対にコミット・共有しないでください。 漏れたらトークンはすぐ無効化し、作り直してください。
記事化開始→確認→WEB公開(標準フロー)
microCMS は使わず、ファイルベースのみで公開します。
0) 元PDFを置く
記事作成/記事化入力/ に元PDFを置きます。
1) チャット指示で記事化開始(またはコマンド)
チャットで「このPDFを記事化開始」と指示するか、nogyo-media で次を実行します。
実行すると次が作られます。
記事/元資料/記事と元資料/<ファイル名>/- 同フォルダ内に元PDFコピー
- 同フォルダ内に
<ファイル名>_解説記事.html(雛形) - 同フォルダ内に
<ファイル名>_作業メモ.md
2) 記事を作成して確認する
記事/元資料/記事と元資料/<ファイル名>/<ファイル名>_解説記事.html を完成させ、内容を確認します。
補足:
- ページ上部の
タイトル / 日付 / タグ / 読了目安 / 目次 / 共有操作はサイト側で共通表示されます。 - HTML本文側では
<article>内に本文を記述し、<h1>や先頭<header>は原則不要です(重複表示を避けるため)。 - 記事生成時のルールは docs/記事生成プロンプト.md を必ず参照してください。
data:image/ Base64画像 / SVGの data URI はそのまま公開しません。Google が読む HTML を極端に肥大化させるため、公開時には外部画像へ変換・軽量化します。
3) 確認OK後にWEB用ファイルを生成する
例:
このコマンドで次を作成/更新します。
content/source-html/<slug>.htmlcontent/articles/<slug>.md(sourceHtmlFile参照型)
補足:
stage-article-for-web.shは、HTML 内のdata:imageやローカル画像をpublic/article-images/<slug>/に書き出し、HTML のsrcを公開用パスへ差し替えます。- CSS の
url(data:...)は変換対象外のため、含まれている場合はエラーで停止します。 - 図版そのものは禁止ではありません。禁止しているのは HTML への画像バイナリ埋め込みを、そのまま公開すること です。
- 公開図版は PNG を既定とします(
prepare-article-assets.py)。AVIF は環境によってデコードされず真っ白になることがあるため、public/article-images/**/*.avifとsource-html内の.avif参照はnpm run build前の検証で失敗します。 - PDF・公式スライドの図版は、スライド内の一部を切り抜かず、該当ページ(スライド)を1枚まるごと画像化して掲載します(1 PDF ページ=原則 1 画像)。再現用に
scripts/render-pdf-page-to-png.py(要pymupdf)があります。
4) 最後に公開する(手動)
公開は コミット と push の2段階に分かれています。article:publish はコミットまでで止まり、push しません。
publish-article.sh は content/articles/<slug>.md に加えて、sourceHtmlFile が指定されている場合は対応する content/source-html/*.html も一緒にコミットします。あわせて 記事一覧 CSV(public/articles-index.csv)も再生成してコミットし、最後に未 push のコミット数を表示します。
push は1日1回にまとめてください。 Vercel の課金は読者のアクセス量ではなく push 回数(ビルドCPU時間) でほぼ決まります(1 push ≈ $0.14、Pro の月間クレジットは $20)。記事を3本出す日も、コミットを3つ積んでから最後に
npm run article:pushを1回だけ実行します。「1記事=1コミット」は revert しやすさのために維持し、push だけをまとめるのが原則です。使い切るとサイトが停止します(2026-08-10 に実際に3日22時間停止)。なお push を実行してよいのは、ユーザーから「push して」「公開して」と明示的に指示があったときだけです。指示がなければコミットまでで止め、「公開待ち」として報告します。
push したら、その場で台帳とVercelを確認する
push は「投げて終わり」にしません。次の2つを push 直後に必ず済ませます。
- 本番反映を確認する。 ローカルの
npm run buildが通っても本番に出たとは限りません。クエリを付けないプレーンな本番URLで、記事・図版・sitemap 掲載を確認します(?cb=などを付けるとキャッシュやルーティングが変わり「未反映」と誤判定します)。デプロイが数時間生成されないことが実際にあります。 運営/公開キュー.tsvの該当行を更新する。 状態を承認待ち→公開済にし、公開コミット列にコミットハッシュを入れます。
2 を飛ばすと、push は済んでいるのに台帳では「承認待ち」のままという行が溜まり、次に誰かが見たとき「まだ公開されていない記事」に見えます。2026-08-25 の棚卸しでは、この形のずれが3件見つかりました(うち1件は、コミットされないまま作業ツリーに4日間残っていた変更)。台帳はコミット直後ではなく push 直後に更新してください。コミットしただけの段階では、まだ公開されていないためです。
記事一覧 CSV(タイトル・URL・公開日)
トップ・新着・カテゴリ・タグのハブページと、全公開記事を タイトル / URL / 公開日 の3列で出力します(ハブページの公開日列は空)。
自動更新のタイミング
npm run article:publish… 記事 push 時に CSV も同じコミットへ含めるnpm run build… Vercel デプロイ前にも再生成(push 忘れがあっても本番 CSV は最新化)
記事の元データは content/articles/*.md の frontmatter(title / slug / publishedAt)です。記事 URL は /articles/<slug> 形式です。
ローカルでの起動
ブラウザで http://localhost:3000 を開きます。
本番ビルド:
Vercel へのデプロイ
- 本リポジトリを GitHub(または GitLab / Bitbucket)にプッシュします。
- Vercel にログインし、「New Project」で該当リポジトリをインポートします。
- Root Directory は、このリポジトリをそのままデプロイする場合は空のまま(または
.)で問題ありません。親フォルダに複数プロジェクトがあるモノレポのときだけnogyo-mediaなどサブフォルダを指定します。 - フレームワークは Next.js と自動検出されます。そのままデプロイします。
環境変数は現状のファイルベース記事のみでは不要です。ドメインやプレビュー URL は Vercel のプロジェクト設定から追加できます。
初回/2回目以降の整理
GitHub 上のリポジトリの Actions タブで、ワークフロー「CI」の成否を確認できます。Vercel のダッシュボードで各デプロイのログも見られます。
microCMSについて
現在の標準運用では microCMS を使いません。
content/articles と content/source-html のファイルベース運用で公開します。
microCMS を有効にする場合も、各記事の tags に読者タグを1〜3個含めないとビルドに失敗します。
MCP サーバー(AIエージェント向け公開エンドポイント)
https://agri-ja.net/mcp で、記事と公開データを MCP(Model Context Protocol) のツールとして提供しています。実体は app/mcp/route.ts の1ファイルだけです。
- 読み取り専用・認証なし。MCP 2026-07-28(ステートレス)と 2025 系 Streamable HTTP の両方を同じURLで受けます。
- ツールは4つ:
search_articles/get_article/rice_advance_payment/find_subsidy - 記事本文は全文を返さず「要点+冒頭抜粋+URL」に留めます。AIの回答に出典URLが載り、読者がサイトに来られる状態を保つためです。
- データ源は記事とサイト内ツールと同じ(
content/)。記事を publish すればMCP側も自動で最新になります。 /mcpは実行時にcontent/を読む唯一のルートなので、next.config.tsのoutputFileTracingIncludesから外さないでください(外すと本番で ENOENT)。
利用のしかた(案内するとき): Claude / ChatGPT / Cursor の「カスタムコネクタ」に https://agri-ja.net/mcp を登録するだけです。所在は /llms.txt でも告知しています。
計測: MCP経由の利用は GA4 にも Search Console にも映りません。Vercel の Function Logs に出る [mcp] <method> <status> <ms> が唯一の計測点です。
公式レジストリ(registry.modelcontextprotocol.io)
net.agri-ja/agri-ja として登録済み(2026-08-07・status active)。名前空間は GitHub ではなく agri-ja.net のドメイン認証(HTTP方式) で取っています。
- 公開鍵:
public/mcp-registry-auth→next.config.tsの rewrites で/.well-known/mcp-registry-authとして配信(Vercel はpublic/配下のドットディレクトリを配信しないため、public/.well-known/に直接置くと本番で404になります) - 秘密鍵:
~/.config/mcp-registry/agri-ja-key.pemとagri-ja-privkey.hex(リポジトリ外。コミットしない) - CLI:
~/.local/bin/mcp-publisher
ツールを追加・変更したら server.json の version を上げて再公開します:
動作確認(ローカル):
ディレクトリ概要
app/— App Router のページ・レイアウトcomponents/— ヘッダー・ヒーロー・カード・サイドバーcontent/articles/— 記事 Markdown(frontmatter + HTML 本文)lib/articles.ts— 記事データ層lib/categories.ts/lib/tags.ts— カテゴリ・読者タグ・テーマタグ正規語彙(THEME_TAG_REGISTRY)
記事の tags には 読者タグ(生産者向け / 小売向け / 流通向け / 消費者向け)を 必ず1〜3個 含めてください。テーマタグは docs/theme-tags.md の正規語彙から 0〜3個 付けます。未登録タグや読者タグ個数違反はビルド時にエラーになります。
新規記事のテーマタグ提案: python3 scripts/suggest-theme-tags.py <slug> <category>
ライセンス
プライベートプロジェクト用。コンテンツの著作権は各出典に従ってください。
Source: README.md at commit 7b433ff
Tools
0Version history
1- v1.0.0LatestSep 16, 2026
Score
75% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listedRequired15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.