Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Epoch time estimation MCP server for PERT, COCOMO, Monte Carlo, calibration, cost, and risk.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"epoch": {
"command": "npx",
"args": [
"-y",
"@kyanitelabs/epoch"
]
}
}
}ターミナルでこれを実行します
claude mcp add epoch -- npx -y @kyanitelabs/epochプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"epoch": {
"command": "npx",
"args": [
"-y",
"@kyanitelabs/epoch"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"epoch": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@kyanitelabs/epoch"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名はドメイン kyanitelabs.tech で確認済みです(レジストリがドメインの所有を確認しています)
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.6.0)がレジストリに届いたのは10 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, SuperCollider
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況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.
Make sound with SuperCollider: synths, drums, chords, melodies and soundscapes over OSC.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Epoch is a time estimation MCP server that helps engineering leads, agents, and planners who need calibrated duration estimates produce PERT/reference-class estimates and record actuals.
TL;DR: Epoch — time estimation MCP server. Best for engineering leads, agents, and planners who need calibrated duration estimates.
Epoch helps AI agents understand time.
AI can write code, analyze data, and build apps -- but it can't tell you how long something will take, what it'll cost, or whether a deadline is realistic. Epoch fixes that.
You: "How long will a 15,000 line project take with a small team?"
Claude (using Epoch): COCOMO II nominal: 100 person-months (traditional team) AI-adjusted: 9 person-months (LLM-assisted workflow) Schedule risk: medium (MAPE 15%, based on 28 historical features) Cost estimate (Claude Sonnet): ~$340 in API tokens
You: "How many working days between now and launch?"
Claude (using Epoch): Start: May 1, 2026 End: July 15, 2026 Business days: 54 Weekend days: 16 Holidays: 1 (Independence Day) Total calendar days: 75
You: "Which AI model should we use for a 50k-token job?"
Claude (using Epoch): gemini-2.0-flash: $0.02 -- fast, budget-friendly gpt-4o-mini: $0.02 -- fast, budget-friendly gemini-2.5-pro: $0.37 -- standard, high quality claude-sonnet-5: $0.57 -- standard, high quality Recommendation: gemini-2.0-flash for cost, claude-sonnet-5 for quality
Every AI agent hallucinates timelines. "This should take about 2 hours" becomes 2 days. Epoch gives AI grounded, data-driven estimates instead of guesses. It packages established estimation methods (PERT, COCOMO II, Monte Carlo, reference class forecasting) into 26 tools any AI can call -- so your assistant stops guessing and starts calculating.
Works out of the box. Epoch ships with a bundled reference database: task-type correction factors and scope baselines from the maintainer's recorded estimate-vs-actual history plus curated public research, and tool-usage/latency telemetry samples (117,791 across the bundled canary-test and session benchmarks) that keep the token-time bridge grounded. You get reasonable estimates from day one — no data collection or account setup required. If you choose to record your actuals, Epoch's self-improvement engine learns your patterns and gets even more precise over time.
MCP (Model Context Protocol) is how AI assistants like Claude connect to external tools. Think of it like a plugin system -- you add Epoch with one command, and suddenly your AI assistant can estimate timelines, calculate business days, compare model costs, and predict whether your project will finish on time.
30-second setup -- works in Claude Code, Cursor, VS Code, and Windsurf:
claude mcp add epoch -- npx -y @kyanitelabs/epoch@0.7.0
That's it. Your AI assistant now has 26 time estimation tools.
Or add it to your project's .mcp.json:
{
"mcpServers": { "epoch": { "command": "npx", "args": ["-y", "@kyanitelabs/epoch@0.7.0"] } } }
Use Hermes tools.include to expose only these example tools:
mcp_servers:
epoch: tools: { include: [pert_estimate, cocomo_estimate] }
Epoch also ships a public agent skill at skills/epoch/SKILL.md. Use $epoch in compatible agent hosts when you want the agent to choose the right Epoch MCP or CLI workflow for time estimates, business-day math, model-cost comparison, schedule risk, and estimate-vs-actual feedback.
| What you want | What Epoch does | No jargon |
|---|---|---|
| "How long will this take?" | Gives you a realistic estimate with best/worst case ranges | Estimates |
| "Can we hit this deadline?" | Tells you if your timeline is realistic or risky | Schedule risk |
| "How much will the AI calls cost?" | Calculates token costs across 16 AI models side-by-side | Cost comparison |
| "How many business days between now and launch?" | Counts days excluding weekends and holidays (5 countries) | Calendar math |
| "Are our estimates getting better?" | Tracks your accuracy over time and auto-corrects | Self-improving |
| "What model should we use?" | Compares speed, cost, and quality across all major AI models | Model comparison |
Everything below is for developers who want to understand the internals, use the CLI or REST API, or contribute to Epoch.
Six-layer design with 26 tools for time estimation, scheduling, cost analysis, and feedback:
| Layer | Purpose | Tools |
|---|---|---|
| 1. Core Temporal | Time, timezones, duration, date math | get_current_time, convert_timezone, parse_duration, time_math |
| 2. Calendar Math | Business days, holidays (US/UK/FR/DE/JP) | add_business_days, count_business_days |
| 3. Estimation | PERT, COCOMO II, sprint, CPM, Monte Carlo | pert_estimate, cocomo_estimate, sprint_forecast, critical_path, monte_carlo_schedule |
| 4. Analytics | Reference class, context classification, calibration, token-time bridge, wait-mechanism deadlines | reference_class_estimate, estimate_from_context, calibrate_estimates, token_time_bridge, wait_bound |
| 5. Cost & Risk | Token cost, model comparison, accuracy trends, risk, COCOMO validation | token_cost_estimate, compare_models, accuracy_trend, schedule_risk, cocomo_validate, cocomo_ground_truth |
| 6. Feedback | Record actuals, track pending estimates, batch operations, health checks | record_actual, get_pending_estimates, batch_record_actuals, feedback_health |
`get_current_time` -- Current wall-clock time in any IANA timezone
Input: { timezone: "America/New_York" }
Output: { iso: "2026-05-01T08:30:00.000-04:00", humanReadable: "Fri, May 1, 2026, 8:30 AM EDT", timezone: "America/New_York", utcOffset: "-04:00" }
`convert_timezone` -- Convert a timestamp between IANA timezones
Input: { timestamp: "2026-05-01T12:00:00Z", target_tz: "Asia/Tokyo" }
Output: { iso: "2026-05-01T21:00:00.000+09:00", timezone: "Asia/Tokyo", utcOffset: "+09:00", humanReadable: "Fri, May 1, 2026, 9:00 PM JST" }
`parse_duration` -- Parse human-readable duration strings
Input: { duration_string: "2h30m" }
Output: { input: "2h30m", totalSeconds: 9000, humanReadable: "2 hours 30 minutes" }
`time_math` -- Date arithmetic operations
Input: { operation: "add_days", operands: { start_date: "2026-05-01", days: 7 } }
Output: "2026-05-08"
Supported operations: add_days, add_business_days, diff, convert_tz, parse_nl, format_duration
`add_business_days` -- Add N business days with holiday awareness (US, UK, FR, DE, JP)
Input: { start_date: "2026-05-01", days: 5, country: "US" }
Output: { startDate: "2026-05-01", endDate: "2026-05-08", businessDays: 5, countryCode: "US", holidaySupport: "holiday_calendar", humanReadable: "5 business days from 2026-05-01 to 2026-05-08 (US)." }
`count_business_days` -- Count business days between two dates
Input: { start_date: "2026-05-01", end_date: "2026-05-15", country: "US" }
Output: { startDate: "2026-05-01", endDate: "2026-05-15", businessDays: 10, countryCode: "US", holidaySupport: "holiday_calendar", humanReadable: "10 business days between 2026-05-01 and 2026-05-15 (US)." }
Both tools always include holidaySupport ("holiday_calendar" when the country has a bundled holiday set — US/UK/FR/DE/JP — otherwise "weekends_only") in successful output; country must match ^[A-Za-z]{2}$ — "USA"-style codes are rejected with a readable error.
`pert_estimate` -- PERT three-point estimation with confidence intervals and urgency scoring
Input: {
optimistic: 2, most_likely: 4, pessimistic: 12, unit: "hours" } Output: { expected: 5, variance: 2.78, stdDeviation: 1.67, confidence95: [1.67, 8.33], confidence99: [0, 10], unit: "hours", urgencyCategory: "medium", riskLevel: "high", humanReadable: "Expected 2.86–7.14 hours (80% confidence interval); point estimate 5 hours (ledger-recorded basis; adjustedEstimate 5 applies the correction factor). No task_type was supplied, so this interval is derived from the PERT variance (optimistic/most_likely/pessimistic spread) instead of empirical data.", developerProfile: { mode: "ai_native", correctionFactor: 1 }, adjustedEstimate: 5, rawEstimate: 5, correctionFactor: 1, n: 0, interval: { p50: { lower: 3.87, upper: 6.13 }, p80: { lower: 2.86, upper: 7.14 }, p90: { lower: 2.25, upper: 7.75 }, source: "pert_variance" }, intervalNote: "No task_type was supplied, so this interval is derived from the PERT variance (optimistic/most_likely/pessimistic spread) instead of empirical data.", basisNote: "Interval and point estimate are on the ledger-recorded basis (raw PERT expected × unit factor). adjustedEstimate (5 hours) additionally applies the correction factor (1) and is display-only — it is never recorded or calibrated against." }
(Example from a fresh install with no accumulated feedback; with ≥5 exclusion-filtered matched pairs for the task type, interval.source becomes "empirical_ratio_quantile", n reports the sample size, and intervalPopulation names the ratio population used.)
`cocomo_estimate` -- COCOMO II software sizing with LLM-adapted cost drivers
Input: {
kloc: 15, reasoning_complexity: 1.2, context_completeness: 1.0, transformation_impact: 0.8, iterative_cycles: 1.5, human_oversight: 1.2 } Output: { kloc: 15, personMonthsNominal: 99.9, personMonthsLlmAdjusted: 8.9, effortMultipliers: { reasoning_complexity: 1.2, context_completeness: 1.0, transformation_impact: 0.8, iterative_cycles: 1.5, human_oversight: 1.2, product: 1.728 }, developerProfile: { mode: "ai_native", correctionFactor: 1.45 } }
LLM-adapted cost drivers include reasoning complexity, context completeness, transformation impact, iterative cycles, and human oversight requirements.
`sprint_forecast` -- Sprint velocity forecasting from historical data
Input: {
backlog_points: 100, velocity_history: [20, 25, 22, 23], sprint_length_days: 14, hours_per_sprint: 80 } Output: { backlogPoints: 100, averageVelocity: 22.5, requiredSprints: 4.4, pessimisticSprints: 4.9, hoursPerPoint: 3.56, totalHours: 355.6, completionDays: 62, sprintLengthDays: 14, developerProfile: { mode: "ai_native", sprintVelocityPoints: 80, correctionFactor: 1.45 } }
`critical_path` -- Critical Path Method with merge-bias adjustment for parallel tasks
Input: {
tasks: [ { name: "A", duration: 5, predecessor
冒頭だけを表示しています。続きはリポジトリで読めます