Token导航 LogoToken导航TokenDH.com
Feishu Access Token logo
运维云端stdio官方级别未说明来源级核验

Feishu Access Token

MCP Server

一个基于Smithery和Python构建的MCP服务,用于自动管理和刷新飞书的app_access_token。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
Python自动化Token认证

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Leon-Algo

提供方

Leon-Algo

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install uv

详细介绍

飞书 Access Token MCP

本项目是一个基于 Smithery 和 Python 构建的 MCP (Model-Context-Protocol) 服务,用于管理并自动刷新飞书的 app_access_token

该服务将飞书的 Token 管理逻辑封装成一个 MCP 工具。客户端(如 AI Agent)可以通过配置会话(Session)并调用此工具,来获取一个有效的 app_access_token,无需关心其内部的获取机制。

功能特性

  • MCP 服务化:将 Token 管理封装为标准的 MCP 工具。
  • 会话配置:通过 MCP 会话安全地传递 app_idapp_secret
  • 自动刷新与状态管理:在 app_access_token 过期前自动刷新。
  • Smithery 集成:利用 @smithery.server 装饰器,轻松实现部署和会话管理。
  • 环境变量支持:支持从 .env 文件加载配置。

项目结构

feishu_access_token_mcp/
├── .env                 # 环境变量配置文件
├── .gitignore
├── README.md
├── deployment_test.py   # 部署前测试脚本
├── import_test.py       # 模块导入测试脚本
├── pyproject.toml       # Smithery 配置文件
├── simple_test.py       # 简单功能测试脚本
├── smithery.yaml
├── test_env.py          # 环境变量测试脚本
├── uv.lock              # 依赖锁定文件
└── src/
    └── feishu_access_token_mcp/
        ├── __init__.py
        └── server.py    # MCP 服务器定义和核心逻辑

环境要求

  • Python 3.12
  • 已通过 uv 固定解释器版本

安装与设置

  1. 克隆仓库:
   git clone 
   cd feishu_access_token_mcp
  1. 配置环境变量:

创建 .env 文件并添加您的飞书应用凭证:

   FEISHU_APP_ID=your_app_id
   FEISHU_APP_SECRET=your_app_secret
  1. 安装 uv (如果尚未安装):

这是一个高效的 Python 包管理器。

   pip install uv
  1. 创建虚拟环境并安装依赖:

uv 会自动创建虚拟环境并安装项目依赖。

   uv sync

如何运行和测试

1. 部署前测试

在部署到 Smithery 之前,建议运行部署前测试以确保所有配置正确:

python deployment_test.py

2. 测试环境变量配置

使用以下命令测试环境变量配置和 Token 获取功能:

python test_env.py

3. 测试模块导入

使用以下命令测试模块是否可以正确导入:

python import_test.py

4. 测试核心功能

使用以下命令测试核心 Token 获取功能:

python simple_test.py

5. 本地开发运行

使用以下命令启动本地开发服务器:

uv run dev

服务器将在 http://127.0.0.1:8081 上运行。

6. 在 Smithery Playground 中测试

为了方便地测试 MCP 服务,您可以使用 Smithery Playground。它提供了一个图形界面来配置会话和调用工具。

运行以下命令:

uv run playground

此命令会将您的本地服务器通过 ngrok 安全地连接到 Smithery Playground。您会得到一个 URL,在浏览器中打开它即可开始测试。

在 Playground 中的测试步骤:

  1. 配置会话 (Configure Session)

在 Playground 页面的 "Session Config" 部分,填入您的飞书应用凭证:

   {
     "app_id": "你的飞书 app_id",
     "app_secret": "你的飞书 app_secret"
   }
  1. 调用工具

在聊天框中,输入指令来调用我们定义的工具,例如: > "获取飞书 token"

或者

> "Call the get_feishu_token tool"

  1. 查看结果

模型会调用 get_feishu_token 工具,您将在界面上看到返回的包含 app_access_tokenexpires_at 的 JSON 结果。

用于生产环境

此 MVP (最小可行产品) 实现使用内存中的字典来存储不同会话的 TokenManager 实例。这对于开发和大多数场景是足够的,但请注意:

  • 重启后状态丢失:如果应用程序重启,所有会话的令牌信息都将丢失,下次调用时会重新初始化。
  • 扩展性:如果需要部署到多个实例(例如,使用负载均衡),内存缓存将导致状态不一致。

对于需要跨实例共享状态或在重启后保留状态的生产环境,建议将 token_manager_cache 替换为外部的持久化存储,例如:

  • Redis:一个快速的内存数据存储,非常适合缓存令牌。
  • 数据库:如 PostgreSQL 或 MySQL。

部署到 Smithery

准备好部署了吗?将您的代码推送到 GitHub 并部署到 Smithery:

  1. 在 创建一个新的仓库
  1. 初始化 git 并推送到 GitHub:
   git add .
   git commit -m "Initial commit: Feishu Access Token Manager"
   git remote add origin https://github.com/YOUR_USERNAME/YOUR_REPO.git
   git push -u origin main
  1. smithery.ai/new 部署您的服务器

故障排除

部署时出现 "Expected a Python module at: src/feishu_access_token_mcp/__init__.py" 错误

这个问题通常是由于文件系统大小写敏感性差异导致的。确保:

  1. 目录名使用小写字母:src/feishu_access_token_mcp/(而不是 src/feishu_access_token_MCP/
  2. pyproject.toml 中的服务器入口点配置正确:server = "feishu_access_token_mcp.server:create_server"
  3. 运行 python deployment_test.py 来验证配置是否正确

如果问题仍然存在,请检查:

  • 确保 __init__.py 文件存在于正确的位置
  • 确保 uv.lock 文件是最新的(运行 uv lock 重新生成)

目录标签

目录标签

Python自动化Token认证飞书集成本地部署令牌管理自动化工具MCP服务Python开发

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP