mcpField
P
Project Parva

Project Parva

本地服务
github.com/dantwoashim生产力2611 周前更新

关于 Project Parva

Project Parva 是一个开源的尼泊尔日期与时间 API 及一致性验证项目,覆盖 BS 与 AD 互转、日期校验、节假日、工作日、财年和 Panchanga 计算。它面向需要可复核日期结果的薪资、ERP、考勤与日历开发团队,并会明确标注证据不足、需人工复核的情况。

主要功能

  1. 01BS 与 AD 双向转换及日期校验
  2. 02节假日与工作日判断
  3. 03尼泊尔财年与 BS 月份元数据
  4. 04带证明回执的 Panchanga 计算
  5. 05公开回归测试样例与基准套件

适用场景

  1. 01核对前端日历与后端数据的月份天数差异
  2. 02检查薪资、考勤与发票中的 BS 日期边界
  3. 03为尼泊尔日期选择器构建回归测试

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"dantwoashim-project-parva": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/dantwoashim/parva-mcp-server:1.0.0"
]
}
}
}
启动命令docker run -i --rm ghcr.io/dantwoashim/parva-mcp-server:1.0.0

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocighcr.io/dantwoashim/parva-mcp-server:1.0.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Project Parva

CI Public verification Benchmark

网站 | API 文档 | 快速开始 | 公开基准测试 | 许可

Project Parva 是一个开源的尼泊尔日期/时间 API 与一致性项目。

它涵盖 BS 转 AD、AD 转 BS、尼泊尔日期校验、节假日、工作日、尼泊尔财年逻辑、BS 月份元数据、Panchanga 计算、证明回执、本地验证、SDK、MCP 工具以及公开回归测试夹具。

该项目之所以存在,是因为尼泊尔日期 bug 往往要到触及边界时才会暴露:前端日历表格与后端数据不一致、某个工资发放月份的天数错误、日期选择器接受了无效的 BS 日期,或者某个未来的 BS 日期在有人已将其用于工作流之后发生变化。

Parva 将这类情况视为一致性问题,而不仅仅是转换问题。它记录来源与方法溯源,区分精确证据与需要复核的证据,并为开发者提供一种方式来测试其尼泊尔日历 API 或尼泊尔日期转换器实际在做什么。

三项公开声明定义了该项目:

  • 一份日期为 2026-08-05 的书面市场调研发现,不存在第二个聚焦尼泊尔的 API 能同时结合 BS 转换、位置感知的天文 Panchanga、尼泊尔业务规则、未来 BS 研究、回放产物以及公开一致性测试。
  • 未来 BS 引擎在官方 2078-2083 BS 窗口上进行按时间顺序的滚动验证,达到 72/72 的精确月份预测,且每个目标年份仅使用更早的年份进行训练。
  • 公开基准测试与一致性测试套件随附夹具、运行器、具名工具结果以及逐用例输出。

从这里开始

在线公开评估入口:

托管 API 是一个公开评估部署。实例唤醒时,首次请求可能会较慢。

为什么会有这个项目

大多数尼泊尔日期 bug 在纸面上很小,但在实际语境中代价高昂。

许多系统带有硬编码的 Bikram Sambat 月份表。一个后端 CSV、一个 前端尼泊尔日期选择器包,以及一个报表任务,可能各自都有一份自己的 副本。它们可能看起来都很合理,直到某个月相差了一天。

那一天可能会改变:

  • 一个薪资周期,
  • 一个财年边界,
  • 一项证书或 DOB 验证,
  • 一个发票/报表日期,
  • 一条考勤或休假记录,
  • 一个本应保持待审核状态的未来 BS 日期。

软件 Agent 还会带来另一种失败模式:如果工具没有暴露来源、 置信度和边界数据,模型往往会像日期已经确定一样作答。Parva 的构建目的 就是让这些边界变得可见。

该项目将公开的尼泊尔日期失败转化为夹具和检查,条件是证据足够精确。 当证据不完整时,它会保持标记为待审核,而不是变成一个虚假的断言。

免费尼泊尔日期风险审计

如果你维护面向尼泊尔的薪资、ERP、会计、考勤、学校、 合作社、公共服务、政府表单或日期选择器软件,你可以 发送一个小型工作流或示例输出。

无需集成。无需依赖。无需销售通话。不主张任何权威。

好的输入:

  • 10 个 BS/AD 日期输出示例
  • 一个薪资、财年、发票、考勤、报告、证书或 DOB 工作流
  • 一个公开仓库、issue、尼泊尔日期选择器或库案例
  • 你的团队在生产或测试中见过的一个真实边缘案例

检查:

  • BS/AD 转换边界
  • 无效的 BS 日期
  • 月份长度
  • 前端/后端日历来源漂移
  • 财年和薪资月份边界
  • 节假日和工作日假设
  • 应标记为需要复核的未来 BS 日期

你会得到:

  • 一份简短技术报告
  • 通过、警告和需要复核的发现
  • 建议的回归测试
  • 来源和出处说明
  • 权威边界说明

申请一份:

快速一致性路径:

py -3.11 tools\conformance_runner\run.py --suite public-nepali-date-issues
py -3.11 tools\conformance_runner\run.py --profile nepal-compliance
py -3.11 tools\conformance_runner\run.py --suite public-nepali-date-issues --write-report reports\conformance\public-issue-suite-summary.json

Parva 做什么

领域它提供什么
尼泊尔日期 APIBS 转 AD、AD 转 BS、今天、验证、月份元数据、支持范围元数据
民事证明模式用于转换、验证、节假日、工作日、财年和 BS 月份的可重放验证膜
Panchanga 引擎方法备案的日出、tithi、nakshatra、yoga、karana、paksha、vara、星历元数据和证明回执
薪资/日期风险审计面向 CSV/API 的决策支持检查,用于无效日期、节假日、非工作日、财年边界和需要复核的案例
本地验证共享证明夹具和可构建的 @project-parva/local-kernel npm 包,用于离线重放检查
SDK带证明模式和保守验证辅助工具的 Python 和 JavaScript 客户端
Agent/MCP只读、公开安全的 Agent 工具封装和 MCP 适配器接口,保留边界和复核关口
基准公开的尼泊尔时间可靠性基准,用于确定性日期推理、来源意识和复核行为
治理来源/方法备案、公开声明检查器、路由成熟度、OpenAPI 漂移检查和可复现的公开验证
研究边界未来 BS 研究与公开权威声明保持分离,仅在较旧导入需要时提供兼容垫片

公开一致性工作

Parva 跟踪公开的尼泊尔日期问题,并在证据足够精确时将其转化为夹具或可运行 检查。该套件区分已验证的公开问题、已报告问题、部分证据、业务工作流证据和 未来日期复核案例。

Project Parva 的基准工作向 yarsa/nepal-compliance 贡献了一个独立的日历来源 一致性守护。

该检查比较了重复的前端/后端 BS 月份表。它没有添加 Parva 依赖、改变上游运行时行为或证明生产影响。

运行公开问题一致性套件:

py -3.11 tools\conformance_runner\run.py --suite public-nepali-date-issues
py -3.11 tools\conformance_runner\run.py --profile nepal-compliance
py -3.11 tools\conformance_runner\run.py --suite public-nepali-date-issues --write-report reports\conformance\public-issue-suite-summary.json
py -3.11 -m pytest tests/conformance -q

一致性文档:

这些夹具是公开回归和复核产物。它们不是 日历发布、法律指导、税务指导、薪资批准、银行 指导或仪式权威。

适用对象

  • 希望从真实公开 issue 中获取回归用例的日期库维护者。
  • 需要更安全的 BS/AD 边界的 ERP、薪资、会计、学校、合作社和考勤团队。
  • 审查公共服务或政府表单工作流的评审者,这些场景中无效的 BS 日期不应被放过。
  • 正在构建尼泊尔历 API、Bikram Sambat API 或尼泊尔日期选择器回归测试套件的开发者。
  • 需要带有证明凭据的确定性答案、而非猜测日期的软件 Agent 和 MCP 工具构建者。
  • 需要来源说明而非宽泛主张的审计者和维护者。

快速开始

基础 URL:

https://api.prabinghimire1.com.np/v3/api

AD 转 BS:

curl "https://api.prabinghimire1.com.np/v3/api/calendar/convert?date=2025-04-14"

BS 转 AD:

curl -X POST "https://api.prabinghimire1.com.np/v3/api/calendar/bs-to-gregorian" \
  -H "Content-Type: application/json" \
  -d '{"year":2082,"month":1,"day":1}'

校验 BS 日期:

curl "https://api.prabinghimire1.com.np/v3/api/calendar/validate-bs-date?year=2082&month=1&day=32"

节假日判定:

curl "https://api.prabinghimire1.com.np/v3/api/compliance/holiday?bs_date=2082-01-01"

工作日决策支持:

curl -X POST "https://api.prabinghimire1.com.np/v3/api/compliance/evaluate-date" \
  -H "Content-Type: application/json" \
  -d '{"profile_id":"nepal_private_company_default","bs_date":"2082-01-01","decision_intent":"general"}'

财年:

curl "https://api.prabinghimire1.com.np/v3/api/enterprise/fiscal-year/2082"

BS 月份元数据:

curl "https://api.prabinghimire1.com.np/v3/api/enterprise/bs-months/2082?mode=compare"

Panchanga 摘要:

curl "https://api.prabinghimire1.com.np/v3/api/calendar/panchanga?date=2025-04-14"

证明模式

稳定的民用路由和 Panchanga 可以返回证明凭据:

curl "https://api.prabinghimire1.com.np/v3/api/calendar/convert?date=2025-04-14&proof=replay"
curl "https://api.prabinghimire1.com.np/v3/api/calendar/panchanga?date=2025-04-14&proof=replay&lat=27.7172&lon=85.324&tz=Asia/Kathmandu"

证明响应包含膜胶囊、身份哈希、见证哈希、字段来源、边界向量、来源或方法案卷引用、策略追踪以及重放说明。验证者必须重放操作语义或校验固定的证明内容;仅有哈希存在是不够的。

支持证明的民用操作:

  • convert_bs_to_ad
  • ad_to_bs
  • validate_bs_date
  • holiday
  • working_day
  • fiscal_year
  • bs_months

Panchanga 证明目前覆盖方法案卷化的 panchanga_summary,带有固定测试夹具重放和显式星历元数据。

Panchanga 引擎

Parva 将 Panchanga 信号计算为有方法支撑的天文输出,而非最终历书、出版物或仪式决策来源。

携带证明的 Panchanga 层记录:

  • 日期、纬度、经度、时区
  • 星历提供方和提供方类型
  • 适用时的测试夹具或内核哈希
  • ayanamsa 和恒星模式
  • 日出归因规则
  • 日出、tithi、nakshatra、yoga、karana 及相关计算的方法案卷
  • 字段来源和边界向量
  • computed_not_official、not_panchanga_authority 和 not_ritual_final_authority

JPL 支持是显式且有边界的。仓库暴露了 JPL DE440 系列的提供方接口和内核哈希披露路径。大型 JPL 内核不随包捆绑。如果未配置内核,Parva 不得静默声称输出由 JPL 支撑。

参见 docs/PANCHANGA_ENGINE.md、docs/spec/PARVA_EPHEMERIS_PROVIDER_v1.md 和 docs/spec/PARVA_PANCHANGA_PROOF_v1.md。

薪资与日期风险审计

Parva 包含一个携带证明的薪资/日期风险工作流,用于决策支持。它会检查各行是否存在:

  • 无效 BS 日期
  • BS/AD 不匹配
  • 节假日冲突
  • 非工作日冲突
  • 财年边界问题
  • 不支持或需要复核的范围
  • 来源或方法权威性不足

该工作流可以输出行级证明包和 Timepack 风格的聚合报告。它是预检/审计辅助工具,不是法律、税务、薪资、银行或合规权威。

本地与离线验证

生成共享证明夹具:

py -3.11 scripts/release/generate_proof_fixtures.py

运行后端夹具重放:

py -3.11 -m pytest tests/integration/test_shared_proof_fixtures.py -q

运行本地内核:

cd packages/parva-local-kernel
npm install
npm test

本地内核是一个可构建的 npm 包:@project-parva/local-kernel。它无需调用实时 API 即可验证共享民用夹具、Panchanga 夹具、证明包和 Timepack 形式的产物。

SDK

Python:

from parva import ParvaClient

client = ParvaClient()
payload = client.ad_to_bs("2025-04-14", proof="replay")
print(payload["proof"]["identity_hash"])

JavaScript:

import { ParvaClient } from "@project-parva/parva-js";

const client = new ParvaClient();
const payload = await client.getPanchanga({
  date: "2025-04-14",
  proof: "replay",
  lat: 27.7172,
  lon: 85.324,
  tz: "Asia/Kathmandu",
});
console.log(payload.proof.identity_hash);

本仓库中的包已为公开测试版试运行做好准备。本 README 不声称已发布到 PyPI、已发布到 npm、已通过注册表审核、已获得外部认证或已被客户采用。

Agent 与 MCP 用法

Parva 对软件 Agent 很有用,因为它提供确定性的时间工具,而不是让模型猜测尼泊尔日期。

Agent 安全接口必须保留:

  • 来源或方法状态
  • 置信度与边界向量
  • review_required
  • not_authority
  • 字段溯源
  • 可用时的证明链接或凭据

包:

未来 BS 研究预测

Parva 通过三个只读端点发布 2084-2200 BS 的确定性研究快照:

GET /v4/api/future-bs/capabilities
GET /v4/api/future-bs/methodology
GET /v4/api/future-bs/forecast/{bs_year}

所选流水线结合了恒星太阳入宫求解、尼泊尔民用时间分配、独立的广泛参考塔与官方权威塔、仅基于过去的民用规则学习、来源感知的月初对账、完整年份约束、预测集以及边界风险标签。预测响应包含全部十二个月的长度、归一化模型支持度、一致性、边界距离、风险标志、方法版本和验证范围。

官方 2078-2083 BS 窗口在按时间顺序滚动验证下达到 72/72 精确月份匹配,每个目标年份仅用更早年份训练。这仍然是一个小型开发窗口结果,而非广泛的独立准确性证明。广泛验证仍低于项目 528 个已验证月份的证明阈值。每个预测都带有 computed_prediction_not_official、review_required=true 以及权威发布覆盖。

v7 预测现在已由一个公开源提交、快照摘要、117 个逐年承诺以及一个 Merkle 根锁定。之后的官方日历仅根据由两人审查过的哈希源工件进行评分;历史来源恢复仍是一个独立的溯源通道。

架构概览

当前代码按职责划分:

  • 公共 API/运行时代码位于 backend/app 下的各模块,如 calendar、panchanga、sources、membranes、rules、timegraph、trust 和 services
  • Future-BS 研究与模型风险相关工作位于 backend/app/research/future_bs
  • backend/app/future_bs 是兼容性命名空间,并非规范的实现位置
  • 后端运行时测试位于 tests/backend_runtime
  • 本地内核测试位于 tests/local_kernel
  • 纳入版本管理的 MoHA 公共假日源 PDF 位于 data/source_archive/moha,并带有 data/source_archive/moha/manifest.json
  • 生成的或对发布敏感的产物遵循 artifacts/POLICY.md
public route / SDK / MCP tool
  -> canonical query
  -> source or method coverage resolution
  -> policy decision trace
  -> field-level provenance
  -> boundary vector
  -> membrane capsule
  -> proof pack / Timepack
  -> backend replay verifier and local-kernel verifier

核心架构文件:

公共验证

运行:

py -3.11 scripts/release/verify_public.py

针对性检查:

py -3.11 scripts/release/check_public_claims.py
py -3.11 scripts/check_path_leaks.py
py -3.11 scripts/check_future_bs_public_leakage.py
py -3.11 scripts/release/check_public_openapi_drift.py
py -3.11 scripts/release/check_ceiling_depth_semantics.py

前端:

cd frontend
npm test -- --run
npm run build

安全声明

在相关验证命令通过的前提下,可以安全地声明:

  • Parva 提供具备源感知能力的尼泊尔时间 API。
  • Parva 支持针对稳定的民用时间操作提供证明回执。
  • Parva 支持带有方法归档的 Panchanga 计算,并明确划定非权威边界。
  • Parva 可以针对已提交的证明固定装置(fixture)运行本地/离线验证。
  • Parva 可以帮助软件 Agent 避免对尼泊尔日期进行猜测。
  • Parva 可以支持薪资/日期风险预检和供应商合规性审查。

禁止声明

不得声明:

  • 政府批准或公共机构背书
  • 法律、税务、薪资或银行决策权威
  • 宗教或仪式的最终权威
  • 对不受支持的未来 BS 日期的既定权威
  • 最终的 Panchanga 或仪式权威
  • 外部认证
  • PyPI/npm 发布,除非该包确实已发布
  • MCP 注册中心收录,除非已被某个注册中心收录
  • 客户、采用或设计合作伙伴,除非存在真实证据
  • 无保留的 Future-BS 确定性或权威性声明

项目状态

公共可复现性门禁是发布就绪状态的唯一事实来源:

py -3.11 scripts/release/verify_public.py

民用时间核心具备可重放验证的证明支持和本地固定装置。Panchanga 具备带证明的方法归档路径,支持固定装置重放,并具有有界的 JPL 提供方接口。Future-BS 发布经过整理的研究快照,而原始模型工作流仍处于受控状态。

外部上限尚未完成。本仓库中不存在真实的外部见证、机构签名、官方批准、第三方认证或客户/采用证明。

许可证与源码可用性

Project Parva 采用 AGPL-3.0-or-later 许可。网络部署必须将 PARVA_SOURCE_URL 设置为所部署版本对应的源码仓库或源码归档。应用会将 /source 暴露为指向该配置位置的跳转,并在 HTTP 响应中添加 rel="source" 链接。

针对专有产品的商业嵌入许可同样可用,价格为每供应商每年 NPR 100,000-300,000,具体取决于所指定的产品范围。参见 docs/COMMERCIAL_LICENSING.md。

部署详情记录于 docs/DEPLOYMENT.md。

路线图

近期:

  • 将本地内核重放扩展到当前测试夹具之外
  • 扩展 Panchanga 证明夹具和提供方覆盖范围
  • 深化 proof-pack 和 Timepack CLI 工作流
  • 加强薪资/日期风险审计报告,以供外部审查
  • 增加更多具备证明感知能力的 UI 界面
  • 扩展基准测试和一致性测试用例
  • 收集有边界的外部技术审查意见,同时避免过度声称权威性

贡献

贡献应遵循 Parva 的核心规则:

  • 任何低权威数据都不得成为高权威输出
  • 任何证明验证器都不得仅检查对象结构或哈希是否存在
  • 有证明支持的操作需要重放测试和篡改测试
  • 公开文档不得过度声称权威性
  • 面向未来的输出必须保持可审查性

在提交 pull request 之前,请运行:

py -3.11 -m pytest -q -m "not private_source and not wide_corpus and not research_artifact" --maxfail=20
py -3.11 scripts/release/check_public_claims.py
py -3.11 scripts/release/check_ceiling_depth_semantics.py

使用 Python 3.11 和 Node 20 进行可复现验证。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。