FinanceServer MCP 后端
使用说明(Markdown 格式)
-
项目简介
- 本项目是在 Deno 环境下开发的后端服务,集成了 MCP(模型上下文协议)服务器能力,旨在为大型语言模型(LLM)客户端提供可拓展的上下文服务与外部功能调用能力,涵盖资源管理、工具执行以及会话管理等核心功能。
-
主要功能点
- MCP 服务端实现:通过 JSON-RPC/流式传输与客户端交互,支持多场景会话(如全局、投资、支出等)。
- 会话与权限管理:结合现有中间件实现身份认证、授权和会话上下文传递。
- 资源、账单、收据、订阅等领域数据的后台管理能力,提供对外的工具执行、资源访问等能力。
- OAuth 集成与元数据暴露,支持对保护资源的元数据端点对接。
- 提供可扩展的 API 路由,支持对 MCP 服务的多服务器实例化与会话建立。
- 支持多种传输协议与服务器端事件,以满足 LLM 客户端对上下文服务的不同需求。
-
安装步骤
- 环境依赖:Deno、PostgreSQL 数据库(可选 Neon/Prisma 等适配器),并配置相关环境变量。
- 克隆仓库并安装依赖(按仓库 README 提示进行克隆、.env 配置、 migrations 等步骤)。
- 数据库初始化与迁移:根据项目演示执行数据库连接及迁移脚本。
- 启动服务:使用 deno task dev 启动服务器,默认会在本地端口监听并暴露 MCP 服务端点。
- 登录与认证:按照 README 指引完成 GitHub OAuth 配置以开启受保护资源访问。
-
服务器配置(MCP 客户端使用,以下为示例配置描述,实际请按需求填写)
- server name: financeserver-global
- command: deno
- args: ["task", "dev"]
- 说明: 用于启动 MCP 全局会话服务器。实际参数请结合运维环境与部署方式调整,确保数据库、OAuth、以及网络访问等依赖就绪。
- 备注: 客户端在连接前需了解服务器的唯一标识、启动命令与参数的含义,以便正确初始化会话并与服务器建立 MCP 会话。
-
基本使用方法
- 启动后,LLM 客户端可通过 MCP 会话请求与服务器建立统一的对话上下文,服务器会创建并管理会话、暴露资源与工具访问能力,以及可自定义的 Prompt 模板渲染入口。
- 客户端可使用 JSON-RPC 风格的请求向 MCP 服务发送资源读取、工具调用、提示获取等请求,服务器返回规范的 JSON-RPC 响应。
- 通过公开的 /api/v1/mcp/global、/api/v1/mcp/bills、/api/v1/mcp/receipts 等路由建立不同场景的 MCP 会话。