1. 项目概述:当AI助手学会“尽职调查”
如果你在基金会、企业社会责任部门或合规团队工作,那么“尽职调查”这个词对你来说一定不陌生。它意味着在批准一笔拨款、捐赠或建立合作关系前,你必须完成一系列繁琐但至关重要的核查工作:翻查美国国税局(IRS)的990表格,确认非营利组织的财务状况;在Grants.gov上搜索其过往的联邦资助记录;核对OFAC制裁名单,确保没有法律风险;还要验证其在多个司法管辖区的注册状态。这个过程通常意味着打开七八个浏览器标签页,在不同网站间反复切换、复制粘贴、手动比对,为一个申请者就可能耗费数小时。当面对几十甚至上百个申请时,这项工作就变成了一个吞噬时间和精力的无底洞。
现在,想象一下,你只需要对你的AI助手(比如Claude、Cursor或Windsurf里的AI)说一句话:“帮我筛查一下‘地平线教育基金会’的拨款申请资质。” 不到90秒,一份结构化的尽职调查报告就呈现在你面前,包含了财务健康度、合规风险、组织诚信度和跨司法管辖区验证四个维度的评分,以及一个清晰的“批准”、“有条件批准”、“需加强审查”或“拒绝”的建议。这背后,就是apifyforge/nonprofit-grant-intelligence-mcp这个MCP服务器在发挥作用。
MCP,即模型上下文协议,是让AI助手能够调用外部工具和数据的桥梁。这个由Apify平台托管的MCP服务器,本质上是一个高度自动化的“非营利组织智能尽职调查引擎”。它没有复杂的界面,只有一个API端点,但内部并联了7个权威的公共数据源,并封装了四套独立的评分模型。它把原本需要人工在多平台间完成的碎片化工作,变成了AI助手可以一键调用的标准化服务。对于每天与大量非营利组织打交道的专业人士来说,这不仅仅是效率的提升,更是工作模式的革新——从手动、重复、易错的信息收集,转向基于数据的、可审计的、标准化的决策支持。
2. 核心功能与数据源拆解:七剑合璧,四维评分
这个MCP服务器的核心价值在于其数据源的权威性和分析模型的系统性。它不是简单地抓取网页信息,而是通过Apify平台封装的专用执行器,与官方或权威的公共数据库进行交互,确保数据的准确性和时效性。
2.1 七大权威数据源:你的自动化研究助理
服务器并行调用七个独立的Apify执行器,每个都针对一个特定的数据源进行优化查询。这种并行架构是保证90秒内返回结果的关键。
- ProPublica Nonprofit Explorer (IRS 990数据):这是美国非营利组织财务数据的黄金标准。执行器会抓取目标组织历年提交的990表格,提取总收入、总支出、项目支出、高管薪酬等关键字段。这是计算“非营利组织健康度评分”的基础。
- Grants.gov:美国联邦政府的官方拨款门户。用于搜索该组织历史上申请或获得的联邦拨款机会,了解其与政府项目的互动历史和合规性背景。
- USAspending.gov:追踪联邦资金支出的数据库。比Grants.gov更具体,可以查到该组织实际收到的联邦奖励金额、颁发机构、项目周期等详细信息,是评估“拨款合规风险”的核心。
- UK Charity Commission (英格兰和威尔士):对于在美国以外也有业务或声称在英国注册的组织,此数据源用于验证其在英国慈善委员会的注册状态、收入支出等数据。
- OpenSanctions:一个聚合了全球40多个制裁名单、政治公众人物名单和执法数据库的开源项目。用于筛查组织及其关键人员是否出现在国际制裁或观察名单中。
- OFAC SDN List:美国财政部海外资产控制办公室的“特别指定国民名单”。这是美国制裁体系的权威名单,任何匹配都会触发最严重的风险警报。
- OpenCorporates:全球最大的公司注册信息开放数据库。用于验证组织的法人实体状态(是否存续、是否解散),并探查其关联的复杂公司网络。
这七个数据源覆盖了从财务、合规到诚信度的全方位核查需求,构成了自动化尽职调查的“事实基础”。
2.2 四维评分模型:从数据到洞察
原始数据本身没有意义,关键在于如何解读。该服务器设计了四套独立的评分模型,将原始数据转化为直观的风险信号和分数。
2.2.1 非营利组织健康度评分 (0-100分)这个模型完全基于IRS 990数据,旨在评估组织的财务稳健性和运营效率。
- 项目支出比例 (最高30分):这是衡量慈善组织效率的核心指标。通常认为,将75%以上的支出用于项目执行是“最佳实践”,可以获得满分。低于50%则会被标记为低效信号。
- 收入健康度 (最高25分):采用对数计算(
Math.log10(总收入) * 4),对大额收入给予更高权重,但边际收益递减,这更符合实际影响力评估。 - 财务可持续性 (最高20分):比较支出与收入。如果支出持续超过收入,分数会线性下降,警示潜在的财务不可持续性。
- 收入增长趋势 (最高15分):分析多年收入数据,正向增长会加分。
- 审计发现问题 (扣分项):如果在990表格中发现审计问题,直接扣除15分。这是一个“一票否决”式的严重负面信号。
2.2.2 拨款合规风险指数 (0-100分,分数越高风险越大)基于USAspending数据,评估组织接受联邦资助的历史风险。
- 处罚状态标记:在奖项记录的
status或recipientStatus字段中搜索“debarr”(禁止)、”suspend“(暂停)、”excluded“(排除)等关键词。每发现一个标记,风险分增加15分。 - 奖项集中度风险:计算最大单笔奖项金额占总资助额的比例。过度依赖单一资金来源是风险点,比例越高,额外增加的风险分越多(最高20分)。
2.2.3 组织诚信度风险评分 (0-100分,分数越高风险越大)综合OFAC、OpenSanctions和OpenCorporates的数据,评估法律和声誉风险。
- OFAC匹配:每个匹配项计20分(上限40分)。这是最重要的风险信号,一旦匹配,无论总分如何,最终建议都会是“拒绝”。
- OpenSanctions匹配:每个国际制裁或观察名单匹配项计10分(上限30分)。
- 公司网络复杂性:在OpenCorporates中发现超过5个关联实体后,每多一个实体计3分。过于复杂的结构可能用于隐藏真实控制人。
- 实体状态异常:发现状态为“解散”、“不活跃”或“已注销”的关联实体,每个计5分。
2.2.4 跨司法管辖区验证评分 (0-100分)验证组织声称的运营范围是否属实。
- 美国存在 (30分):在IRS 990中找到记录。
- 英国存在 (25分):在UK Charity Commission中找到记录。
- 国际存在 (最高25分):在OpenCorporates中找到跨国实体记录。
- 多司法管辖区奖励 (最高20分):每验证一个额外的司法管辖区,奖励7分。
2.3 综合建议生成:加权决策与硬性规则
四个维度的分数不会孤立呈现,而是通过一个加权公式合成一个“综合得分”,并产生最终建议。
- 权重分配:组织健康度占25%,合规风险(分数取反)占25%,诚信度风险(分数取反)占30%,跨司法管辖区验证占20%。可以看到,诚信度风险(尤其是制裁风险)被赋予了最高权重。
- 决策逻辑:
- 任何OFAC匹配 → 直接“拒绝”。这是不容妥协的合规底线。
- 综合得分 ≥ 60 → “批准”
- 综合得分在40-59之间 → “有条件批准”
- 综合得分 < 40,或合规风险指数为“高”/“严重” → “需加强审查”
- 行动项生成:报告不仅给出建议,还会根据发现的具体问题生成可操作的“行动项”。例如:“项目支出比例低于50%——请求提供详细的预算分解说明”,或“发现国际制裁匹配——在未获得OFAC许可前不得进行”。
3. 实操指南:从配置到深度使用
理解了原理,接下来就是如何将它用起来。整个过程可以概括为“配置连接、提问、解读结果、集成工作流”四步。
3.1 连接配置:让AI助手获得“超能力”
你需要一个Apify账户(有免费额度)和一款支持MCP协议的AI客户端。配置过程本质上是告诉你的AI客户端:“当你需要做非营利组织尽职调查时,请去找这个服务器。”
3.1.1 在Claude Desktop中配置找到你的claude_desktop_config.json文件(通常在用户目录下),添加如下配置:
{ "mcpServers": { "nonprofit-grant-intelligence": { "url": "https://nonprofit-grant-intelligence-mcp.apify.actor/mcp", "headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" } } } }重启Claude Desktop,你的AI助手就具备了尽职调查能力。
3.1.2 在Cursor/Windsurf中配置在IDE的MCP设置部分,添加类似的服务器配置。之后,在编写代码或分析项目时,你可以直接让AI助手调用相关工具来筛查某个开源基金会或接受捐赠的组织的背景。
3.1.3 直接通过API调用如果你希望将其集成到自己的拨款管理系统或自动化脚本中,可以直接使用HTTP调用。下面是一个Python示例:
import requests import json APIFY_TOKEN = "your_token_here" MCP_ENDPOINT = "https://nonprofit-grant-intelligence-mcp.apify.actor/mcp" def run_due_diligence(org_name): payload = { "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "generate_due_diligence_report", "arguments": {"organization": org_name} }, "id": 1 } headers = { "Content-Type": "application/json", "Authorization": f"Bearer {APIFY_TOKEN}" } response = requests.post(MCP_ENDPOINT, json=payload, headers=headers) result = response.json() # 解析结果 report = json.loads(result['result']['content'][0]['text']) return report # 使用示例 report = run_due_diligence("Pinnacle Community Foundation") print(f"综合建议: {report['recommendation']}") print(f"健康度分数: {report['nonprofitHealth']['score']}")3.2 工具调用策略:七种武器,按需取用
服务器提供了7个独立的工具,每个工具调用一次的费用是$0.045。明智地组合使用它们,可以在控制成本的同时获得最大效益。
| 工具名称 | 核心用途 | 典型使用场景 |
|---|---|---|
assess_nonprofit_health | 快速财务健康度检查 | 大批量申请者初筛,过滤掉财务不健康的组织。 |
verify_grant_compliance | 联邦资助合规性审查 | 评估已获得或正在申请联邦资助的组织的风险。 |
screen_organizational_integrity | 制裁与法律风险筛查 | 对高风险地区项目、大额拨款前的强制检查,或对关键个人(如理事)的筛查。 |
search_grant_opportunities | 寻找拨款机会 | 非营利组织的筹款部门寻找新的联邦资助来源。 |
verify_cross_jurisdiction | 验证组织实体存在 | 确认跨国运营的组织在其声称的地区合法注册。 |
analyze_funding_landscape | 分析领域资助趋势 | 基金会规划资助方向前,了解联邦资金在某个领域(如“早期儿童教育”)的投入情况。 |
generate_due_diligence_report | 生成完整尽职调查报告 | 对进入最终候选名单的少数几个组织进行全方位深度审查。 |
实操心得:成本控制策略面对上百个申请者,对每个都运行generate_due_diligence_report($0.045/次)是一笔不小的开销。一个更经济的策略是:
- 第一轮:财务初筛。对所有申请者运行
assess_nonprofit_health(同样是$0.045/次,但只调用一个数据源,理论上内部成本更低,不过对外价格统一)。设定一个阈值(如健康分低于50),过滤掉一批。 - 第二轮:诚信度筛查。对剩余的申请者运行
screen_organizational_integrity,排除有制裁风险的。 - 第三轮:深度尽调。只对通过前两轮的组织运行完整的
generate_due_diligence_report。 这样,假设100个申请者,经过两轮筛选剩下20个,总成本为:100 * 0.045 + 100 * 0.045 + 20 * 0.045 = $9.9,比对100个都做完整尽调($4.5)只多了一倍成本,但获得了更精细的筛选,且最终深度审查的质量更高。
3.3 结果解读与行动:从数据到决策
拿到一份结构化的JSON报告后,关键是如何解读。以下是一个“有条件批准”案例的深度分析:
{ "organization": "城市青年赋能中心", "compositeScore": 55, "recommendation": "CONDITIONAL", "nonprofitHealth": { "score": 65, "programExpenseRatio": 68.2, "healthLevel": "GOOD", "signals": ["项目支出比例68.2%——接近但未达到75%的最佳实践阈值"] }, "grantCompliance": { "score": 35, "riskLevel": "MODERATE", "signals": ["发现1项与暂停状态相关的合规标记"] }, "integrityScreen": { "score": 0, "riskLevel": "CLEAR", "signals": [] }, "crossJurisdiction": { "score": 85, "verificationLevel": "MULTI_JURISDICTION", "signals": ["在美国和英国均验证存在"] }, "actionItems": [ "请求组织提供解释,说明USAspending记录中‘暂停’状态标记的具体情况和解决进展。", "要求提供未来一年的详细预算,说明如何将项目支出比例提升至75%以上。" ] }解读与后续步骤:
- 看结论:“有条件批准”意味着该组织基本合格,但存在需要澄清或改进的具体问题。
- 挖细节:
- 财务健康度 (65分,良好):项目支出比例68.2%是主要扣分点。这不是一个致命缺陷,但意味着运营效率有提升空间。
- 合规风险 (35分,中等):一个“暂停”标记是主要风险信号。这需要高度关注,必须向组织索取官方文件解释(如已解除暂停的证明)。
- 诚信度 (0分,清晰):无制裁风险,这是好消息。
- 跨司法管辖区 (85分,优秀):在美英均有实体,验证了其声称的跨国运营能力。
- 跟进行动项:报告自动生成了两个明确的行动项。拨款官员应据此向“城市青年赋能中心”发出问询函,要求其提供:
- 针对USAspending中“暂停”状态的解释信及支持文件。
- 一份旨在提高项目支出比例的具体预算优化方案。 只有在收到满意答复并验证后,才能将状态转为“批准”。
注意:报告中的“信号”和“行动项”是决策的黄金线索。它们直接指出了需要人工介入审查的具体问题点,将模糊的“感觉有风险”转变为清晰的“需要核实A和B”。
4. 高级应用与集成:构建自动化工作流
这个MCP服务器的真正威力在于其可编程性和可集成性。它不仅仅是一个手动查询工具,更可以成为你自动化工作流的核心组件。
4.1 与自动化平台集成
场景:自动化的拨款申请初审流水线你的基金会有一个公开的在线申请表单。每当有新申请提交时,你想自动触发初步尽职调查。
使用Zapier/Make:
- 申请表单(如Google Forms, Airtable)收到新记录。
- Zapier/Make捕获新记录,提取“组织名称”字段。
- 通过Apify API触发
generate_due_diligence_report(或按成本策略先触发assess_nonprofit_health)。 - 将返回的JSON报告(特别是
recommendation和compositeScore)写回申请记录的一个新字段。 - 根据
recommendation值自动路由:APPROVE或CONDITIONAL→ 创建任务,分配给项目官员进行人工复审。ENHANCED_REVIEW→ 创建任务,分配给高级项目官员或合规专员。DECLINE→ 自动发送一封礼貌的拒绝邮件,并附上简要原因(如“经初步筛查,发现潜在的合规问题”)。
使用Webhook直接监听: 你可以在Apify Actor的设置中配置Webhook。当
screen_organizational_integrity工具返回的风险等级为ELEVATED或CRITICAL时,自动向一个Slack频道或合规团队的邮箱发送警报,实现实时风险监控。
4.2 与数据分析和BI工具结合
场景:生成资助组合风险仪表盘你管理着一个有200个受资助机构的组合。你需要定期监控整体风险状况。
- 定期数据抓取:使用Apify的调度功能,每月自动对200个受资助机构运行
assess_nonprofit_health和screen_organizational_integrity。将结果JSON保存到数据库(如PostgreSQL)或数据仓库(如BigQuery)。 - 可视化分析:用Metabase、Tableau或Looker连接数据库,创建仪表盘。
- 面板1:显示健康度分数分布图,快速发现分数骤降的机构。
- 面板2:按领域显示平均合规风险指数,识别高风险领域。
- 面板3:列出所有诚信度风险分数大于0的机构,形成“观察名单”。
- 主动预警:设置仪表盘警报,当某个机构的健康度分数月度下降超过15分时,自动向负责的项目经理发送通知。
4.3 扩展尽职调查维度
MCP服务器提供了核心的财务、合规、诚信度数据,但有时你需要更立体的画像。这时可以结合其他Apify执行器。
- 结合“公司深度研究”执行器:当
screen_organizational_integrity发现关联公司网络复杂时,可以自动触发对关键关联公司的深度研究,挖掘新闻、诉讼历史等。 - 结合“网站联系人抓取”执行器:在尽职调查前,自动从该非营利组织官网抓取理事会成员、高管名单,然后将其作为输入,批量运行
screen_organizational_integrity(该工具支持输入个人姓名),实现对关键个人的筛查。 - 结合“Trustpilot评论分析”执行器:对于运营具体服务项目(如收容所、培训学校)的非营利组织,可以分析其服务受益者在评价网站上的反馈,作为财务数据之外的项目影响力补充参考。
5. 常见问题、局限与避坑指南
即使工具强大,理解其边界和常见陷阱也能让你用得更顺手、更准确。
5.1 数据时效性与覆盖范围
- IRS 990数据滞后:这是最大的局限。非营利组织在财年结束后有11个月的时间提交990表格,而ProPublica抓取和发布还有延迟。因此,你看到的财务数据可能比实际情况晚18-24个月。对于快速成长或陷入困境的组织,这份数据可能是“过去的美好”或“尚未反映的危机”。应对策略:对于重大拨款,务必要求对方提供最新经审计的财务报表作为补充。
- 无990-N数据:年收入低于5万美元的组织只需提交简单的990-N(电子明信片),不含财务细节。对这些组织,健康度评分会很低或无法计算。应对策略:不要仅凭低分拒绝小型社区组织,应结合其项目计划书、预算和过往成果进行综合评估。
- 英国慈善数据不完整:目前只覆盖英格兰和威尔士慈善委员会,不包括苏格兰和北爱尔兰。应对策略:如果组织声称在苏格兰注册,需要手动核查OSCR网站。
- 制裁匹配基于名称:OFAC和OpenSanctions的匹配是模糊名称匹配,可能存在误报(尤其是常见名称)。应对策略:对于任何匹配,必须点开查看详情,核对别名、地址、出生日期等确认信息,切勿仅凭匹配结果就下结论。
5.2 技术执行与成本控制
- 响应超时:7个数据源并行查询,理想情况下90秒内返回。但如果某个外部源(如OpenCorporates)响应慢,整个报告可能会延迟。服务器采用
Promise.allSettled,不会因单个超时而失败,但超时的数据源将不贡献数据。应对策略:如果某个关键维度(如健康度)数据为空,可以单独重试该工具(如assess_nonprofit_health)。 - 名称歧义:“美国红十字会”这样的名称可能匹配到多个地方分会,导致数据混乱。应对策略:尽可能使用EIN(雇主识别号)进行查询,这是唯一标识符。如果只有名称,尝试加上城市和州缩写(如“American Red Cross of Chicago IL”)。
- 成本控制:每次工具调用$0.045,看似不高,但批量处理时仍需规划。应对策略:
- 充分利用Apify的免费额度(每月$5,约110次调用)。
- 如前所述,采用分层筛查策略。
- 在Apify Actor设置中,为每次运行设定“消费上限”,防止意外超支。
- 对于定期监控,使用Apify的“调度”功能,在非高峰时段(如夜间)运行任务,可能更稳定且不影响白天使用。
5.3 决策辅助与人工判断
- 工具是辅助,而非替代:这个服务器提供的是基于公开数据的标准化分析。它无法替代项目官员的实地考察、与申请者的深入访谈、对项目逻辑和影响力的专业判断。应对策略:将工具的输出视为“决策支持报告”,而非“自动决策”。其价值在于快速排除高风险对象、发现需要深入调查的疑点,从而让人类专家将宝贵时间集中在最需要判断力的环节。
- 理解评分模型的假设:模型的权重和计分规则是基于一般性最佳实践设定的。例如,项目支出比例75%是通用标准,但对于一些初创期或基础设施投入大的组织(如建设社区中心),初期比例低可能是合理的。应对策略:对于模型给出的“低分”或“风险信号”,要将其作为对话的起点,而非终点。询问组织:“我们的模型显示你们的项目支出比例是65%,低于我们通常期望的75%,能否解释一下原因?”
6. 实战案例:模拟一个完整的拨款周期
让我们跟随“社区创新基金会”的项目官员小李,看他如何在一个季度拨款周期中运用这个工具。
第一周:机会发布与申请收集基金会在官网发布了“数字素养提升”领域的拨款机会,收到85份意向书。
第二周:初步筛选(成本:约$7.65)小李不打算对85份都做深度尽调。他:
- 编写一个简单的脚本,从申请数据库中提取85个组织名称。
- 批量调用
assess_nonprofit_health工具(85 * $0.045 = $3.825),设定健康度分数>50为第一轮门槛。淘汰了30个财务表现不佳的组织。 - 对剩余的55个组织,批量调用
screen_organizational_integrity(55 * $0.045 = $2.475),淘汰了5个有潜在诚信风险的组织。 现在,候选池剩下50个组织,总筛选成本$6.3。
第三周:深度尽职调查(成本:$2.25)小李对50个候选组织运行generate_due_diligence_report(50 * $0.045 = $2.25)。报告自动生成。
- 15个组织获得“批准”建议。
- 25个组织获得“有条件批准”,报告列出了具体的行动项(如要求提供额外预算文件、解释某项合规标记)。
- 8个组织建议“需加强审查”,主要因合规风险高或跨司法管辖区验证失败。
- 2个组织因OFAC匹配被直接“拒绝”。
第四周:人工评审与决策小李将50份报告导入内部评审系统。
- 对于“批准”的15个,项目团队快速复核后,进入最终评审会。
- 对于“有条件批准”的25个,小李根据报告中的行动项,统一发出问询邮件。收到18份满意回复的组织升入“批准”池,7份未回复或解释不清的降级。
- 对于“需加强审查”的8个,小李和合规专员进行电话访谈和文件核查,最终通过了3个,拒绝了5个。
- “拒绝”的2个,直接归档并记录原因。
结果:小李在不到一个月内,用不到$10的成本,完成了对85个申请者的初步筛查和50个的深度尽调,并将大量机械的信息搜集和核对工作自动化。他将节省下来的数十个小时,用于与潜在资助对象进行更有价值的战略对话和项目设计讨论。
这个案例展示了工具如何融入现实工作流:它不是要取代人类专家,而是将专家从信息苦力中解放出来,聚焦于更高价值的判断、关系和战略工作。在公益资源日益珍贵、问责要求不断提高的今天,这种“智能尽职调查”的能力,正从一个“锦上添花”的选项,迅速变为追求效率和卓越的基金会的“标准配置”。