会议智能协议服务器

Fathom MCP服务器是一个集成会议智能平台的协议服务器,使AI助手能够通过标准化工具访问会议录音、转录、摘要和行动项。

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

使用说明

Fathom MCP服务器

与Fathom会议智能平台集成的MCP(模型上下文协议)服务器。使AI助手能够通过标准化的MCP工具访问会议记录、成绩单、摘要和行动项。

快速开始

# Install dependencies
npm install

# Configure environment
cp .env.example .env
# Edit .env with your Fathom API key

# Build
npm run build

# Start
npm start

配置

环境变量

变量 必填 描述
FATHOM_API_KEY 是* 用于身份验证的Fathom API密钥
FATHOM_OAUTH_CLIENT_ID 是* OAuth客户端ID(API密钥的替代项)
FATHOM_OAUTH_CLIENT_SECRET 是* OAuth客户端密钥
FATHOM_OAUTH_REDIRECT_URI no OAuth信用URI(默认值: http://localhost:3000/callback)
LOG_LEVEL 否 日志记录级别: debug, info, warn, error (默认值: info)
NODE_ENV 否 环境: development, production (默认值: development)
TRANSPORT 否 运输方式: stdio, http (默认值: stdio)
PORT 否 HTTP服务器端口(默认值: 3000,仅在以下情况下使用 TRANSPORT=http)

*必须至少配置一种身份验证方法(API密钥或OAuth凭据)。

克劳德桌面/MCP客户端

添加到您的Claude Desktop配置(claude_desktop_config.json):

{
  "mcpServers": {
    "fathom": {
      "command": "node",
      "args": ["/path/to/fathom-mcp-server/dist/index.js"],
      "env": {
        "FATHOM_API_KEY": "your-api-key"
      }
    }
  }
}

可用工具

工具 说明
fathom_list_meetings 列出带有日期范围、记录者和参与者筛选器的会议
fathom_get_meeting 获取详细的会议信息,包括会议记录、摘要和行动项目
fathom_get_transcript 获取原始、格式化或markdown格式的完整成绩单
fathom_get_summary 获取人工智能生成的摘要,包括关键点、主题和决策
fathom_search_meetings 按标题和参与者的关键字搜索会议
fathom_get_action_items 获取按会议、受让人或完成状态筛选的行动项

发展

# Dev mode with auto-reload
npm run dev

# Run tests
npm test

# Run tests in watch mode
npm run test:watch

# Type check
npm run typecheck

# Lint
npm run lint

运输方式

服务器支持两种传输模式:

1.stdio(默认值-适用于本地MCP客户端)

适用于Claude Desktop等本地MCP客户端。服务器通过标准输入/输出进行通信。

# Set in .env
TRANSPORT=stdio

# Or run directly
npm start

2.HTTP/SSE(用于远程部署)

用于部署到Railway、Render或Heroku等云平台。服务器运行一个带有服务器发送事件的HTTP服务器,用于双向通信。

# Set in .env
TRANSPORT=http
PORT=3000

# Start server
npm start

HTTP传输公开了这些端点:

  • GET /health -健康检查端点
  • POST /mcp -MCP JSON-RPC端点
  • GET /mcp -SSE流(需要 mcp-session-id 头球
  • DELETE /mcp -会话终止

部署

铁路/渲染/云平台

服务器已准备好使用HTTP传输进行部署:

  1. 设置环境变量:

    TRANSPORT=http
    PORT=3000
    FATHOM_API_KEY=your-api-key
    
  2. 服务器将在指定端口上以HTTP模式自动启动

  3. 健康检查可在 /health

码头工人

# Build and run with HTTP transport
cd docker
docker compose up --build

# Or build directly
docker build -f docker/Dockerfile -t fathom-mcp-server .
docker run -p 3000:3000 --env-file .env fathom-mcp-server

Docker容器默认配置为使用HTTP传输,并公开端口3000。

建筑

                                                    Fathom API
                                                    api.fathom.ai/external/v1
                                                           ^
                                                           | HTTPS
                                                           |
MCP Client <--stdio/HTTP--> Fathom MCP Server -------------+
                             |-- Tool Registry
                             |-- Auth Manager
                             |-- Rate Limiter (60/min)
                             |-- Data Transformers

服务器支持两种传输模式:

  • 标准:适用于本地MCP客户端(Claude Desktop)。日志记录将转到stderr以保留MCP协议的stdout。
  • HTTP/SSE:用于远程部署。使用服务器发送事件公开REST端点以进行实时通信。

项目结构

src/
  index.ts              # Entry point - transport selection
  server.ts             # MCP server setup
  http-server.ts        # HTTP/SSE transport server
  auth/                 # Authentication (API key + OAuth)
  api/                  # Fathom API client with rate limiting
    endpoints/          # Per-resource API endpoints
  tools/                # MCP tool definitions
    schemas/            # Zod input validation schemas
    handlers/           # Tool handler implementations
  transformers/         # Fathom API -> MCP response transformers
  types/                # TypeScript type definitions
  utils/                # Logger, error handling, pagination
  config/               # Environment and constants

许可证

国际协调委员会