Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Prediction-market fee/KYC/withdrawal data, venue recommendations, and a paid x402 change feed.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://prediction-friction-tracker-production.up.railway.app/mcp/在终端中运行这条命令
claude mcp add --transport http prediction-friction-tracker https://prediction-friction-tracker-production.up.railway.app/mcp/粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"prediction-friction-tracker": {
"url": "https://prediction-friction-tracker-production.up.railway.app/mcp/"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"prediction-friction-tracker": {
"type": "http",
"url": "https://prediction-friction-tracker-production.up.railway.app/mcp/"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://prediction-friction-tracker-production.up.railway.app/mcp/菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 ndrysdal-byte 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于–,最新版本(1.0.0)于3个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Kanal Varna — drains, leaks & plumbing (Varna, BG)
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drain unblocking, leak detection & plumbing in Varna, Bulgaria: services, prices, areas, contact
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Structured KYC, fee, and withdrawal data across 12 prediction-market venues, plus a change feed for when those terms move and a natural-language "which venue is best for X" recommendation tool. Built for AI agents that need to check execution friction before routing a trade — not for humans clicking around a dashboard.
Live now: https://prediction-friction-tracker-production.up.railway.app
GET /friction/venues, GET /friction/venue/{slug}, GET /friction/changes?since= . Full OpenAPI spec at /openapi.json, interactive docs at /docs, agent-readable summary at /llms.txt./mcp/, exposing list_venues, get_venue, recommend_venue, and get_changes_info as tools. Point any MCP-compatible client at the /mcp/ URL directly./friction/changes (the time-sensitive change feed) is gated by the x402 protocol: unpaid requests get a real 402 with a payment challenge; pay $0.05 USDC on Base mainnet and retry to get the data. This is live, verified end-to-end with real money, not a demo — see api.py for the CDP-facilitator wiring.| Endpoint | Cost | What it returns | ||
|---|---|---|---|---|
GET /friction/venues | Free | Current snapshot of every tracked venue. Optional `?confidence=verified\ | stale\ | unconfirmed` filter. |
GET /friction/venue/{slug} | Free | One venue's current fee/KYC/withdrawal/API-access data, e.g. /friction/venue/kalshi. | ||
GET /friction/changes?since= | $0.05 USDC (x402) | Append-only log of every detected change since a timestamp — the time-sensitive product. |
Every record carries a confidence field: verified (spot-checked or high-confidence extraction), stale (source was unreachable, showing a cached value), or unconfirmed (LLM extraction was ambiguous). Treat unconfirmed as a lead to verify against the venue directly, not a fact to trade on.
list_venues(confidence) — browse/filter the current snapshot.get_venue(slug) — one venue's full data.recommend_venue(query) — free-text "which venue is best for lowest fees on high-frequency trading" / "I don't want to do KYC" / "API access without a wallet" style questions, reasoned over the current dataset. Says so explicitly rather than guessing when a query depends on data this tracker doesn't have (liquidity, volume, spread, uptime).get_changes_info() — describes the paid change feed (URL, price) without reimplementing it for free.| File | What it does |
|---|---|
schema.py | The data model — one VenueFriction record per venue, plus the VenueRecommendation response shape |
venues.py | The 12 tracked venues and their policy-page source URLs |
scrapers/base.py | Fetches and cleans raw policy-page text (requests + Playwright fallback for JS-rendered pages) |
extract.py | Sends raw page text to Claude, gets back a structured VenueFriction matching the schema |
recommend.py | Natural-language venue recommendation — reasons over the current dataset via Claude, structured-output constrained to real venue slugs |
reference_check.py | Cross-checks scraped fees against a third-party source (TradeBlock), flags divergences for human review |
storage.py | SQLite: current_state table (latest snapshot) + change_log table (append-only, the paid product) |
diff.py | Compares a fresh extraction to the stored one, writes a ChangeEvent for anything that moved |
run_pipeline.py | Orchestrates fetch → extract → diff → store, for all 12 venues |
api.py | FastAPI server — the HTTP endpoints above, x402 payment gating, MCP mount |
mcp_server.py | The MCP tool definitions, mounted into api.py at /mcp/ |
test_pipeline_logic.py, test_recommend_logic.py | Pure-logic tests, no API key needed |
pip install -r requirements.txt
python test_pipeline_logic.py # no API key needed, proves storage/diff logic python test_recommend_logic.py # no API key needed, proves recommendation logic export ANTHROPIC_API_KEY=sk-ant-... python run_pipeline.py # real scrape -> extract -> store, all 12 venues uvicorn api:app --reload # boots the API on localhost:8000
Then in another terminal:
curl http://localhost:8000/friction/venues
curl http://localhost:8000/friction/venue/kalshi curl "http://localhost:8000/friction/changes?since=2020-01-01T00:00:00Z"
See CLAUDE.md for environment quirks, Claude API usage notes, and the data-quality/confidence model in more depth.
Informational only — not financial or legal advice. Verify directly with the venue before acting on any figure returned here.