关于 Maritime Resource Compliance
Maritime Resource Compliance 是面向环境分析师、海上合规团队和渔业监管机构的 MCP 服务,可整合 7 个实时数据源,评估配额、许可证、违规、生态风险、灾害与可持续性。
主要功能
- 01提供 8 种海事合规分析工具
- 02并行查询 7 个数据源
- 03提示配额利用率预警与违规
- 04评估环境与生态风险
- 05评估沿海灾害与可持续性
- 06生成综合合规报告
适用场景
- 01按区域或物种核查渔业配额
- 02审查油气开采趋势
- 03筛查废弃物承运商的注册问题
- 04评估生态健康与沿海灾害
MCP 相关
向 MCP 客户端提供 8 种海事合规工具,包括配额检查、灾害跟踪、风险评分和综合报告,并连接 7 个政府及开放数据源。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://ryanclinton--maritime-resource-compliance-mcp.apify.actor/mcpclaude mcp add --transport http maritime-resource-compliance https://ryanclinton--maritime-resource-compliance-mcp.apify.actor/mcp{"mcpServers":{"maritime-resource-compliance":{"type":"http","url":"https://ryanclinton--maritime-resource-compliance-mcp.apify.actor/mcp"}}}在 Cursor 中打开{"servers":{"maritime-resource-compliance":{"type":"http","url":"https://ryanclinton--maritime-resource-compliance-mcp.apify.actor/mcp"}}}在 VS Code 中打开{"mcpServers":{"maritime-resource-compliance":{"type":"http","url":"https://ryanclinton--maritime-resource-compliance-mcp.apify.actor/mcp"}}}{"mcpServers":{"maritime-resource-compliance":{"serverUrl":"https://ryanclinton--maritime-resource-compliance-mcp.apify.actor/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
Maritime Resource Compliance MCP Server
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf):
{
"mcpServers": {
"maritime-resource-compliance-mcp": {
"url": "https://ryanclinton--maritime-resource-compliance-mcp.apify.actor/mcp"
}
}
}
面向海洋资源合规情报,涵盖捕捞配额、油气许可证、废物承运商和沿海灾害——通过一个 AI Agent 可直接调用的模型上下文协议服务提供。该服务将 Claude、Cursor、Windsurf 或任何兼容 MCP 的客户端连接到 7 个实时政府和开放数据源,数秒内即可呈现合规违规情况、生态系统风险评分和可持续性评估。
专为需要在 AI 工作流中使用结构化、可查询海洋数据的环境分析师、海上合规团队和渔业监管机构打造。8 个专用工具涵盖海洋资源合规的各个方面:从单项配额利用率到投资组合级可持续性指数。
可以提取哪些数据?
| 数据点 | 来源 | 示例 |
|---|---|---|
| 📋 捕捞配额分配 | FQA Register (UK) | 大西洋鳕鱼 — 分配 142 吨,已使用 89% |
| 🛢 油气许可证区块 | NSTA (UK Continental Shelf) | 许可证 P2547,区块 21/25a,北海 |
| ♻️ 废物承运商注册信息 | Environment Agency | Coastal Waste Solutions Ltd — 上层级,有效 |
| 🌩 恶劣天气警报 | NOAA | 大风警报,北海,2026-03-20 生效 |
| 🌊 沿海洪水警报 | UK Flood Monitoring | 严重程度 2 级 — 东安格利亚海岸 |
| 🐟 海洋物种分布记录 | GBIF | Gadus morhua — 847 条记录,北大西洋 |
| 📈 环境指标 | World Bank | 人均 CO₂ 排放 — 5.8 吨 (EN.ATM.CO2E.PC) |
| 🔗 资源网络边 | 派生 | 配额–许可证资源重叠,权重 0.5 |
| ⚠️ 环境违规 | 交叉引用 | 注册信息已过期 — 高严重程度 |
| 🧮 可持续性指数 | 综合指标 | 0.68(勉强达标)— 开采平衡度 71% |
| 🌡 生态系统风险评分 | 综合指标 | 0.42(中等)— 生物多样性压力 38% |
| 📊 开采趋势 | 时间序列 | 总体趋势:上升,强度指数 24.7 |
为什么使用 Maritime Resource Compliance MCP Server?
海洋和能源行业的合规团队每周都要花数小时从 FQA Register、NSTA 门户、Environment Agency 数据库、NOAA 警报和 GBIF 提取数据,然后在电子表格中手动核对数据。要为北海运营商汇总一份合规快照,可能需要花半天时间从五个独立的政府门户收集信息。
此服务可自动完成整个流程。一次工具调用即可从全部 7 个数据源获取数据、交叉引用并评分,返回结构化 JSON,供你的 AI Agent 立即分析。
- 计划任务 — 按自动间隔执行每日合规检查或每周可持续性报告
- API 访问 — 通过 Apify 的 REST API,使用 Python、JavaScript 或任何 HTTP 客户端调用 8 个工具中的任意一个
- 代理轮换 — 底层 Actor 调用使用 Apify 的代理基础设施,避免政府数据源的速率限制
- 监控 — 当合规评分低于阈值时,配置 Slack 或电子邮件提醒
- 集成 — 通过 Webhook 将结果连接到 Zapier、Make、Google Sheets 或内部 BI 仪表板
功能
- 8 个专用 MCP 工具,涵盖资源映射、渔业合规、环境违规、资源开采趋势、生态系统风险、沿海灾害、可持续性评估和综合报告
- 7 个实时数据源并行查询:FQA Register、NSTA Oil and Gas、Environment Agency Waste Carriers、NOAA Weather、UK Flood Monitoring、GBIF Biodiversity 和 World Bank Indicators
- 渔业配额合规引擎:将超额分配(utilizationRatio > 1.0)标记为违规,并将接近上限的配额(utilizationRatio > 0.85)标记为警告,适用于任何区域或物种
- 环境违规检测:交叉核对废弃物承运商的注册状态——注册已撤销会触发严重级别,注册已过期会触发高级别——以及 World Bank CO₂ 指标数据
- 加权生态系统风险模型,包含 4 个因素:生物多样性压力(权重 35%)、资源开采强度(权重 30%)、环境压力(权重 20%)和累积影响(权重 15%)
- 可持续性指数:综合平衡四个维度——资源开采平衡、生物多样性健康、环境合规性和灾害韧性——得出一个 0–1 的分数,并提供可执行的建议
- 网络图构建:构建节点(配额、许可证、承运商、天气事件、洪水预警、物种、指标)和带类型的边(resource_overlap、waste_from_extraction、hazard_correlation、biodiversity_pressure)
- 沿海灾害综合评分:将 NOAA 天气警报严重程度与 UK 洪水预警严重程度等级结合为单一加权风险分数
- 资源开采趋势时序分析:按年份对油气许可证和渔业配额数据分组,计算资源开采强度指数(licenseCount × 10 + quotaVolume / 100),并比较前半段与后半段的平均值以确定总体趋势
- 完全并行执行 —
generate_maritime_compliance_report通过Promise.all并发运行全部 7 项子分析,最大限度缩短完整评估的延迟 - 优雅的错误处理 — 单个 actor 发生故障时返回空数组,而不会导致工具调用崩溃,确保始终返回部分结果
- 待机模式运行 — 在 Apify 平台上以 128–512 MB 内存持续运行,可随时响应工具调用,无需经历冷启动延迟
海事资源合规情报的应用场景
渔业合规监测
配额管理员和渔业监管机构需要在有必要采取执法行动之前,了解哪些物种和船只接近或超过分配上限。assess_fishing_quota_compliance 工具会获取实时 FQA Register 数据,计算每项配额的使用率,并立即标记违规情况。分析人员可以按区域或物种筛选,并将结果直接整合到监管报告工作流中。
油气环境合规
海上能源运营商和环境监督组织会跟踪 NSTA 许可活动,以识别资源开采强度趋势,并评估北海区块的活动是否正在增加。analyze_resource_extraction_trends 工具按年份对许可证发放情况分组并计算资源开采强度指数,让人们可以轻松发现可能需要监管审查的租赁活动加速迹象。
废弃物承运商合规审计
负责筛查海洋周边废弃物承运商的环境合规官员,需要在签订合同前识别注册已撤销或已过期的运营商。detect_environmental_violations 工具会交叉核对 Environment Agency 的废弃物承运商数据和 World Bank 环境指标,并标记注册状态异常承运商的严重级别违规。
海洋生态系统健康评估
准备可持续发展报告的 ESG 团队和环境咨询机构需要一项客观的生态系统风险评分,将资源开采压力与生物多样性数据结合起来。score_marine_ecosystem_risk 工具利用 GBIF 物种数量、渔业和油气许可证数量以及 NOAA 严重天气事件,生成 0–1 的风险评分并按因素归因,可直接用于 ESG 披露或监管申报。
沿海作业危害规划
港口运营商、海上设施管理人员和海事物流团队在安排船只或船员前,需要实时了解当前沿海危害。track_coastal_hazards 工具将 NOAA 天气预警和英国洪水预警汇总为统一的危害列表,并提供综合风险评分、严重程度细分及有效时段时间戳。
可持续发展报告和 ESG 披露
面临日益严格的可持续资源利用证明要求的企业,其供应链涉及海事领域。assess_sustainable_resource_use 工具针对四个评分维度生成可持续性指数,并提供具体建议,为监管申报、投资者报告和面向公众的透明度披露提供可靠的量化依据。
如何连接此 MCP 服务
Claude Desktop
添加到你的 claude_desktop_config.json:
{
"mcpServers": {
"maritime-resource-compliance": {
"url": "https://maritime-resource-compliance-mcp.apify.actor/mcp",
"headers": {
"Authorization": "Bearer YOUR_APIFY_TOKEN"
}
}
}
}
Cursor / Windsurf / Cline
将 MCP 客户端指向:
https://maritime-resource-compliance-mcp.apify.actor/mcp
在 Authorization 标头中将 Apify API 令牌作为 Bearer 令牌传入。
Python(通过 MCP 客户端)
from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("ryanclinton/maritime-resource-compliance-mcp").call(run_input={})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
直接使用 cURL
# Call the assess_fishing_quota_compliance tool
curl -X POST "https://maritime-resource-compliance-mcp.apify.actor/mcp" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"assess_fishing_quota_compliance","arguments":{"region":"North Sea","species":"cod","maxResults":50}},"id":1}'
# Call generate_maritime_compliance_report for a full assessment
curl -X POST "https://maritime-resource-compliance-mcp.apify.actor/mcp" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"generate_maritime_compliance_report","arguments":{"region":"North Sea","maxResults":50}},"id":2}'
MCP 工具
| 工具 | 价格 | 描述 |
|---|---|---|
map_maritime_resource_network | $0.045 | 构建统一的网络图,涵盖配额、许可证、承运商、天气事件、洪水预警、物种和经济指标,并包含带类型的关系边 |
assess_fishing_quota_compliance | $0.045 | 计算每条配额记录的利用率;标记违规(>100%)和预警(>85%),并按物种细分 |
detect_environmental_violations | $0.045 | 筛查废弃物承运商是否存在已撤销或过期的注册;与世界银行 CO₂ 指标交叉核对并进行严重程度分类 |
analyze_resource_extraction_trends | $0.045 | 按年份分组油气许可证和渔业配额;计算资源开采强度指数并判定总体趋势方向 |
score_marine_ecosystem_risk | $0.045 | 加权四因素风险模型:生物多样性压力(35%)、资源开采强度(30%)、环境压力(20%)、累积影响(15%) |
track_coastal_hazards | $0.045 | 将 NOAA 天气预警和英国洪水预警汇总为统一的危害列表,并提供加权综合风险评分 |
assess_sustainable_resource_use | $0.045 | 四维度可持续性指数:资源开采平衡(30%)、生物多样性健康状况(30%)、环境合规性(20%)、危害抵御能力(20%) |
generate_maritime_compliance_report | $0.045 | 并行运行全部 7 项子分析的完整评估;返回总体合规评分、风险等级和执行摘要 |
工具参数
所有工具都接受相同的可选参数:
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
region | string | — | 地理区域、国家或海域(例如,“North Sea”“England”“Atlantic”) |
species | string | — | 仅用于 assess_fishing_quota_compliance 的物种筛选条件(例如,“cod”“herring”) |
sources | array | all | 仅用于 map_maritime_resource_network 的数据源:fishing、oil_gas、waste、weather、flood、biodiversity、economic |
maxResults | number | 100 | 每个数据源最多获取的记录数(generate_maritime_compliance_report 的默认值为 50) |
输入提示
- 若要查询全球范围,请省略
region— 将 region 留空会查询每个来源的所有可用数据,且不应用地理筛选 - 快速测试时使用
maxResults: 20— 探索新区域时,将默认值 100 调低可显著缩短每个工具的延迟 - 筛选
sources以降低成本 — 将["fishing", "biodiversity"]传递给map_maritime_resource_network,可跳过其他 5 次参与方调用,缩短执行时间 - 完整报告请调用
generate_maritime_compliance_report— 此工具会并发运行全部 7 项分析;逐一调用各工具成本相同,但耗时更长 - 使用各来源可识别的区域名称 — NOAA 和 NSTA 支持“North Sea”;Environment Agency 和 UK Flood Monitoring 支持“England”
输出示例
{
"reportId": "MCR-1742476800000-k4f9xz",
"generatedAt": "2026-03-20T09:00:00.000Z",
"region": "North Sea",
"executiveSummary": "Maritime Compliance Report for North Sea. Overall compliance score: 71.4% (risk level: moderate). Analyzed 48 fishing quotas: 39 compliant, 7 warnings, 2 violations. Overall compliance rate: 81.3%. Screened 62 waste carriers. Found 8 violations (1 critical, 3 high, 4 medium). Cross-referenced with 12 environmental indicators. Ecosystem risk: moderate. Sustainability: marginal. Active coastal hazards: 14.",
"fishingCompliance": {
"quotas": [
{
"id": "fq-0000",
"species": "Atlantic cod",
"allocation": 142,
"utilization": 126.38,
"utilizationRatio": 0.890,
"complianceStatus": "warning"
},
{
"id": "fq-0001",
"species": "North Sea herring",
"allocation": 890,
"utilization": 834.6,
"utilizationRatio": 0.938,
"complianceStatus": "warning"
},
{
"id": "fq-0002",
"species": "Plaice",
"allocation": 215,
"utilization": 248.45,
"utilizationRatio": 1.155,
"complianceStatus": "violation"
}
],
"overallComplianceRate": 0.813,
"violationCount": 2,
"warningCount": 7,
"summary": "Analyzed 48 fishing quotas: 39 compliant, 7 warnings, 2 violations. Overall compliance rate: 81.3%."
},
"environmentalViolations": {
"violations": [
{
"carrierId": "wc-0004",
"carrierName": "Harbour Waste Management Ltd",
"violationType": "Revoked registration operating",
"severity": "critical",
"environmentalImpact": "Unregulated waste handling poses severe contamination risk",
"relatedIndicators": ["CO2 emissions per capita", "Forest area", "Access to electricity"]
},
{
"carrierId": "wc-0011",
"carrierName": "Coastal Marine Disposal Services",
"violationType": "Expired registration",
"severity": "high",
"environmentalImpact": "Lapsed oversight increases pollution likelihood",
"relatedIndicators": ["CO2 emissions per capita", "Forest area", "Access to electricity"]
}
],
"totalViolations": 8,
"severityBreakdown": { "low": 54, "medium": 4, "high": 3, "critical": 1 },
"summary": "Screened 62 waste carriers. Found 8 violations (1 critical, 3 high, 4 medium). Cross-referenced with 12 environmental indicators."
},
"extractionTrends": {
"trends": [
{ "period": "2021", "licenseCount": 14, "quotaVolume": 3200, "extractionIntensity": 172, "trend": "stable" },
{ "period": "2022", "licenseCount": 18, "quotaVolume": 3850, "extractionIntensity": 218.5, "trend": "increasing" },
{ "period": "2023", "licenseCount": 22, "quotaVolume": 4100, "extractionIntensity": 261, "trend": "increasing" }
],
"overallTrend": "increasing",
"intensityIndex": 217.17,
"summary": "Analyzed 54 oil/gas licenses and 48 fishing quotas across 3 periods. Overall extraction trend: increasing. Average intensity index: 217.17."
},
"ecosystemRisk": {
"riskScore": 0.42,
"riskLevel": "moderate",
"factors": [
{ "factor": "Biodiversity Pressure", "score": 0.38, "weight": 0.35, "contribution": 0.133, "details": "78 species tracked; pressure index 38.0%" },
{ "factor": "Resource Extraction Intensity", "score": 0.72, "weight": 0.30, "contribution": 0.216, "details": "48 fishing quotas, 22 oil/gas licenses; intensity 72.0%" },
{ "factor": "Environmental Stress", "score": 0.30, "weight": 0.20, "contribution": 0.060, "details": "6 severe weather events out of 31 total; stress 30.0%" },
{ "factor": "Cumulative Impact", "score": 0.47, "weight": 0.15, "contribution": 0.070, "details": "Combined cumulative pressure from all factors" }
],
"biodiversityPressure": 0.380,
"extractionPressure": 0.720,
"environmentalStress": 0.300,
"summary": "Marine ecosystem risk: moderate (score 42.0%). Biodiversity pressure 38.0%, extraction intensity 72.0%, environmental stress 30.0%."
},
"coastalHazards": {
"hazards": [
{ "id": "weather-0", "type": "wind", "severity": "high", "location": "Northern North Sea", "description": "Gale Warning in effect", "activeFrom": "2026-03-20T06:00:00Z", "activeTo": "2026-03-21T00:00:00Z" },
{ "id": "flood-0", "type": "flood", "severity": "moderate", "location": "Humber Estuary", "description": "Flood alert — low-lying areas at risk", "activeFrom": "2026-03-20T08:00:00Z" }
],
"activeHazardCount": 14,
"severityBreakdown": { "low": 6, "moderate": 5, "high": 2, "extreme": 1 },
"compositeRisk": 0.36,
"summary": "Tracking 14 coastal hazards (1 extreme, 2 high, 5 moderate, 6 low). Composite risk: 36.0%. Sources: 9 weather alerts, 5 flood warnings."
},
"sustainableUse": {
"sustainabilityIndex": 0.534,
"rating": "marginal",
"dimensions": {
"extractionBalance": 0.533,
"biodiversityHealth": 0.780,
"environmentalCompliance": 0.900,
"hazardResilience": 0.600
},
"recommendations": [
"Reduce extraction intensity — license/quota volume exceeds sustainable thresholds"
],
"summary": "Sustainability index: 53.4% (marginal). Extraction balance 53.3%, biodiversity health 78.0%, environmental compliance 90.0%, hazard resilience 60.0%."
},
"overallComplianceScore": 0.714,
"overallRiskLevel": "moderate"
}
输出字段
| 字段 | 类型 | 描述 |
|---|---|---|
reportId | string | 唯一报告标识符,格式为 MCR-{timestamp}-{random} |
generatedAt | string | 报告生成时间的 ISO 8601 时间戳 |
region | string | 作为输入传入的地理区域(如有) |
executiveSummary | string | 所有分析结果的易读摘要 |
overallComplianceScore | number | 0–1 的综合评分(渔业 25% + 环境违规 20% + 生态系统 20% + 可持续性 20% + 灾害 15%) |
overallRiskLevel | string | 根据合规评分得出的 low / moderate / high / critical |
fishingCompliance.quotas[] | array | 各配额的合规记录 |
fishingCompliance.quotas[].species | string | FQA Register 中的物种名称 |
fishingCompliance.quotas[].allocation | number | 分配的配额量 |
fishingCompliance.quotas[].utilizationRatio | number | 配额使用量占分配量的比例 |
fishingCompliance.quotas[].complianceStatus | string | compliant / warning(>85%)/ violation(>100%) |
fishingCompliance.overallComplianceRate | number | 合规状态配额所占比例 |
environmentalViolations.violations[] | array | 各承运方的违规记录 |
environmentalViolations.violations[].severity | string | low / medium / high / critical |
environmentalViolations.violations[].violationType | string | 违规类型分类 |
environmentalViolations.severityBreakdown | object | 各严重程度的违规数量 |
extractionTrends.trends[] | array | 各时期的开采指标 |
extractionTrends.trends[].extractionIntensity | number | 按 licenseCount × 10 + quotaVolume / 100 计算 |
extractionTrends.trends[].trend | string | 与上一时期相比的 increasing / stable / decreasing |
extractionTrends.overallTrend | string | 比较前半段与后半段平均值所得的趋势方向 |
extractionTrends.intensityIndex | number | 所有时期的平均开采强度 |
ecosystemRisk.riskScore | number | 0–1 的加权综合风险评分 |
ecosystemRisk.riskLevel | string | low / moderate / high / critical |
ecosystemRisk.factors[] | array | 各因素的评分、权重和贡献值 |
ecosystemRisk.biodiversityPressure | number | 物种数量不足造成的压力(0–1) |
ecosystemRisk.extractionPressure | number | 许可证和配额量造成的压力(0–1) |
ecosystemRisk.environmentalStress | number | 严重天气事件数量造成的压力(0–1) |
coastalHazards.hazards[] | array | 来自 NOAA 和 UK Flood 的单项灾害记录 |
coastalHazards.hazards[].type | string | flood / storm / surge / wind / other |
coastalHazards.hazards[].severity | string | low / moderate / high / extreme |
coastalHazards.compositeRisk | number | 0–1 的加权平均严重程度评分 |
sustainableUse.sustainabilityIndex | number | 0–1 的综合可持续性评分 |
sustainableUse.rating | string | sustainable(≥0.70)/ marginal(≥0.45)/ unsustainable(≥0.25)/ critical |
sustainableUse.dimensions | object | 四个维度的评分:extractionBalance、biodiversityHealth、environmentalCompliance、hazardResilience |
sustainableUse.recommendations[] | array | 评分引擎给出的具体改进建议 |
resourceNetwork.network.nodes[] | array | 图节点:配额、许可证、承运方、天气事件、洪水预警、物种、指标 |
resourceNetwork.network.edges[] | array | 类型化边:resource_overlap、waste_from_extraction、hazard_correlation、biodiversity_pressure |
resourceNetwork.network.totalNodes | number | 所有来源类型的节点总数 |
resourceNetwork.network.totalEdges | number | 网络图中的边总数 |
resourceNetwork.summary | object | 各类型的数量:quotaCount、licenseCount、carrierCount、weatherEventCount、floodWarningCount、speciesCount、indicatorCount |
运行海事合规查询需要多少费用?
此 MCP 服务采用按事件计费——每次工具调用收费 $0.045。平台计算费用已包含在内。
| 场景 | 工具调用次数 | 每次调用费用 | 总费用 |
|---|---|---|---|
| 快速测试(单个工具) | 1 | $0.045 | $0.045 |
| 每日合规检查(3 个工具) | 3 | $0.045 | $0.135 |
| 每周完整报告(1 个报告工具) | 1 | $0.045 | $0.045 |
| 每周监控(7 个工具 × 4 周) | 28 | $0.045 | $1.26 |
| 每日自动监控(每天 1 份报告) | 30 | $0.045 | $1.35 |
Apify 免费套餐每月包含 $5 的平台额度——每月约可免费调用 111 次工具。
你可以为每次运行设置最高支出限额,以控制费用。达到预算后,actor 将停止运行。
提供类似数据覆盖范围的海事数据服务和 ESG 数据平台收费为每月 $500–2,000。使用此服务,大多数合规团队每月支出不到 $5。
Maritime Resource Compliance MCP Server 的工作原理
阶段 1:通过并行 actor 调用收集数据
收到工具调用后,服务会使用 Promise.all 同时向相关 Apify actor 分派请求。actor-client.ts 模块使用你的 APIFY_TOKEN 实例化 ApifyClient,并通过 client.actor(actorName).call(input, { waitSecs: 180, memory: 256 }) 调用各个 actor。最多可同时运行 7 个 actor——FQA Register Search、NSTA Oil and Gas Licenses、EA Waste Carriers、NOAA Weather Alerts、UK Flood Warnings、GBIF Species Search 和 World Bank Indicators。如果任何 actor 运行失败,它会返回空数组,而不是向上传播错误,以确保始终能获取部分结果。
阶段 2:构建网络图
maritime-network.ts 中的 buildMaritimeNetwork 函数会将所有 7 个来源的原始数组处理为带类型的节点-边图。每个来源对应一种独特的节点类型:quota(渔业)、license(油气)、carrier(废弃物)、weather_event(天气)、flood_warning(洪水)、species(生物多样性)和 indicator(经济)。随后会创建四种关系类型,作为跨类型边:resource_overlap(配额↔许可证)、waste_from_extraction(承运商↔许可证)、hazard_correlation(天气↔洪水)和 biodiversity_pressure(物种↔配额)。
阶段 3:合规与风险评分
每个专用工具都会对收集的数据应用自己的评分模型。渔业合规引擎计算 utilizationRatio = utilization / allocation,并在 0.85(警告)和 1.0(违规)处应用阈值。生态系统风险模型采用加权因子贡献:生物多样性压力使用 1 - speciesCount / 200,开采压力使用 extractionVolume / 100,环境压力使用 severeEventCount / 20,所有数值均限制在 [0, 1] 范围内。可持续性指数对四个维度分别赋予 30/30/20/20 的权重,并将最终得分映射为 sustainable(≥0.70)、marginal(≥0.45)、unsustainable(≥0.25)或 critical(<0.25)。
阶段 4:汇总合规报告
generate_maritime_compliance_report 会并发运行所有 7 项子分析,然后使用加权公式计算 overallComplianceScore:渔业合规率(25%)+ 标准化违规率(20%)+ 生态系统风险的反向值(20%)+ 可持续性指数(20%)+ 沿海灾害风险的反向值(15%)。最终得分映射为 low(≥0.75)、moderate(≥0.50)、high(≥0.25)或 critical(<0.25)风险等级。
提升效果的提示
-
对于不熟悉的区域,先使用
generate_maritime_compliance_report。 这次调用会并行运行所有分析,让你全面了解情况,再决定要深入使用哪些特定工具。 -
测试提示词时使用
maxResults: 20。 将默认值 100 调低后,可显著缩短执行时间,而且每次调用费用仍为 $0.045。工作流通过验证后,再提高上限。 -
在
map_maritime_resource_network中筛选sources,缩小范围。 传入["fishing", "biodiversity"],而不是全部 7 个来源,可减少 71% 的底层 Actor 调用次数,并加快网络图的生成。 -
向
assess_fishing_quota_compliance传入具体物种。 使用species: "cod",而不是宽泛的区域查询,可将 FQA Register 搜索聚焦于目标物种,减少合规结果中的噪声。 -
每周安排一次
generate_maritime_compliance_report,积累趋势历史。 随着时间推移,extractionTrends输出会提供更多信息。将每份报告的reportId和overallComplianceScore存入电子表格,以跟踪合规趋势。 -
将
detect_environmental_violations的结果与score_marine_ecosystem_risk交叉对照。 在生态系统风险评分较高的区域,存在严重或高严重程度违规记录的运输商是执法优先级最高的目标。 -
在报告中直接使用
sustainableUse.recommendations数组。 评分引擎会根据低于 0.5 的维度生成具体、可执行的建议,节省撰写报告的时间。 -
船舶作业前,将此工具与
track_coastal_hazards结合使用。 综合风险评分和活跃时段时间戳,可帮助运营团队确定具体的天气窗口,而不仅仅是识别是否存在一般性风险。
与其他 Apify Actor 组合使用
| Actor | 组合方式 |
|---|---|
| 船舶合规报告 | 将检测为违规的废弃物运输商与单艘船舶的合规记录交叉对照,以识别使用已撤销注册运营的具体船只 |
| WHOIS 域名查询 | 利用域名和所有权数据补充废弃物运输商违规结果中的公司名称,以识别不合规运营商背后的实际受益所有人 |
| 公司深度研究 | 为违规检测结果中标记的废弃物运输商或油气许可证持有人生成全面的情报档案 |
| 网站联系信息抓取器 | 从被标记为环境违规者的公司网站中提取合规负责人联系方式,以便直接联系 |
| B2B 潜在客户筛选器 | 对持有 NSTA 油气许可证的公司进行评分,将其作为环境合规软件或咨询服务的潜在客户 |
| Trustpilot 评论分析器 | 使用客户情绪数据补充对受审查废弃物运输商的环境违规调查结果 |
| AML 实体筛查 | 根据制裁和执法数据库,筛查油气许可证或废弃物运输商注册背后的公司 |
局限性
- 地理覆盖范围主要集中在英国。 FQA Register、NSTA 和 Environment Agency 的数据分别覆盖英国水域和英格兰。GBIF 和 World Bank 覆盖全球;NOAA 覆盖美国及大西洋区域。
- 不跟踪船舶移动。 渔业合规分析基于配额分配记录,而非 AIS 船舶跟踪或捕捞核验数据。配额分配风险不能证明存在实际过度捕捞。
- 配额利用率估算可能采用默认值。 如果 FQA Register 的响应中没有实时利用率数据,引擎会根据分配量随机估算利用率。未经主要来源数据核验时,应将利用率视为参考值,而非确切数据。
- 环境违规严重程度仅依据登记状态。 违规检测模型根据承运方的注册类型和状态判定严重程度,不会纳入实际污染事件记录或执法历史。
maxResults会将每个来源的结果限制在 500 条。 无论maxResults参数为何,actor 客户端每次底层 actor 调用最多获取 500 条数据集条目。- 提取趋势分析需要源数据中包含日期字段。 如果 NSTA 或 FQA 记录缺少年份或日期字段,所有记录都会归入“Unknown”,而不是按年份分组,因此只会生成一个趋势时段。
- 实时灾害数据存在轮询延迟。 NOAA 和 UK Flood Monitoring 数据反映查询时的情况;如果相应 actor 尚未完成索引,查询前几分钟发布的警报可能不会显示。
- 持续运行需要待机模式。 在非待机模式下运行服务时,健康检查 1 秒后进程就会退出。请将 Apify actor 配置为使用待机模式,以确保持续可用。
集成
- Apify API — 以编程方式触发工具调用,并通过任何语言或平台检索结果
- Webhooks — 运行完成后,将合规评分结果发送到 Slack、Teams 或内部仪表板
- Zapier — 自动将环境违规警报发送到工单系统或合规管理工作流
- Make — 安排每周合规报告,并将可持续性指数评分推送到 Google Sheets 或 Airtable
- Google Sheets — 存储时间序列合规评分,用于趋势分析和监管审计记录
- LangChain / LlamaIndex — 将提取的海事合规数据用作 RAG 流水线的检索来源,专注于环境法规和可持续性研究
故障排查
-
工具返回某个区域的结果为空。 某些源数据库使用特定的命名规范。试试用“North Sea”代替“UK North Sea”,或在查询 Environment Agency 数据时用“England”代替“UK”。GBIF 接受学名和常用名。如果某个数据源没有返回数据,工具仍会返回其他数据源的结果,而不会失败。
-
generate_maritime_compliance_report的耗时超出预期。 完整报告工具会并行调用 7 个 actor。在 Apify 平台负载较高的时段,单个 actor 调用可能需要长达 180 秒。对于时效性要求较高的查询,可将maxResults减少到 20,以缩短执行时间。 -
利用率比率看起来异常偏高。 如果 FQA Register 记录不包含利用率或捕捞量字段,引擎会使用分配量的随机比例来估算利用率。请检查配额记录中的原始
metadata字段,以确认源数据是否包含实际捕捞量数据。 -
废物承运商违规仅显示
low严重程度。 违规严重程度模型依赖承运商的status字段中包含子字符串“expir”或“revok”。如果 Environment Agency 返回的注册记录没有明确的状态值,所有承运商都会默认为低严重程度。这是源数据质量方面的限制,并非评分错误。 -
MCP 客户端无法连接到服务 URL。 请在 Apify 控制台中确认 actor 正在待机模式下运行。只有当
APIFY_META_ORIGIN === 'STANDBY'时,服务才会在 MCP 端点上监听。在非待机模式下,它会短暂启动以进行健康检查,然后退出。
负责任地使用
- 此服务仅访问公开的政府登记信息和开放数据 API。
- 请遵守 FQA Register、NSTA、Environment Agency、NOAA、UK Flood Monitoring、GBIF 和 World Bank 数据的使用条款。
- 将提取的实体数据用于执法转介或商业用途时,请遵守适用的数据保护法律。
- 未经与一手来源记录核实,请勿使用合规违规结果作出监管执法决定。
- 有关数据使用合法性的指导,请参阅 Apify 的指南。
常见问题
免费计划每月可以调用多少次海事合规工具?
Apify 免费套餐包含每月 $5 的额度。每次工具调用费用为 $0.045,约可支持每月 111 次调用。每次 generate_maritime_compliance_report 调用均计为一个事件,即使它在内部运行了 7 次数据源查询。
海事资源合规 MCP 在英国以外地区也能使用吗? 渔业配额和油气许可证数据以英国为重点(FQA Register 和 NSTA Continental Shelf)。废物承运商数据覆盖英格兰。NOAA 天气预警覆盖美国沿海及大西洋地区。GBIF 生物多样性数据覆盖全球。World Bank 指标覆盖全球。如需覆盖更广的地理区域,生物多样性和经济指标工具可在任何地区使用。
渔业配额合规分析有多准确? 合规分析的准确性取决于 FQA Register 记录是否包含分配量和利用率字段。如果缺少这些字段,引擎会估算利用率。在采取监管行动前,请务必直接与 FQA Register 核实违规标记。
我可以使用此 MCP 服务检测非法捕鱼吗? 此服务可识别配额分配合规风险,即分配量超过安全限值,或利用率接近最高分配量的情况。它不会追踪船舶移动、AIS 信号或实际申报的捕捞量。它可以提供基于配额的风险指标,但无法确认非法捕鱼活动。 这与 Kpler 或 Windward 等商业海事数据服务有何不同? 商业平台专注于船舶追踪和货物情报,月费为 500–2,000 美元。此服务专注于政府登记册中的监管合规数据,包括捕鱼配额、油气许可证、废弃物承运商和环境指标,而这些通常不在商业平台的覆盖范围内。两者互为补充,而非相互竞争。
海事合规数据有多新? 所有数据都会在查询时从各个来源实时获取。没有缓存层。渔业配额登记册、NSTA 许可证数据库和天气警报都会反映工具调用运行时的最新状态。
我可以长期监测海事合规趋势吗?
可以。使用 Apify 内置的计划功能,按日或按周运行 generate_maritime_compliance_report。每份报告都包含 overallComplianceScore 和 extractionTrends 部分;如果长期将报告存储在数据集中,就能形成历史记录。
如果 7 个底层数据源之一不可用,会发生什么? Actor 客户端会在每次 Actor 调用外层包装 try-catch 代码块。如果某个数据源失败,它会返回空数组并记录警告。工具会继续使用其余数据源的数据。工具输出会注明数据有所减少,但不会报错。
使用政府登记册数据进行合规分析是否合法? 所有数据源——FQA Register、NSTA、Environment Agency、NOAA、UK Flood Monitoring、GBIF 和 World Bank——均为公开数据,并采用开放数据政策。将这些数据用于合规研究和报告是合法的。请参阅 Apify 关于网页抓取合法性的指南。
我可以将此服务连接到 Claude Desktop 吗?
可以。将服务 URL(https://maritime-resource-compliance-mcp.apify.actor/mcp)添加到 claude_desktop_config.json,并设置包含 Apify API 令牌的 Authorization 标头。所有 8 个工具都会立即显示在 Claude 的工具列表中。
生成完整的合规报告需要多长时间?
generate_maritime_compliance_report 会并行运行 7 次 Actor 调用。设置 maxResults: 50 时,典型运行耗时为 30–90 秒,具体取决于各数据源 API 的响应时间。将 maxResults: 20 可缩短至 15–40 秒。
我可以将此 MCP 服务与 Cursor 或 Windsurf 搭配,用于环境研究吗?
可以。将 Cursor 或 Windsurf 的 MCP 配置指向 https://maritime-resource-compliance-mcp.apify.actor/mcp,并将 Apify 令牌设为 Bearer 标头。工具会显示在 IDE 的 Agent 工具列表中,可在任何研究对话中调用。
帮助我们改进
如果您遇到问题,可以在 Apify 账户中启用运行共享,帮助我们更快地排查问题:
- 前往 账户设置 > 隐私
- 启用 与公开 Actor 创建者共享运行记录
这样,当出现问题时,我们就能查看您的运行详情,从而更快地修复问题。只有 Actor 开发者可以看到您的数据,公众无法查看。
支持
发现 Bug 或有功能请求?请在此 Actor 页面上的 Issues 标签页中提交问题。如需定制解决方案或企业集成,请通过 Apify 平台联系我们。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。