关于 Amf Filings
Amf Filings 是面向金融分析和监测流程的 MCP 服务,可查询法国 AMF 发布的公司披露并获取单条记录。它直接查询 Info-financière 主数据源,支持按日期窗口检索市场范围内的最新披露。
主要功能
- 01按公司、ISIN 或日期搜索披露
- 02获取单条披露记录
- 03支持日期窗口和分页
- 04按语言筛选披露版本
适用场景
- 01每日汇总市场披露
- 02查找指定发行人的公告
- 03检索某一天发布的披露
MCP 相关
向 MCP 客户端提供披露搜索和单条记录获取工具。可通过 Pipeworx 网关连接,也可作为本地 stdio MCP 服务运行。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/amf-filings/mcpclaude mcp add --transport http pipeworx-io-amf-filings https://gateway.pipeworx.io/amf-filings/mcp{"mcpServers":{"pipeworx-io-amf-filings":{"type":"http","url":"https://gateway.pipeworx.io/amf-filings/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-amf-filings":{"type":"http","url":"https://gateway.pipeworx.io/amf-filings/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-amf-filings":{"type":"http","url":"https://gateway.pipeworx.io/amf-filings/mcp"}}}{"mcpServers":{"pipeworx-io-amf-filings":{"serverUrl":"https://gateway.pipeworx.io/amf-filings/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
43| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| q | string | 否 | question 的别名。 |
| ask | string | 否 | question 的别名。 |
| text | string | 否 | question 的别名。 |
| input | string | 否 | question 的别名。 |
| packs | array | 否 | 可选。将路由限制为这些包的 slug(例如 ["sec-form-d","sec-13f"]),路由器随后只会从这些包中的工具进行选择。省略则使用默认的完整目录路由。Slug 可从 list_packs / search_packs / https://pipeworx.io/directory 获取;未列出或未知的 slug 会被忽略,并在 _meta.pack_scope.ignored 中列出。如果没有任何 slug 能匹配问题,则会在整个目录中路由,并设置 _meta.pack_scope.full_catalog:true(绝不会返回空答案)。 |
| query | string | 否 | question 的别名。 |
| prompt | string | 否 | question 的别名。 |
| message | string | 否 | question 的别名。 |
| question | string | 是 | 用自然语言表达的问题或请求。支持 query、q、prompt、text、input、ask、message 作为别名。 |
详细介绍
@pipeworx/amf-filings
来自 Info-financière(法国官方指定机制,OAM)的法国 AMF 监管公司披露信息(业绩、持股比例越线、内幕信息、股票回购等)——随 AMF 发布而更新,不会像社区 ESEF 索引那样延迟数月。
属于 Pipeworx — 一个将 AI Agent 连接到 1872+ 个实时数据源的 MCP 网关。这是一个独立、非官方的集成——与上游提供方无关联、未获其认可,也非由其发布。
工具
amf_search_filings(company?, isin?, lei?, date_from?, date_to?, language?, limit?, offset?)— 按发行方(优先使用 ISIN;LEI 通常为 null;也可使用自由文本名称)和/或发布日期范围搜索披露信息。date_to为包含当天(即包含您希望纳入的最后一天)——若要查询单日,请将date_from和date_to设为同一天。结果按时间从新到旧返回。amf_get_filing(id)— 根据 Info-financière 记录 ID(uin_idt_uin)获取一条披露信息,该 ID 由amf_search_filings返回。
为什么要做这个工具包
esef-filings 代理的是 filings.xbrl.org,这是一个社区索引,对法国发行方的当年覆盖实际上为零——一位具名的外部开发者(正在评估我们是否适用于每周股票分析工作流)直接遇到了这个问题,并因此拒绝了该工具包。在本工具包推出前,于 2026-09-23 进行的实时测量:
法国,ESEF 索引(filings.xbrl.org): 2023:~正常 2024:~正常 2025:接近零
本工具包直接访问主要来源,而非聚合器。新鲜度测量,2026-09-23:数据集中的最新记录,其时间戳比找到它的查询早约 1 分钟。date_from/date_to 设为“昨天到今天”的范围,可稳定返回当天的披露信息——已通过对已部署网关的实时调用验证(具体使用的参数见 workers/gateway/src/tool-examples.json)。
每天调用一次,而非每家发行方调用一次
company、isin 和 lei 都是可选参数。完全省略它们,仅传入 date_from/date_to,即可通过一次调用获取该时间范围内所有发行方的披露信息(只有当单日全市场数量超过 100 条上限时,才需使用 limit/offset 分页)——已于 2026-10-19 通过实时调用验证。一位每天检查约 155 家发行方的设计合作伙伴,原本却是每家发行方调用一次,在约 35 次调用后就耗尽了每次调用 50 个额度的配额(fleet #3300);使用日期范围调用是进行此类检查的低成本方式。
⚠️ 调用方必须了解的六件事
- 这是文档索引,不是 XBRL 事实 API。 每一行都是一条披露事件:标题、发行方、发布时间戳,以及指向底层 PDF(偶尔是 ESEF/XBRL 软件包)的链接。这里不提取单项事实——无法查询“给我 2025 财年的净收入”。构建此数据包时,尚未验证这些相同发行方是否能通过此 OAM 获取
filings.xbrl.org格式的结构化事实;请将其视为一个独立的未决问题,而非此数据包的承诺。 - LEI 经常为空。
identificationsociete_iso_cd_lei在许多行中都有值,但并非全部都有。ISIN(identificationsociete_iso_cd_isi)可靠得多——请优先将其用作连接键。不要针对这个数据包构建仅依赖 LEI 的管道;LEI 未匹配不代表“没有申报文件”。 - 范围不限于注册地在法国的发行方。 此信息流包含通过法国传播方披露信息的任何发行方——包括法国集团旗下注册地不在法国的子公司(例如注册地在加蓬的 TotalEnergies EP Gabon)。
country反映 AMF 记录中发行方自身的注册国家/地区,并非默认值“法国”。 company匹配的是法定名称,而非商标名称——但会自动回退。 AMF 按发行方的注册法定名称存储记录(例如“TELEVISION FRANCAISE 1”),而search()基于词元搜索,不是子串搜索,因此像company: "TF1"这样的商标名称查询会匹配到零行,即使同一时间范围内确实存在 38 条记录(2026-10-19 实时验证,fleet #3300)。当按法定名称搜索无结果时,amf_search_filings现在会重试搜索披露标题;如果因此找到结果,响应会包含matched_via: "title"和company_resolved(实际法定名称)——如果有 ISIN,请传入它以完全跳过回退搜索。subtype_of_information会规范化为真正的null。 一些传播方(尤其是 307,最后一次检查时有 9,519 行)会发送字面字符串"NULL",而非实际的 null。此数据包会在返回前将任何大小写形式的"null"字符串转换为真正的 null。date_to包含该 UTC 日期的整天。 要检查单日,请将date_from和date_to设为同一天;此数据包会在内部处理上游自身的排他边界(查询比该日期晚一个日历日),并回显实际发送的边界upstream_date_to_exclusive。过去并非如此:同日范围(date_from=date_to="2026-10-16")会静默返回零行,尽管实际存在 61 行,因为上游边界被直接作为排他边界传递——此问题已于 2026-10-20 修复(一位付费客户在对每个发行方进行单日 ESEF 检查时直接遇到了此问题)。现在,如果date_from晚于date_to,会返回empty_reason: "empty_window"和说明性message,而不是仅返回零条结果。
双语发行方会将同一条披露分别以法语和英语提交为两行(各有自己的 id),发布时间相差不到一分钟——amf_search_filings 不会合并这些行;请传入 language 以选择一个版本,或在客户端按返回的 language_pair_key(公司 + 类型/子类型 + 发布时间分钟)对结果分组。
身份验证
无需密钥。无需账户或 API 密钥。
数据源
- https://www.info-financiere.gouv.fr/api/explore/v2.1/catalog/datasets/flux-amf-new-prod/records
— Opendatasoft Explore v2.1 记录 API,
flux-amf-new-prod数据集 (撰写本文时有 500,000 多条记录)。这是 AMF 的主要披露信息流,并非其镜像或缓存——Pipeworx 每次调用都会实时查询该信息流。
注意事项
- 历史域名
www.info-financiere.fr会将每个请求通过 301 重定向到www.info-financiere.gouv.fr——本工具包直接调用.gouv.fr主机, 以节省一次往返。 - 上游 API 将
limit上限设为 100(-1 <= limit <= 100);更高的值会返回 400 错误,而不是静默截断。本工具包会在发送请求前将其截断至 100, 并在响应中通过limit_clamped_from报告原始值,因此截断不会静默发生。 - 对
uin_dat_amf(申报时间戳)使用的 ODSQLwhere子句确实有效——已通过 当日排除测试进行实时验证——这与同类esef-filings的日期筛选错误不同, 本工具包正是为避免重蹈该错误而编写的。 - 对公司名称字段调用
search()会进行宽松的词元匹配(符合 ODSQL 语义),而不是精确名称筛选——查询某个发行方时,可能会出现名称相似的 关联实体(例如子公司)。如果有isin,请优先使用。
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"amf-filings": {
"url": "https://gateway.pipeworx.io/amf-filings/mcp"
}
}
}
此端点实际提供的内容
https://gateway.pipeworx.io/amf-filings/mcp 上的 tools/list 会返回上表中的工具,
以及 Pipeworx 共享元工具——ask_pipeworx、
discover_tools、search_within、remember/recall,以及网关范围内的
其他工具。因此,你看到的工具数量会多于此表所列:目前,单工具包端点会列出
约 30 个共享工具,以及该工具包自身的工具。连接的 initialize 响应会说明其确切范围,
并且是当天适用的权威说明。
这是有意为之,并非意外的多路复用。元工具让受限连接能够回答本工具包未涵盖的问题——
通过 ask_pipeworx 跨整个目录路由——无需添加第二个 MCP 服务。目前无法挂载不含这些
元工具的工具包端点;如果额外的架构信息占用的上下文比路由带来的价值更多,
请连接一次完整网关,而不是连接多个工具包端点。
或者连接完整的 Pipeworx 网关,以直接列出每个工具包的工具, 而不只是此工具包的工具:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
两个 URL 都连接到同一个网关和相同的 1872+ 个数据源。唯一的区别是
直接列出哪个工具包的工具;无论连接哪一个,ask_pipeworx
都可以访问所有工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/amf_search_filings \
-H 'Content-Type: application/json' \
-d '{"isin":"FR0013230950","limit":3}'
首次调用无需账户。检查任意工具:GET https://gateway.pipeworx.io/v1/tools/amf_search_filings。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。
独立运行(无需网关账户)
此软件包也可以作为本地 stdio MCP 服务运行——无需 Pipeworx 账户,也无需 经过网关:
{
"mcpServers": {
"amf-filings": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-amf-filings"]
}
}
}
或者直接运行以确认它能启动:
npx -y @pipeworx/mcp-amf-filings
它通过 stdin/stdout 使用 MCP,并为仅限此工具包的工具响应 initialize/tools/list/tools/call——不包含上述网关连接所添加的任何共享元工具。源代码相同,工具相同,不提供 ask_pipeworx 路由。
使用 ask_pipeworx
你也可以用日常语言提问,而不必直接调用工具——此方式既适用于上面的工具包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Amf Filings data" })
网关会选择合适的工具并自动填入参数。
更多信息
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。