fdp-mcp-server
中文说明:README-zh_CN.md.
QiAnXin XLab提供MCP工具,用于访问基础网络安全数据。
关于XLab
XLab是QiAnXin旗下的一个研究团队,致力于大规模网络安全研究、威胁分析和归因,以及多维安全数据平台的构建。
XLab是中国最早利用大规模数据进行网络安全研究、安全应用和威胁情报生成的团队之一。它建立了该国第一个PassiveDNS系统,以及几个行业领先的基础数据系统,涵盖NetFlow、Whois、数字证书、IP和恶意软件样本。
工具类别
fdp-mcp服务器提供多种类型的工具。用户可以根据自己的需求选择特定的URL来加载相应的工具。
当前可用的工具集:
- 网络安全基础数据查询\
网址:https://fdp.qianxin.com/mcp/v1/basic/mcp/\ 包括: - 弗林特rrset:查询特定域名和记录类型的资源记录集(RRsets) - 弗林特rdata:反向查找DNS响应rrset记录 - 谁的历史:检索域名或IP地址的注册历史 - certdb域:按域名查询证书数据 - 控制反转:搜索XLab的IOC(妥协指标)数据库
- 域相关数据查询\
网址:https://fdp.qianxin.com/mcp/v1/domain/mcp/\ 包括: - 陪域:检索共同出现的域及其相关标签 - float_fqdn:基于PassiveDNS数据的域名流行度排名 - webdb:检索与域关联的网页内容 - 天秤座:从XLab的Libra平台访问域名分析数据
- IP相关数据查询\
网址:https://fdp.qianxin.com/mcp/v1/ip/mcp/\ 包括: - ip_geo:查找IPv4地理位置、ASN和IP所有权
- 样本相关数据查询\
网址:https://fdp.qianxin.com/mcp/v1/sample/mcp/\ 包括: - 沙盒:检索样本的汇总网络行为
执行方法
概述
- 此应用程序充当代理,将远程MCP工具调用转换为基于本地Stdio的交互。因此,工具可以在本地使用,也可以通过其URL直接访问远程MCP服务器。
- 远程MCP服务器目前仅支持 可流式传输HTTP 访问。
- 这个工具集是 试用版 用于基本用途。在高并发性下,后端可能会限制访问频率。对于生产或高频场景,请使用官方版本。
- 对于官方访问,请使用相应的工具URL并包含两个HTTP标头:
fdp-access和fdp-secret.
- 如需获取证书,请联系QiAnXin XLab。
- 以下示例基于
Basic Network Security Data Query工具。
试用版使用
从源代码本地运行
- 克隆存储库。
- 使用uv运行和配置Claude Desktop:
{
"mcpServers": {
"fdp-mcp-server": {
"command": "uv",
"args": [
"run",
"--project",
"/PATH/TO/fdp-mcp-server",
"fdp-mcp-server",
"--url",
"https://fdp.qianxin.com/mcp/v1/basic/mcp/"
]
}
}
}使用Docker运行
- 克隆存储库。
- 构建Docker镜像:
docker build . fdp-mcp-server:vxx.xx.xx - 配置Claude桌面:
{
"mcpServers": {
"fdp-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"fdp-mcp-server:vxx.xx.xx"
]
}
}
}通过PyPI包运行
- 使用uvx并按如下方式配置Claude Desktop:
{
"mcpServers": {
"fdp-mcp-server": {
"command": "uvx",
"args": [
"fdp-mcp-server",
"--url",
"https://fdp.qianxin.com/mcp/v1/basic/mcp/"
]
}
}
}官方版本使用
如果要从智能代理应用程序中调用fdp-mcp服务器工具,可以在客户端配置远程mcp服务器URL,并包含所需的HTTP标头 fdp-access 和 fdp-secret.
- 编写代理代码时,在调用MCP工具时添加标头。使用烟雾剂的示例:
from smolagents import ToolCollection
from smolagents.agents import ToolCallingAgent
from smolagents.models import OpenAIServerModel
def main():
with ToolCollection.from_mcp(
{
"url": "https://fdp.qianxin.com/mcp/v1/domain/mcp/",
"transport": "streamable-http",
"headers": {
"fdp-access": "xxxx",
"fdp-secret": "yyyy",
},
},
trust_remote_code=True,
) as tools:
agent = ToolCallingAgent(
tools=[*tools.tools],
model=OpenAIServerModel(
model_id="YOUR-LLM-MODEL-ID",
api_base="YOUR-LLM-MODEL-API-URL",
api_key="YOUR-LLM-MODEL-API-KEY",
),
)
agent.run("Query the domains associated with www.example.com and assess its likely business purpose based on the associated data.")
if __name__ == "__main__":
main()- 如果使用Claude Desktop,您可以使用mcp远程库进行代理转发,并在此过程中配置HTTP标头:
{
"mcpServers": {
"fdp_domain": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://fdp.qianxin.com/mcp/v1/domain/mcp/",
"--header",
"fdp-access:xxxx",
"--header",
"fdp-secret:yyyy"
],
}
}
}