projectpermit-mcp
ProjectPermit / BuildRequirements — Фаза 0
ProjectPermit — это движок предварительной проверки муниципальных разрешений для строительных и реновационных проектов с привязкой к подтверждающим источникам. BuildRequirements — детерминированный движок правил внутри него.
Фаза 0 поддерживает:
gatineau_qcottawa_on8 семейств проектов
резолвинг адресов с помощью муниципальных ГИС/геокодеров
результаты с учётом версий правил и оверлеев
подтверждение из официальных источников для каждого результата правила
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-mcpprojectpermit-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 -vRelated 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 APIsrc/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, там, где есть неопределённость. Движок не следует выдавать за муниципалитет, орган выдачи разрешений, юриста, архитектора или инженера.
This server cannot be installed
Maintenance
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
- AlicenseNot gradedqualityDmaintenanceProfessional building code compliance assistant that interfaces with municipal building codes, helping contractors and builders navigate complex regulatory requirements with precision.1MIT
- AlicenseBqualityDmaintenanceEnables users to search and navigate over 22,500 indexed sections across 16 Canadian building codes and user guides. It supports keyword searches, hierarchy navigation, and optional full-text extraction from user-provided PDF documents.72MIT
- AlicenseAqualityDmaintenanceAI-powered property intelligence for instant zoning analysis, buildability assessments, ADU eligibility, flood risk, and development feasibility reports for any US address.51MIT
- AlicenseNot gradedqualityBmaintenanceEnables construction professionals to query project documents with conflict-aware RAG, detect contradictions, and trace change impacts through any MCP client.430MIT
Related MCP Connectors
Stateless advisor + validator for Conducted Development: kickoff, artifact validation, rule checks.
Author rules from policy docs, then decide: a Rete engine gives the verdict, an LLM explains why.
Resolve, search and verify legal citations against the official sources, with provenance.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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