Skip to main content
Glama
handaas

construction-mcp-server

by handaas

建筑:建筑报建全流程监控

该MCP服务提供企业关键词搜索、企业建筑工程项目明细、建筑项目搜索、项目详情、招投标、合同、施工图审查、施工许可和竣工信息查询功能。

主要功能

  • 🔍 企业简称与关键词搜索

  • 🏢 企业建筑工程项目明细查询

  • 🏗️ 建筑报建项目搜索

  • 🏢 项目基本信息和参建主体查询

  • 📢 项目招投标信息查询

  • 📝 项目合同信息查询

  • 📐 施工图审查信息查询

  • 🏭 施工许可信息查询

  • ✅ 竣工备案和验收信息查询

Related MCP server: @raygister/mcp

环境要求

  • Python 3.10+

  • 依赖包:python-dotenv, requests, mcp

本地快速启动

1. 克隆项目

git clone https://github.com/handaas/construction-mcp-server
cd construction-mcp-server

2. 创建虚拟环境&安装依赖

python -m venv mcp_env && source mcp_env/bin/activate
pip install -r requirements.txt

3. 环境配置

复制环境变量模板并配置:

cp .env.example .env

编辑 .env 文件,配置以下环境变量:

INTEGRATOR_ID=your_integrator_id
SECRET_ID=your_secret_id
SECRET_KEY=your_secret_key
HANDAAS_REQUEST_TIMEOUT=30

4. streamable-http启动服务

python server/mcp_server.py streamable-http

服务将在 http://localhost:8000 启动,MCP 地址为 http://127.0.0.1:8000/mcp

支持启动方式 stdio 或 sse 或 streamable-http

5. Cursor / Cherry Studio MCP配置

{
  "mcpServers": {
    "construction-mcp-server": {
      "type": "streamableHttp",
      "url": "http://127.0.0.1:8000/mcp"
    }
  }
}

STDIO版安装部署

设置Cursor / Cherry Studio MCP配置

{
  "mcpServers": {
    "construction-mcp-server": {
      "command": "uv",
      "args": ["run", "mcp", "run", "{workdir}/server/mcp_server.py"],
      "env": {
        "PATH": "{workdir}/mcp_env/bin:$PATH",
        "PYTHONPATH": "{workdir}/mcp_env",
        "INTEGRATOR_ID": "your_integrator_id",
        "SECRET_ID": "your_secret_id",
        "SECRET_KEY": "your_secret_key"
      }
    }
  }
}

使用官方Remote服务

当前服务暂未开放官方 Remote 地址。请使用本地 stdiossestreamable-http 方式运行;官方 Remote 地址开放后将在本节补充配置。

注意:integrator_id、secret_id、secret_key及Remote token需要登录 https://www.handaas.com/ 进行注册开通平台获取

推荐调用流程

  1. 用户只提供企业简称、品牌或关键词时,先调用 construction_enterprise_search 获取企业全称、nameId 或统一社会信用代码。

  2. 调用 construction_enterprise_project_list 查询该企业涉及的建筑工程项目,取得项目 _id 和完整项目名称。

  3. 使用项目 _id 作为 sikuId 查询项目综合详情、合同、施工图审查、施工许可和竣工信息。

  4. 使用完整项目名称调用 construction_project_bidding_list 查询相关招投标信息。

如果用户不是从企业维度出发,而是直接提供项目名称、地区、用途或工程规模,可跳过前两步,直接调用 construction_project_search

可用工具

功能: 关键词查询企业

Product ID: 675cea1f0e009a9ea37edaa1

按企业简称、企业名称、品牌、产品或其他关键词查询候选企业,为企业建筑工程项目查询提供稳定主体标识。

参数:

  • matchKeyword (必需): 企业简称、名称、品牌、产品或其他关键词

  • pageIndex (可选): 页码,从1开始,默认1

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 候选企业总数

  • resultList: 候选企业列表

    • name: 企业全称

    • nameId: 企业ID

    • catchReason: 关键词命中原因

    • enterpriseType: 企业类型

    • operStatus: 经营状态

    • legalRepresentative: 法定代表人

    • foundTime: 成立时间

    • regCapitalValue: 注册资本

    • address: 企业地址

2. construction_enterprise_project_list

功能: 建筑工程项目明细查询

Product ID: 66aba795520b164ce252e5e7

根据企业名称、企业ID、注册号或统一社会信用代码,查询该企业涉及的全部建筑工程项目。

参数:

  • matchKeyword (必需): 企业名称、企业ID、注册号或统一社会信用代码

  • keywordType (可选): 主体类型,可选 namenameIdregNumbersocialCreditCode,默认 name

  • pageIndex (可选): 页码,从1开始,默认1

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 企业涉及的建筑工程项目总数

  • resultList: 建筑工程项目列表

    • _id: 建筑项目ID,可作为后续Tool的 sikuId

    • projectName: 项目名称

    • projectType: 项目类型

    • region: 项目地区

    • totalInvestment: 总投资,单位元

功能: 建筑报建项目搜索

参数:

  • projectNameInclude (可选): 项目名称包含词

  • projectNameExclude (可选): 项目名称排除词

  • biddingWinner (可选): 中标单位

  • totalInvestment (可选): 总投资筛选

  • region (可选): 项目地区

  • hasCompletionAcceptance (可选): 是否存在竣工验收

  • use (可选): 项目用途

  • constructionNature (可选): 建设性质

  • dataGrade (可选): 数据等级

  • projectType (可选): 项目类型

  • minTotalArea / maxTotalArea (可选): 总面积区间

  • minTotalLength / maxTotalLength (可选): 总长度区间

  • pageIndex (可选): 页码

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 项目总数

  • resultList: 建筑项目列表

    • _id: 四库项目ID,在后续Tool中作为 sikuId

    • projectName: 项目名称

    • 项目地区、用途、建设性质和工程规模等摘要字段

    • 建设单位、中标单位和项目状态等关联信息

4. construction_project_detail

功能: 建筑项目综合详情查询

参数:

  • sikuId (必需): 必须使用项目搜索返回的 _id

返回值:

  • total: 命中数量

  • resultList: 项目综合详情

    • 项目基本信息

    • 建设单位信息

    • 勘察、设计、施工和监理等参建主体

    • 工程规模、投资、用途和建设性质

5. construction_project_bidding_list

功能: 建筑项目招投标信息查询

参数:

  • projectName (必需): 建议使用项目搜索返回的完整项目名称

  • pageIndex (可选): 页码

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 招投标记录总数

  • resultList: 招标、采购和中标记录

    • 公告标题和公告类型

    • 招标单位、采购主体和中标单位

    • 公告时间、地区和来源链接等信息

6. construction_project_contract_list

功能: 建筑项目合同信息查询

参数:

  • sikuId (必需): 项目搜索返回的项目ID

  • pageIndex (可选): 页码

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 合同总数

  • resultList: 项目关联合同列表

    • 合同名称和合同金额

    • 发包单位和承包单位

    • 合同类型、签订时间和状态等信息

7. construction_project_drawing_review_list

功能: 建筑项目施工图审查查询

参数:

  • sikuId (必需): 项目搜索返回的项目ID

  • pageIndex (可选): 页码

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 施工图审查记录数量

  • resultList: 审查合格书记录

    • projectName: 项目名称

    • engineeringName: 工程名称

    • censorNum: 施工图审查合格书编号

    • constructionPermitNum: 施工许可证号

    • releaseCertTime: 发证时间

8. construction_project_permit_list

功能: 建筑项目施工许可查询

参数:

  • sikuId (必需): 项目搜索返回的项目ID

  • pageIndex (可选): 页码

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 施工许可记录总数

  • resultList: 施工许可明细

    • 工程名称和施工许可证号

    • 发证机关和发证时间

    • 建设、施工、设计和监理单位

    • 关联单位人员和工程规模

9. construction_project_completion_list

功能: 建筑项目竣工信息查询

参数:

  • sikuId (必需): 项目搜索返回的项目ID

  • pageIndex (可选): 页码

  • pageSize (可选): 每页条数,默认10,最大10

返回值:

  • total: 竣工记录总数

  • resultList: 合并后的竣工备案和验收记录

    • recordType=completion_record: 竣工备案

    • recordType=completion_acceptance: 竣工验收

    • 竣工时间、备案编号、验收信息和关联单位等字段

使用注意事项

  1. 企业简称处理: 企业简称不能直接用于工程项目查询时,先调用 construction_enterprise_search 确认企业全称或稳定ID。

  2. 主体类型: 企业工程项目查询的 keywordType 必须与 matchKeyword 内容一致。

  3. 项目ID要求: 项目详情、合同、施工图审查、施工许可和竣工查询必须使用项目列表或项目搜索返回的 _id 作为 sikuId

  4. 招投标条件: 招投标查询使用项目完整名称进行全文匹配。

  5. 施工图审查来源: 该Tool从施工许可数据中投影已有审查合格书字段,不是独立上游接口。

  6. API限制: 分页查询一页最多获取10条数据。

  7. 合法空结果: 未命中时返回 total=0resultList=[],不作为系统错误。

  8. 监控边界: “监控”由调用方按需重复查询实现,本服务不提供后台订阅或主动推送。

使用提问示例

  1. “中建”对应哪些企业?

  2. 通过“中国建筑”查找准确企业名称和企业ID

  3. 搜索与某建筑品牌相关的候选企业

construction_enterprise_project_list (建筑工程项目明细查询)

  1. 查询中国建筑股份有限公司涉及的建筑工程项目

  2. 使用企业ID查看该企业全部工程项目明细

  3. 根据统一社会信用代码查询企业的项目名称、地区和总投资

  1. 搜索广东名称中包含“产业园”的建筑项目

  2. 查询中标单位为某公司的建筑项目

  3. 查找已完成竣工验收的住宅项目

construction_project_detail (建筑项目综合详情查询)

  1. 查看刚才项目的基本信息和建设单位

  2. 查询该项目有哪些参建主体

  3. 获取项目投资、用途和工程规模

construction_project_bidding_list (建筑项目招投标信息查询)

  1. 查询这个产业园项目的招标公告

  2. 查看该项目的中标单位和中标信息

  3. 查询项目相关采购公告

construction_project_contract_list (建筑项目合同信息查询)

  1. 查看该项目的合同列表

  2. 查询项目合同金额和承包单位

  3. 获取该项目的发包单位信息

construction_project_drawing_review_list (建筑项目施工图审查查询)

  1. 查询该项目的施工图审查合格书编号

  2. 查看审查记录关联的工程名称

  3. 核对施工图审查记录和许可证号

construction_project_permit_list (建筑项目施工许可查询)

  1. 查询该项目的施工许可证

  2. 查看施工许可关联的单位和人员

  3. 获取施工许可发证机关和发证时间

construction_project_completion_list (建筑项目竣工信息查询)

  1. 查询该项目的竣工备案记录

  2. 查看项目是否已完成竣工验收

  3. 分别列出竣工备案和验收信息

测试验证

python -m py_compile server/mcp_server.py
python -m unittest discover -s tests -v

当前服务包含 10 个离线单元测试。真实接口验证需在本地 .env 配置有效凭据后执行,测试输出不得提交真实业务响应或凭据。

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Provides read-only access to TrustLayer's public API, enabling users to query and retrieve data about parties, documents, projects, and other TrustLayer entities through MCP-compatible tools.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Read-only MCP server for Raygister, enabling AI assistants to browse construction projects, lots, specifications, and locations via natural language.
    6
    8 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides access to government development, geography and land information data through a FastMCP interface, including data on new building plans processed by the Building Authority.
    1
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Read-only MCP server exposing the Construction Intelligence Platform's project discovery interface via search_projects and fetch_project tools, returning Pydantic business objects from the ci_market_state DuckDB table without requiring SQL.
    -