4pda-mcp
4PDA MCP
ブラウザなしで 4PDA フォーラムの lofi(テキスト版) を公開する MCP サーバー。impit を使用して Cloudflare の TLS チャレンジを通過します。
なぜ lofi なのか
lofi/テキスト版はフルページの約 50 倍小さく、マークアップがシンプルで安定しているため、LLM での利用に最適です。フル版(?act=idx、?showforum=、?showtopic=)は JS が多用され、Cloudflare によるアクセス制限の対象です。
Related MCP server: Reddit MCP Server
URL 規約(判明分)
4PDA は lofi のエントリを変更しました。lofiversion/index.php?index.html は現在 404 を返します。現行の形式は次のとおりです:
lofiversion/index.php?f{forum_id}.html— フォーラムページ(サブフォーラム + トピック一覧)lofiversion/index.php?t{topic_id}.html— トピックページ 1lofiversion/index.php?t{topic_id}-{offset}.html— トピックページ N(ステップ 20)index.php?act=idx— フルインデックス。トップカテゴリの列挙にのみ使用
固定されたヘッダー投稿はすべてのトピックページで繰り返し表示されます。このサーバーはページ ≥ 2 ではそれを除外します。
ツール
list_forums(forum_id?)—forum_idを省略した場合はトップカテゴリを、指定した場合はそのフォーラムのサブフォーラム(およびトピックの要約)をフラットなリストとして返します。クライアントがネストできるツリーを返します。list_topics(forum_id)— フォーラム内のトピック: id、タイトル、返信数、is_important。list_posts(topic_id, page=1)— ページ内の投稿: 投稿者、日付、html(内部リンクは可能な場合 lofi に書き換え)。ページ ≥ 2 ではヘッダー投稿を除外します。
実行
pip install -e .
4pda-mcp # stdio MCP server
# or: mcp run src/fourpda_mcp/server.pyブラウザ不要、認証不要(読み取り専用の公開コンテンツ)。impit が Chrome を装って Cloudflare を通過します。
レート制限
4PDA は lofi エンドポイントの前に Cloudflare を配置しています。このエンドポイントはキャッシュされないため、すべてのリクエストはオリジンに到達し、Cloudflare がレート制限をかけます。制限値は公開されておらず、実測で確認されています(2026年8月):
リクエストレート | 結果 |
1 req / 2s | クリーン (10/10) |
1 req / s | クリーン (20/20) |
2 req / s(0.5s 間隔) | クリーン (30/30) |
5 req / s(0.2s 間隔) | 約 20 リクエスト目で 429、 |
サーバーは、リクエスト間に最小間隔を強制することで、発火点を大きく下回る状態を維持します(FOURPDA_MIN_INTERVAL、デフォルト 1.0 — つまり 1 req/s。確認済みで安全な 2 req/s に対して 2 倍のマージン)。それでも 429 が発生した場合、サーバーは Retry-After によるクールダウンを記録し、それ以上のリクエストを送らずに、すべてのツール呼び出しから構造化された rate_limited ペイロードを返します:
{"rate_limited": true, "retry_after_seconds": 3600,
"retry_at_utc": "2026-08-24T23:00:00Z",
"hint": "4PDA is rate-limiting requests. Retry after 3600s."}これは通常の(エラーではない)結果として返されるため、エージェントは retry_after_seconds を読み取って、ブロックされたエンドポイントへリクエストを連打せずに待機できます。クールダウンは 1 時間を上限としているため、異常な Retry-After によってプロセスがフリーズすることはありません。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseAqualityDmaintenanceReddit MCP Server — No API Keys Required. Browse, post, comment, vote, and manage your Reddit account from any MCP client.202MIT
- AlicenseNot gradedqualityDmaintenanceProvides read-only access to Reddit through 8 tools for searching, browsing, and retrieving posts, comments, and user data, compatible with any MCP client.MIT
- AlicenseAqualityAmaintenanceProvides MCP-compatible AI clients with full access to a Flarum forum's API, enabling reading, searching, creating discussions, replying, moderation, and management of users, tags, and groups.152MIT
- FlicenseAqualityCmaintenanceMCP server for the SP-Tarkov Forge API. Exposes Forge endpoints as MCP tools over stdio, letting LLMs search mods, check updates, resolve dependencies, browse addons, and list SPT versions.13
Related MCP Connectors
Reddit MCP — public Reddit data via JSON endpoints (no auth required)
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
Lemmy MCP — public reads on any Lemmy instance.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mishannn/4pda-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server