mcpField
F
firmfind

firmfind

本地服务
github.com/CloudCorpRecords商业与营销01 周前更新

关于 firmfind

firmfind 是 CompanyData 服务的客户端,用于在官方企业登记系统中查找公司并获取记录。它支持细致的公司筛选、按 ID 导出完整记录和查询城市建议,并原样返回服务响应。

主要功能

  1. 01使用详细条件搜索公司
  2. 02按 ID 导出完整公司记录
  3. 03根据地点名称查找城市建议
  4. 04原样传递服务响应

适用场景

  1. 01按地点和行业查找公司
  2. 02筛选具有特定联系方式的记录
  3. 03获取公司的完整登记条目
  4. 04搜索前解析不完整的城市名称

MCP 相关

向 MCP 客户端提供三个基于 CompanyData 的工具:公司搜索、完整记录导出和城市查询。请求需要 CompanyData API 密钥。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-firmfind": {
"command": "npx",
"args": [
"-y",
"@reneturcios/firmfind"
]
}
}
}
启动命令npx -y @reneturcios/firmfind

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/firmfind0.1.0
ocighcr.io/cloudcorprecords/firmfind:0.1.0

工具

3

收录的工具列表 · 更新于 1 周前

参数类型必填说明
IDstring否此调用的标识符。
pageinteger否分页结果的页码(可选)。
emailstring否电子邮件地址。
searchstring否搜索文本筛选条件(可选)。
websitestring否网站 URL(可选)。
cityNamestring否此调用的城市名称。
hasEmailboolean否筛选包含电子邮件地址的记录(可选)。
hasPhoneboolean否筛选包含电话号码的记录(可选)。
pageSizeinteger否此调用的页大小。
hasCEONameboolean否筛选包含 CEO 姓名的记录(可选)。
hasWebsiteboolean否筛选包含网站的记录(可选)。
nationalIdstring否国家 ID 值(可选)。
postalCodestring否此调用的邮政编码。
regionNamestring否此调用的地区名称。
sic4Digitsstring否此调用的 SIC 4 位数字。
statusCodestring否此调用的状态码。
streetNamestring否此调用的街道名称。
countryCodestring否此调用的国家/地区代码。
countryNamestring否此调用的国家/地区名称。
legalStatusstring否此调用的法律状态。
phoneNumberstring否电话号码(可选)。
provinceNamestring否此调用的省份名称。
hasNationalIDboolean否筛选具有国家/地区 ID 的记录(可选)。
strictCountryboolean否要求严格匹配国家/地区(可选)。
annualSalesMaxinteger否此调用的年销售额上限。
annualSalesMininteger否此调用的年销售额下限。
subsidiaryCodestring否此调用的子公司代码。
employeesHereMaxinteger否此调用的本地员工人数上限。
employeesHereMininteger否此调用的本地员工人数下限。
foundingYearsMaxinteger否此调用的成立年限上限。
foundingYearsMininteger否此调用的成立年限下限。
hasMarketabilityboolean否筛选可营销的记录(可选)。
importExportCodestring否此调用的进出口代码。
employeesTotalMaxinteger否此调用的员工总人数上限。
employeesTotalMininteger否此调用的员工总人数下限。
postalCodeIntegerMaxinteger否此调用的邮政编码整数最大值。
postalCodeIntegerMininteger否此调用的邮政编码整数最小值。
worldwideHeadquarterIDstring否此调用的全球总部标识符。

详细介绍

firmfind

在官方商业登记册中查找公司,然后获取目标公司的完整记录。firmfind 是 CompanyData 服务的轻量客户端:可按名称、地点、行业代码、公司规模、成立年限,以及记录是否包含电子邮件地址、电话号码、网站或具名 CEO 搜索登记信息;按 ID 导出单家公司的完整条目;也可将模糊记得的地名解析为城市建议,再用它进行搜索。

服务返回的内容会原样返回——整个过程中不会进行删减、重命名或摘要。

配置

  • COMPANYDATA_API_KEY(必需)——每次请求都会通过 x-api-key 标头发送。未设置时,所有工具都会报错 COMPANYDATA_API_KEY is not set,且不会发出请求。
  • COMPANYDATA_API_BASE_URL(可选)——API 基础 URL。默认为 https://app.companydata.com。

工具

  • company_search — 按名称、地点、行业、规模和联系信息筛选条件搜索公司。38 个参数均为可选:分页(page、pageSize)、身份标识和文本筛选条件(ID、search、sic4Digits、importExportCode、legalStatus、statusCode、subsidiaryCode、countryCode、provinceName、cityName、streetName、regionName、countryName、postalCode、phoneNumber、email、worldwideHeadquarterID、nationalId、website)、数值范围(postalCodeIntegerMin/Max、employeesHereMin/Max、employeesTotalMin/Max、annualSalesMin/Max、foundingYearsMin/Max)和存在性标志(hasEmail、hasMarketability、hasPhone、hasWebsite、hasNationalID、hasCEOName、strictCountry)。只会发送实际设置的参数;布尔值会以 true/false 的形式发送,范围边界使用 API 带方括号的传输名称,例如 employeesHere[min]。
  • company_enrich — 按 CompanyData ID(必需)导出一家公司的完整记录。此调用始终会向导出端点请求记录的导出格式。
  • field_lookup — 根据地点名称 search(必需)获取城市建议,可选用 countries 缩小范围,并用 limit 限制结果数量。

上游返回非 2xx 响应时会报错 companydata error: HTTP <status>;API 无法访问时会报错 companydata unreachable。

端点来源

工具接口、密钥环境变量和标头、默认基础 URL 及补全行为由原始软件包的 README 确定;参数名称、类型和传输名称由官方 OpenAPI 文档确定:

  • GET <base>/api/company/search?<params> — company_search。
  • GET <base>/api/company/export?ID=<id>&export=true — company_enrich。
  • GET <base>/api/cities?<params> — field_lookup。

CLI

每个工具都是一个子命令,接受一个 JSON 参数字符串:

npx @reneturcios/firmfind company_search '{"search":"bakery","countryCode":"NL","hasEmail":true}'
npx @reneturcios/firmfind company_enrich '{"ID":"abc-123"}'
npx @reneturcios/firmfind field_lookup '{"search":"amster","countries":"NL","limit":5}'
npx @reneturcios/firmfind --version

输出为工具的结果文本(成功时为上游响应正文)。退出代码:成功时为 0,运行时错误(包括缺少密钥或上游故障)时为 1,用法错误时为 2。

MCP 服务

npx -y @reneturcios/firmfind mcp

MCP 客户端配置:

{
  "mcpServers": {
    "firmfind": {
      "command": "npx",
      "args": ["-y", "@reneturcios/firmfind", "mcp"],
      "env": {
        "COMPANYDATA_API_KEY": "<your key>"
      }
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/firmfind
docker run --rm ghcr.io/cloudcorprecords/firmfind company_search '{"search":"bakery"}'

开发

npm install
npm run build   # tsc -> dist/
npm test        # tsx --test test/*.test.ts (fake fetch only, no network)
npm run dev     # run the CLI from source

许可证

MIT — 版权所有 (c) 2026 Rene Turcios

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。