Skip to main content
Glama
ChanghuLiu

projectpermit-mcp

by ChanghuLiu

ProjectPermit / BuildRequirements — 阶段 0

ProjectPermit 是一个用于建筑和翻新项目的、与证据关联的市政许可预检引擎。BuildRequirements 是其内部的确定性规则引擎。

阶段 0 支持:

  • gatineau_qc

  • ottawa_on

  • 8 个项目类别

  • 使用市政 GIS/地理编码器进行地址解析

  • 规则版本和叠加感知的结果

  • 每条规则结果附带的官方来源证据

  • 一个 FastAPI 端点和标准 MCP 工具

  • x402 就绪的付费传输层与规则引擎之间的分离

该引擎刻意调用 LLM。调用代理将自然语言描述的项目范围规范化为结构化事实;BuildRequirements 应用确定性的市政规则。

快速开始

python -m venv .venv
source .venv/bin/activate
pip install -e .
uvicorn projectpermit.api:app --host 127.0.0.1 --port 8000

如需 MCP 支持:

pip install -e '.[mcp]'
projectpermit-mcp

projectpermit-mcp 使用 MCP Python SDK v2 Streamable HTTP、JSON 响应和无状态 HTTP。默认监听 127.0.0.1:8001。可通过 PROJECTPERMIT_MCP_HOSTPROJECTPERMIT_MCP_PORT 覆盖。

运行测试:

PYTHONPATH=src python -m unittest discover -s tests -v

Related MCP server: Canadian Building Code MCP Server

API

POST /v1/check-project-requirements

示例:

{
  "jurisdiction": "ottawa_on",
  "address": "110 Laurier Ave W, Ottawa, ON",
  "resolve_address": false,
  "project": {
    "family": "window_door",
    "action": "enlarge_existing_window",
    "structural_change": true
  }
}

结果是预检信息包,而不是市政授权、法律建议、工程认证或建筑规范设计批准

仓库结构

  • src/projectpermit/engine.py — 确定性规则引擎

  • src/projectpermit/address.py — 市政地址/GIS 适配器

  • src/projectpermit/api.py — HTTP API

  • src/projectpermit/mcp_server.py — 标准 MCP 服务器

  • data/golden_cases.json — 确定性回归语料库

  • data/source_manifest.json — 官方来源注册表/新鲜度元数据

  • schemas/ — 公共请求/响应模式

  • docs/PHASE0_SPEC.md — 产品和工程范围

  • docs/X402_ARCHITECTURE.md — 支付/发现设计

Base Sepolia x402 冒烟测试配置

config/x402.base-sepolia.env.example 提供了一个仅包含公共值的测试网配置。它面向 Base Sepolia(eip155:84532)和 x402.org 测试网促进器。接收地址是公开的;切勿在此仓库中放入私钥或助记词

set -a
source config/x402.base-sepolia.env.example
set +a
pip install -e '.[x402]'
uvicorn projectpermit.api:app --host 0.0.0.0 --port 8000

受保护的资源是 POST /v1/check-project-requirements/health 仍可免费用于部署监控。

真实付费冒烟测试

仅在你自己的机器上运行此测试。将付款方私钥保存在本地;切勿粘贴或提交它。

python -m venv .venv-buyer
source .venv-buyer/bin/activate
pip install -e '.[buyer]'
export EVM_PRIVATE_KEY='0x...'
python scripts/x402_paid_smoke.py

付款方钱包需要有足够的 Base Sepolia USDC 来支付 $0.01 的测试费用。成功运行应返回 HTTP 200 和已解码的结算响应。服务器本身永远不需要付款方私钥。

阶段 0 安全边界

在存在不确定性的情况下,判定结果有意使用预检语言,例如 LIKELY_REQUIREDLIKELY_NOT_REQUIREDADDITIONAL_REVIEW_REQUIREDMUNICIPAL_CONFIRMATION_REQUIRED。引擎不应被呈现为市政当局、许可证签发机构、律师、建筑师或工程师。

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Professional building code compliance assistant that interfaces with municipal building codes, helping contractors and builders navigate complex regulatory requirements with precision.
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    AI-powered property intelligence for instant zoning analysis, buildability assessments, ADU eligibility, flood risk, and development feasibility reports for any US address.
    5
    1
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

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/ChanghuLiu/projectpermit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server