项目简介
Adfin MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在桥接 Claude Desktop 等 LLM 客户端与 Adfin 服务以及本地文件系统。它允许用户通过自然语言指令,让 Claude 调用 Adfin 的各项 API 功能(如发票管理、客户信息查询等),并访问本地文件系统,极大地扩展了 Claude 的应用场景。
主要功能点
- Adfin API 集成: 通过工具 (Tools) 的形式,将 Adfin 平台的各种 API 接口(例如发票上传、获取客户信息等)暴露给 Claude Desktop,用户可以直接通过自然语言指令调用这些 API,实现与 Adfin 系统的交互。API 工具是动态加载的,每次启动服务器都会拉取最新的 Adfin API 文档并注册为工具。
- 本地文件系统访问: 提供了一系列工具,允许 Claude Desktop 访问和操作运行服务器主机的本地文件系统,例如获取当前工作目录、列出目录文件、搜索文件等。
- 可扩展的工具注册: 服务器架构允许方便地添加和扩展新的工具,无论是 Adfin API 还是其他外部功能,都可以通过定义新的工具函数并注册到 MCP 服务器中。
- 基于 FastMCP 框架: 使用 'fastmcp' 库构建,简化了 MCP 服务器的开发和部署。
- 标准 MCP 协议: 遵循 MCP 协议规范,可以与任何兼容 MCP 协议的客户端进行通信,例如 Claude Desktop。
安装步骤
- 安装 Python 3.10 或更高版本: 确保你的系统上安装了 Python 3.10 或更高版本。
- 安装 uv: 'uv' 是一个快速的 Python 包安装和解析器。根据你的操作系统,运行以下命令安装 'uv':
- MacOS/Linux: 'curl -LsSf https://astral.sh/uv/install.sh | sh'
- Windows: 'powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"'
- 配置 Claude Desktop:
- 下载并安装 Claude Desktop。
- 启动 Claude Desktop,进入 "Settings" (设置) -> "Developer" (开发者) -> "Edit Config" (编辑配置)。
- 修改 'claude_desktop_config.json' 文件,添加或修改 'mcpServers' 配置。
服务器配置
在 'claude_desktop_config.json' 文件中,你需要配置两个 MCP 服务器:'Adfin' 和 'filesystem'。以下是配置示例,你需要根据你的实际情况修改占位符:
{ "mcpServers": { "Adfin": { "command": "<home_path>/.local/bin/uv", "args": [ "--directory", "<absolute_path_to_adfin_mcp_folder>", "run", "main_adfin_mcp.py" ], "env": { "ADFIN_EMAIL": "<your_adfin_email>", // 替换为你的 Adfin 邮箱 "ADFIN_PASSWORD": "<your_adfin_password>" // 替换为你的 Adfin 密码 } }, "filesystem": { "command": "<home_path>/.local/bin/uv", "args": [ "--directory", "<absolute_path_to_adfin_mcp_folder>", "run", "filesystem.py" ] } } }
配置参数说明:
- '"Adfin"' 和 '"filesystem"': 服务器名称,在 Claude Desktop 中用于标识不同的 MCP 服务器。
- '"command"': 启动服务器的命令,这里使用 'uv run' 来运行 Python 脚本。 请确保 '<home_path>/.local/bin/uv' 是 'uv' 的实际安装路径。
- '"args"': 传递给 'uv run' 命令的参数列表。
- '"--directory"': 指定 MCP 服务器代码所在的目录,请将 '<absolute_path_to_adfin_mcp_folder>' 替换为 'mcp-server-adfin' 仓库在你的电脑上的绝对路径。
- '"run"': 'uv' 命令的子命令,用于运行 Python 脚本。
- '"main_adfin_mcp.py"' (对于 "Adfin" 服务器) 或 '"filesystem.py"' (对于 "filesystem" 服务器): 要运行的 Python 脚本文件名。
- '"env"' (仅用于 "Adfin" 服务器): 设置环境变量。
- '"ADFIN_EMAIL"': 你的 Adfin 账户邮箱。
- '"ADFIN_PASSWORD"': 你的 Adfin 账户密码。 请注意安全保管你的密码,避免泄露。
重要提示:
- '<home_path>' 通常指用户的主目录,例如 Linux/MacOS 下的 '/home/用户名' 或 Windows 下的 'C:\Users\用户名'。
- '<absolute_path_to_adfin_mcp_folder>' 需要替换为 'mcp-server-adfin' 仓库在你电脑上的完整路径,例如 '/Users/yourname/Documents/mcp-server-adfin' 或 'C:\Users\yourname\Documents\mcp-server-adfin'。
- 首次启动 Claude Desktop 并加载 Adfin 工具时,可能需要 10-20 秒,因为需要安装依赖包和下载 Adfin API 文档。
基本使用方法
- 启动 Claude Desktop: 重新启动 Claude Desktop 以加载配置的 MCP 服务器。
- 与 Claude 对话: 现在你可以通过自然语言与 Claude 互动,调用 Adfin 服务和文件系统工具。
使用示例 (来自 README.md):
- 查询信用控制状态 (Adfin 工具):
Give me a credit control status check. - 创建新发票 (Adfin 工具):
Create a new invoice for 60 GBP for Abc Def that is due in a week. His email is [email protected]. - 上传本地发票 (文件系统 + Adfin 工具):
Upload all pdf invoices from the invoices folder from my Desktop.
通过以上配置和指令,你就可以利用 Adfin MCP 服务器,让 Claude Desktop 具备与 Adfin 系统交互和访问本地文件系统的能力。 请参考仓库中的代码和示例,探索更多功能和用法。
信息
分类
桌面与硬件