使用说明
财务分析MCP服务器
一个模型上下文协议(MCP)服务器,允许Claude访问托管在您自己的基础设施上的财务文档工具。客户端使用自定义服务器URL从claude.ai连接——服务器逻辑保持隐藏,claude只看到工具名称、参数描述和结果。
该服务器附带了7个完全实现的存储工具,用于读取和写入存储在S3或任何S3兼容存储(Filestash、MinIO、Backblaze B2)中的PDF、Excel工作簿、Word文档和纯文本文件。还包括三个财务工作流程工具存根,供您填写自己的分析逻辑。
设置
1.克隆并安装
git clone <your-repo-url>
cd financial-mcp-server
pip install -r requirements.txt
2.配置环境
cp .env.example .env
打开 .env 并填写您的存储凭据:
S3_ENDPOINT_URL=https://your-filestash-or-s3-endpoint.com
S3_ACCESS_KEY=your-access-key
S3_SECRET_KEY=your-secret-key
S3_BUCKET_NAME=your-bucket-name
S3_REGION=us-east-1
MCP_HOST=0.0.0.0
MCP_PORT=8000
对于标准AWS S3,请离开 S3_ENDPOINT_URL 空(或将其从中删除 .env)boto3将使用默认的AWS端点。
跑步
本地
python server.py
服务器启动于 http://0.0.0.0:8000 (或中设置的主机/端口 .env).
使用Docker
# Build the image
docker build -t financial-mcp-server .
# Run with your .env file
docker run --env-file .env -p 8000:8000 financial-mcp-server
从claude.ai连接
- 打开 claude.ai 并前往 设置→ 集成 (或MCP/自定义工具部分)。
- 添加一个 自定义MCP服务器.
- 输入URL:替换
http://your-server-host:8000/mcpyour-server-host使用服务器的IP地址或域名。如果您在本地运行并在浏览器中进行测试,请使用http://localhost:8000/mcp. - 保存。Claude现在将列出可用的工具,并可以在对话中调用它们。
对于生产使用,将服务器放在具有TLS的反向代理(nginx、Caddy)后面,这样URL就是
https://.
存储工具参考
| 工具 | 说明 |
|---|---|
list_folder |
列出存储路径前缀下的文件/文件夹,包括大小和日期 |
read_pdf |
从PDF中提取文本和表格;表格是列对齐的 |
read_spreadsheet |
将Excel工作簿读取为CSV文本,每页一节 |
read_file |
阅读a .json, .csv,或 .txt 档案;JSON打印效果很好 |
write_file |
将文本内容写入存储路径;JSON是自动格式化的 |
create_spreadsheet |
创建一个 .xlsx JSON字典或列表数组中的文件 |
create_word_document |
创建一个 .docx 从文本与 #/##/### 标题语法 |
read_pdf--表处理
read_pdf 使用pdfplumber extract_tables() 将表格数据与段落文本分开捕获。每张表都采用以下格式 str.ljust() 这样行标签就可以与它们的数字列对齐——这对于数字错位会产生误导的财务报表至关重要。
read_spreadsheet--公式缓存注释
read_spreadsheet 打开工作簿 data_only=True,它读取缓存的计算值而不是原始公式。只有在上次编辑后打开工作簿并将其保存在Excel(或兼容应用程序)中时,这些缓存值才会出现。以编程方式生成但从未在Excel中打开的文件可能会返回 None 对于公式单元格。