Fing本地API服务器

MCP服务器,用于将Fing网络设备和存在数据通过HTTP、可流式HTTP和SSE暴露给MCP客户端。

  • by Heartran
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Heartran/fing-mcp-server

使用说明

fingmcp服务器

Fing本地API的MCP服务器。它暴露了Fing网络设备和存在 使用Streamable HTTP和SSE通过HTTP将数据传输到MCP客户端。

此服务器设计为在 PC-FEDERICO,其中Fing Agent暴露 上的本地API http://localhost:49090 并将其认证令牌存储在:

%APPDATA%\FingAgent\conf\localapi\fingagent.json

它在我的机器上是如何工作的

启动服务器时:

  1. 从读取Fing本地API配置 %APPDATA%\FingAgent\conf\localapi\fingagent.json
  2. 提取真实 port 和 auth 价值观
  3. 直接调用本地API端点:
    • /devices?auth=...
    • /people?auth=...

在Windows上,它使用 curl.exe 作为本地交通工具,因为Fing Agent返回 接受的HTTP响应 curl.exe 但可能会破坏Node的原生HTTP 客户端解析。

需求

  • Node.js 18+
  • Fing Desktop或Fing Agent在同一台计算机上运行
  • Fing本地API已启用

设置

npm install
npm run build
npm start

如果服务器启动于 PC-FEDERICO,不需要手动设置API密钥 只要Fing代理已经配置并且本地API文件存在。

环境变量

变量 默认值 描述
FING_LOCALAPI_AUTH auto-discovered 显式Fing本地API身份验证令牌
FING_API_KEY 别名 FING_LOCALAPI_AUTH 向后兼容的身份验证令牌env var
FING_LOCALAPI_PORT 自动发现或 49090 覆盖本地API端口
FING_BASE_URL 自动发现或 http://localhost:49090 覆盖Fing本地API基础URL
FING_LOCALAPI_CONFIG %APPDATA%\FingAgent\conf\localapi\fingagent.json 覆盖Fing本地API配置文件路径
PORT 3010 此MCP服务器使用的端口

笔记:

  • 旧的 /1 上的Fing代理本地API未使用后缀 PC-FEDERICO.
  • 如果同时存在env变量和本地配置,则env变量获胜。

在开发中运行

npm run dev

端点

  • GET /mcp SSE端点 mcp-remote
  • POST /mcp/message SSE消息端点 mcp-remote
  • POST /mcp 本机流式HTTP MCP端点
  • GET /health 健康检查

MCP工具

fing_get_devices

返回Fing Agent发现的设备。

论据:

  • filter_state: UP | DOWN | ALL
  • response_format: text | json

fing_get_people

返回在Fing中配置的人员的状态信息。

论据:

  • filter_state: ONLINE | OFFLINE | ALL
  • response_format: text | json

克劳德桌面/mcp遥控器

示例 claude_desktop_config.json 条目:

{
  "mcpServers": {
    "fing": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "mcp-remote",
        "http://PC-FEDERICO:3010/mcp"
      ]
    }
  }
}

如果通过Tailscale或其他远程网络暴露服务器,请更换 具有可访问IP或DNS名称的主机 PC-FEDERICO.

故障排除

  • Unauthorized: invalid Fing local API auth token 本地API身份验证令牌错误或已过期。
  • Fing agent service is unavailable Fing Desktop或Fing Agent未运行。
  • curl.exe is required on Windows 服务器在没有内置curl可执行文件的Windows上运行 可用 PATH.

许可证

MIT。看 许可证.