ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Digital Passport Assessment Workbench

โดย CE-RISE-softwareรุ่น 0.1.2i★ –iรันบนเครื่อง
ชื่อใน registryio.github.CE-RISE-software/dpawb

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Deterministic SHACL-based assessment and comparison for digital passport data models.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: อื่น ๆ

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ต้องเตรียมก่อน

  • Dockerติดตั้ง Docker ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "dpawb": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/ce-rise-software/dpawb-mcp:0.1.2"
      ]
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add dpawb -- docker run -i --rm ghcr.io/ce-rise-software/dpawb-mcp:0.1.2

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "dpawb": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/ce-rise-software/dpawb-mcp:0.1.2"
      ]
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "dpawb": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/ce-rise-software/dpawb-mcp:0.1.2"
      ]
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub CE-RISE-software ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด อื่น ๆi

  • ดาวมากกว่า 0% ของอีก 32545 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 8% ของอีก 32545 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 32545 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Digital Passport Assessment Workbench ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.2) เข้า registry 6 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Python MCP

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Spec Driven Development

โดย formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

รันบนเครื่อง★ 440MITอัปเดต 14 เดือนที่ผ่านมา
ติดตั้ง

Remote Desktop Commander

โดย desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

รันบนคลาวด์★ 211อัปเดต เมื่อวาน
ติดตั้ง

Python MCP

โดย Files-com

Local-only Python MCP server for the Files.com API.

รันบนเครื่องอัปเดต วันนี้
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

Digital Passport Model Assessment Workbench

A Python toolkit and thin CLI for SHACL-based assessment of digital passport data models, pairwise comparison of composed solutions, and SHACL-only use-case coverage analysis.

This README is primarily a repository and development entry point. The user-facing conceptual and usage reference is at the published documentation site. The repository-source docs remain available in docs/.


What this repository contains

  • A publishable Python package with a CLI entry point: dpawb
  • A thin stdio MCP server entry point: dpawb-mcp
  • Contract-aligned input schemas for composition profiles, use cases, and alignments
  • Built-in vocabularies and templates exposed through discovery commands
  • Synthetic local fixtures used only for tests and validation
  • A progression-based examples tree for human and AI-agent tutorials

Tool Shape

The tool is designed primarily as an agent-usable analytical toolkit with a thin CLI. The core command surface is:

  • assess
  • coverage
  • compare
  • prioritize
  • recommend-composition
  • schema
  • vocabulary
  • template
  • capabilities
  • summarize

AI-agent use

The intended primary integration mode is an AI agent orchestrating the analytical pipeline through the package API or the CLI. In practice, this means:

  • deterministic file-based inputs
  • JSON outputs suitable for agent parsing and chaining
  • explicit analytical steps instead of a chat-oriented interface

The CLI remains useful for direct human invocation, but the main product shape is an analytical engine that can be called by agent skills, workflow runners, or tool adapters.

The package also ships a thin stdio MCP server over the same deterministic command surface:

  • assess
  • coverage
  • compare
  • prioritize
  • recommend-composition
  • schema
  • vocabulary
  • template
  • capabilities
  • summarize

The MCP surface stays intentionally thin:

  • keep dpawb as the core Python package
  • expose the same operations through dpawb-mcp
  • ship the MCP runtime as both a local Python entry point and a GitHub Container Registry image
  • publish registry metadata from the GitHub mirror

The MCP runtime and publication shape are documented in the published MCP server page.

The public Python API is documented in the published API reference.

MCP Access

The MCP server is published with this identity:

  • registry name: io.github.CE-RISE-software/dpawb
  • OCI image pattern: ghcr.io/ce-rise-software/dpawb-mcp:
  • transport: stdio
  • official registry base: https://registry.modelcontextprotocol.io/

The server is discoverable in the official MCP Registry under the name io.github.CE-RISE-software/dpawb.

Registry discovery page:

  • https://registry.modelcontextprotocol.io/?q=dpawb

Local client configuration example:

{

"mcpServers": { "dpawb": { "command": "dpawb-mcp" } } }

OCI-oriented registry metadata is declared in server.json. The publish workflow fills in the release version and image tag when publishing.

Install

python -m venv .venv

. .venv/bin/activate pip install -e .

Published package name:

pip install dpawb

The installed MCP server command is:

dpawb-mcp

If you are working in a restricted environment, the package is configured to build with setuptools so editable installs do not depend on fetching an extra build backend.

If build isolation or wheel support is unavailable locally, use:

python -m pip install --no-build-isolation -e .

In constrained environments where editable installation is blocked by local Python packaging tooling, the repository still supports a repo-native execution path:

./scripts/run-local.sh capabilities

./scripts/test-local.sh make smoke make test make validate

Minimal local MCP runtime command:

python -m dpawb.mcp_server

Example commands

dpawb assess --profile fixtures/profiles/synthetic_evolution_latest.yaml

dpawb coverage --profile fixtures/profiles/synthetic_evolution_latest.yaml --use-case fixtures/use_cases/product_identity_lookup.yaml dpawb compare --left left_assessment.json --right right_assessment.json dpawb recommend-composition --left left_assessment.json --right right_assessment.json --comparison comparison_result.json dpawb summarize --result comparison_result.json --format markdown dpawb capabilities

Local Release Check

Before wiring PyPI CI/CD, run the local packaging check in an environment with wheel available:

make release-check

This builds a wheel and sdist, installs the wheel into a clean temporary environment, and runs installed CLI smoke checks.

Structure

There are two distinct input areas in this repository:

  • fixtures/ Synthetic, repository-local test data only. These files are used by tests, smoke checks, and CI validation.
  • examples/01-source-ingestion/ Live-source example inputs intended for manual runs. These are the first step in the tutorial progression and are not part of CI validation.

The full examples tree is organized by analytical task, not by input data model:

  • examples/01-source-ingestion/ Load and assess declared profiles.
  • examples/02-structural-comparison/ Compare two profile assessment results.
  • examples/03-reduced-use-case-comparison/ Run the first aligned use-case comparison.
  • examples/04-extended-use-case-comparison/ Run a broader aligned use-case comparison.
  • examples/05-composition-recommendation/ Recommend a combined profile from two assessed model sets.

Each example is usable by humans as a step-by-step command tutorial and by AI agents as a deterministic recipe over explicit files.

Source-ingestion examples

Example profiles for live SHACL sources are included at:

  • examples/01-source-ingestion/profiles/battery_dpp_representation_live.yaml
  • examples/01-source-ingestion/profiles/battery_product_identification_live.yaml
  • examples/01-source-ingestion/profiles/dp_record_metadata_live.yaml
  • examples/01-source-ingestion/profiles/traceability_and_life_cycle_events_live.yaml
  • examples/01-source-ingestion/profiles/metadata_focused_composition_live.yaml
  • examples/01-source-ingestion/profiles/metadata_and_traceability_live.yaml
  • examples/02-structural-comparison/profiles/metadata_slice_left_live.yaml
  • examples/02-structural-comparison/profiles/metadata_slice_right_live.yaml

If you want a single live source, the metadata-oriented example is the main starting point:

./scripts/run-local.sh assess --profile examples/01-source-ingestion/profiles/dp_record_metadata_live.yaml

If you want a composed profile, use:

./scripts/run-local.sh assess --profile examples/01-source-ingestion/profiles/metadata_and_traceability_live.yaml

You can also run the traceability-only example:

./scripts/run-local.sh assess --profile examples/01-source-ingestion/profiles/traceability_and_life_cycle_events_live.yaml

For manual coverage runs, example use cases are included at:

  • examples/01-source-ingestion/use_cases/battery_dpp_representation.yaml
  • examples/01-source-ingestion/use_cases/battery_product_identification.yaml
  • examples/01-source-ingestion/use_cases/battery_passport_metadata_and_classification.yaml
  • examples/01-source-ingestion/use_cases/record_identity_lookup.yaml
  • examples/01-source-ingestion/use_cases/provenance_actor_lookup.yaml

Example:

./scripts/run-local.sh coverage \

--profile examples/01-source-ingestion/profiles/dp_record_metadata_live.yaml \ --use-case examples/01-source-ingestion/use_cases/record_identity_lookup.yaml

The main real comparison-driver use case is:

  • examples/01-source-ingestion/use_cases/battery_dpp_representation.yaml

It intentionally stays narrow. It requires:

  • passport identity
  • battery identity
  • passport version or revision
  • one responsible actor
  • one battery type or classification signal

and the joins needed to treat those as one battery-DPP representation slice.

The matching starting composition for that use case is:

  • examples/01-source-ingestion/profiles/battery_dpp_representation_live.yaml

It currently composes:

  • dp_record_metadata
  • traceability_and_life_cycle_events

This is the current broader baseline for the battery-DPP comparison work.

For the first reduced real pass, the narrower identity-focused comparison slice is:

  • canonical example folder: examples/03-reduced-use-case-comparison/
  • use case: examples/03-reduced-use-case-comparison/use_cases/use_case.yaml
  • left profile: examples/03-reduced-use-case-comparison/profiles/left_profile.yaml
  • right profile: examples/03-reduced-use-case-comparison/profiles/right_profile.yaml

This reduced slice composes:

  • dp_record_metadata
  • product_profile
  • traceability_and_life_cycle_events

and is the first validated product-identification comparison slice against the BatteryPass General Product Information model.

A second broader validated slice is also included:

  • canonical example folder: examples/04-extended-use-case-comparison/
  • use case: examples/04-extended-use-case-comparison/use_cases/use_case.yaml
  • left profile: examples/04-extended-use-case-comparison/profiles/left_profile.yaml
  • right profile: examples/04-extended-use-case-comparison/profiles/right_profile.yaml

This slice adds passport version/revision and battery type/classification while keeping the same CE-RISE composed model set.

The two current cross-ecosystem validation notes are:

  • examples/03-reduced-use-case-comparison/notes/comparison_note.md
  • examples/04-extended-use-case-comparison/notes/comparison_note.md

The step-by-step user reference for these examples is in the published example applications guide.

For manual comparison runs, a comparison-ready live pair is included with the same declared scope label:

  • examples/02-structural-comparison/profiles/metadata_slice_left_live.yaml
  • examples/02-structural-comparison/profiles/metadata_slice_right_live.yaml
  • examples/02-structural-comparison/alignments/metadata_slice_alignment.yaml as a starting-point alignment example

Typical flow:

./scripts/run-local.sh assess --profile examples/02-structural-comparison/profiles/metadata_slice_left_live.yaml --output /tmp/left.json

./scripts/run-local.sh assess --profile examples/02-structural-comparison/profiles/metadata_slice_right_live.yaml --output /tmp/right.json ./scripts/run-local.sh compare --left /tmp/left.json --right /tmp/right.json

With an explicit analyst-authored alignment:

./scripts/run-local.sh compare \

--left /tmp/left.json \ --right /tmp/right.json \ --alignment examples/02-structural-comparison/alignments/metadata_slice_alignment.yaml

When an alignment file is provided, the comparison result now includes two alignment-oriented views:

  • evaluated_pairs Full per-pair presence status for every declared equivalence.
  • ranked_alignment_observations Review-oriented gaps for any declared pair that is only present on one side or missing on both sides.

So the main things to inspect in an alignment-aware comparison result are:

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx