Skip to main content
Glama
ChanghuLiu

projectpermit-mcp

by ChanghuLiu

ProjectPermit / BuildRequirements — Фаза 0

ProjectPermit — это движок предварительной проверки муниципальных разрешений для строительных и реновационных проектов с привязкой к подтверждающим источникам. BuildRequirements — детерминированный движок правил внутри него.

Фаза 0 поддерживает:

  • gatineau_qc

  • ottawa_on

  • 8 семейств проектов

  • резолвинг адресов с помощью муниципальных ГИС/геокодеров

  • результаты с учётом версий правил и оверлеев

  • подтверждение из официальных источников для каждого результата правила

  • endpoint 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_HOST и PROJECTPERMIT_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 — адаптеры муниципальных адресов/ГИС

  • 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_REQUIRED, LIKELY_NOT_REQUIRED, ADDITIONAL_REVIEW_REQUIRED и MUNICIPAL_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