Token导航 LogoToken导航TokenDH.com
Deck Forge logo
金融服务未说明官方级别未说明来源级核验

Deck Forge

MCP Server

通过API调用生成专业演示文稿,支持JSON中间表示或自然语言提示输入,输出PPTX文件、Google Slides或缩略图PNG。

工具数

6

提示词数

0

GitHub Stars

3

资源数

0
PythonClaude金融数据Claude

安装说明

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

作者 / 组织

Whatsonyourmind

提供方

Whatsonyourmind

最后核验

2026/5/17 20:21

快速接入

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

详细介绍

DeckForge

API-first presentation generation for humans and AI agents

______________________________________________________________________

执行准备幻灯片,只需一个API调用。发送JSON中间表示(IR)或自然语言提示,并返回 .pptx 文件、谷歌幻灯片或缩略图PNG——具有专业布局、一致的品牌和经过验证的质量。

特性

  • 32种滑盖类型 --标题、议程、要点、比较、时间线、流程图、组织结构图、统计标注、表格、图表、矩阵、漏斗图、地图等
  • 9张财务幻灯片 --DCF摘要、计算表、瀑布图、交易概述、回报分析、资本结构、市场格局、风险矩阵、投资理论
  • 24种图表类型 --条、线、区域、饼、甜甜圈、散射、气泡、组合、瀑布、漏斗、树状图、雷达、龙卷风、足球场、敏感度表、热图、桑基、甘特、日爆等
  • 15个内置主题 --公司蓝、高管黑、金融专业、现代渐变、极简光、科技霓虹灯和其他9种(加上定制品牌套件)
  • 本机PPTX输出 --带有元素级控制、转换和图表嵌入的python-pptx渲染
  • 谷歌幻灯片输出 --通过Google Slides API直接导出(包括OAuth流)
  • AI内容生成 --通过Claude、OpenAI、Gemini或Ollama(4阶段流程:意图、大纲、扩展、细化)将自然语言转换为幻灯片
  • 5级QA管道 --使用自动修复引擎进行自动质量检查,以进行对比度、溢出、对齐等
  • 基于约束的布局 --kiwisolver约束求解器,12列网格,自适应溢出(字体缩小、回流、拆分)
  • MCP服务器 --6个AI代理集成工具(渲染、生成、主题、幻灯片类型、估计、预览)
  • x402机器付款 --Base L2上自主AI代理的每次通话USDC定价
  • 条纹计费 --订阅级别(入门免费,专业版每月79美元,企业定制),带信用系统
  • TypeScript SDK -- @deckforge/sdk 具有流畅的构建器模式、全类型安全、SSE流式传输

快速开始

在5分钟内从零到第一个渲染甲板。

先决条件

步骤

# 1. Clone the repo
git clone https://github.com/Whatsonyourmind/deckforge && cd deckforge

# 2. Copy environment config (works out of the box for local dev)
cp .env.example .env

# 3. Start all services (API, workers, PostgreSQL, Redis, MinIO)
docker compose up -d

# 4. Initialize the database (runs migrations, seeds test user + API key)
bash scripts/bootstrap-db.sh

# 5. Verify the API is running
curl http://localhost:8000/v1/health
# => {"status":"healthy"}

引导程序脚本输出测试API密钥(dk_test_...).请将其保存为以下示例。

API示例

从IR渲染甲板

curl -X POST http://localhost:8000/v1/render \
  -H "Authorization: Bearer dk_test_YOUR_KEY_HERE" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Q4 Board Update",
    "theme": "corporate-blue",
    "slides": [
      {
        "slide_type": "title_slide",
        "elements": [
          {"type": "title", "content": "Q4 2026 Board Update"},
          {"type": "subtitle", "content": "Acme Corp -- Confidential"}
        ]
      },
      {
        "slide_type": "stats_callout",
        "elements": [
          {"type": "title", "content": "Key Metrics"},
          {"type": "metric", "content": "$4.2M", "label": "ARR"},
          {"type": "metric", "content": "142%", "label": "YoY Growth"},
          {"type": "metric", "content": "94%", "label": "Retention"}
        ]
      }
    ]
  }' \
  --output board-update.pptx

从自然语言生成套牌

curl -X POST http://localhost:8000/v1/generate \
  -H "Authorization: Bearer dk_test_YOUR_KEY_HERE" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "Create a 10-slide pitch deck for a B2B SaaS startup in the cybersecurity space, Series A, $2M ARR",
    "theme": "executive-dark",
    "output_format": "pptx"
  }' \
  --output pitch-deck.pptx
注:/v1/generate 终结点需要在中配置至少一个LLM API密钥 .env (Anthropic、OpenAI、Gemini或Ollama)。

检查可用的主题和幻灯片类型

# List all 15 themes
curl http://localhost:8000/v1/themes

# List all 32 slide types with example IR
curl http://localhost:8000/v1/slide-types

# Estimate credit cost before rendering
curl -X POST http://localhost:8000/v1/estimate \
  -H "Authorization: Bearer dk_test_YOUR_KEY_HERE" \
  -H "Content-Type: application/json" \
  -d '{"slides": [{"slide_type": "title_slide"}, {"slide_type": "chart_slide"}]}'

TypeScript SDK

从npm安装:

npm install @deckforge/sdk

具有全类型安全性的流畅构建器:

import { DeckForge, Presentation, Slides } from "@deckforge/sdk";

const client = new DeckForge({ apiKey: "dk_test_YOUR_KEY_HERE" });

const deck = Presentation.create("Q4 Board Update", "corporate-blue")
  .addSlide(
    Slides.titleSlide({
      title: "Q4 2026 Board Update",
      subtitle: "Acme Corp -- Confidential",
    })
  )
  .addSlide(
    Slides.statsCallout({
      title: "Key Metrics",
      metrics: [
        { value: "$4.2M", label: "ARR" },
        { value: "142%", label: "YoY Growth" },
        { value: "94%", label: "Retention" },
      ],
    })
  );

const pptx = await client.render(deck);
// => Buffer containing .pptx file

通过SSE流式传输从提示生成:

const stream = client.generate({
  prompt: "Create a PE deal memo for a $500M LBO of a healthcare platform",
  theme: "finance-pro",
});

for await (const event of stream) {
  console.log(`${event.stage}: ${event.message}`);
}
// intent: Analyzing prompt for presentation structure...
// outline: Creating 12-slide deal memo outline...
// expand: Generating slide content...
// refine: Running QA pipeline (5 passes)...
// complete: Deck ready for download

建筑

                        +------------------+
                        |    Clients       |
                        |  (curl/SDK/MCP)  |
                        +--------+---------+
                                 |
                        +--------v---------+
                        |  FastAPI (uvicorn)|
                        |  /v1/* routes     |
                        |  Auth + Rate Limit|
                        |  Credit Billing   |
                        +--+-----+------+--+
                           |     |      |
               +-----------+     |      +----------+
               |                 |                  |
      +--------v------+  +------v--------+  +------v--------+
      | Content Worker |  | Render Worker |  |   Sync Path   |
      | (ARQ + Redis)  |  | (ARQ + Redis) |  | ( IR       |  | IR -> PPTX    |  | Direct return  |
      +--------+------+  +------+--------+  +------+--------+
               |                 |                  |
               v                 v                  v
      +--------+------+  +------+---------+  +-----+--------+
      | LLM Adapters  |  | PPTX Renderer  |  | Google Slides|
      | Claude/GPT/   |  | Layout Engine  |  | Renderer     |
      | Gemini/Ollama  |  | Theme Resolver |  | (OAuth)      |
      +---------------+  | Chart Renderer |  +--------------+
                          | QA Pipeline    |
                          +------+---------+
                                 |
                          +------v---------+
                          |    Storage     |
                          | MinIO (dev)    |
                          | R2/S3 (prod)   |
                          +----------------+

      +----------------+  +----------------+
      |   PostgreSQL   |  |     Redis      |
      |   Users, Keys  |  |  Queue, Cache  |
      |   Jobs, Decks  |  |  Rate Limits   |
      |   Billing      |  |  SSE Pub/Sub   |
      +----------------+  +----------------+

API路线

所有路线都安装在 /v1 前缀。互动文档 http://localhost:8000/docs.

端点方法身份验证描述
/v1/healthGET健康检查
/v1/renderPOSTAPI键将IR渲染到PPTX/Google幻灯片
/v1/generatePOSTneneneba API键从自然语言生成幻灯片
/v1/previewPOSTAPI键生成缩略图PNG
/v1/estimatePOSTAPI密钥估计信贷成本
/v1/jobs/{id}GETAPI键检查异步作业状态
/v1/themesGET列出可用主题
/v1/slide-typesGET列出幻灯片类型及其示例
/v1/decksGET/POST/DELETEneneneba API键甲板CRUD操作
/v1/batchPOSTneneneba API键批量渲染多组
/v1/webhooksGET/POST/DELETEAPI密钥管理webhook订阅
/v1/billing/*各种API密钥条带订阅管理
/v1/pricingGET当前定价和等级信息
/v1/onboard/signupPOST创建帐户和API密钥
/v1/analytics/*GET管理使用分析和指标
/v1/auth/google/*获取API密钥幻灯片的Google OAuth流

环境变量

所有变量都以前缀 DECKFORGE_。参见 .env.example 以获取带有注释和示例值的完整参考。

变量默认值描述
DECKFORGE_DATABASE_URLpostgresql+psycopg://...localhostPostgreSQL连接字符串
DECKFORGE_REDIS_URLredis://localhost:6379/0Redis连接(队列、缓存、发布/订阅)
DECKFORGE_S3_ENDPOINT_URLhttp://localhost:9000S3兼容存储端点
DECKFORGE_S3_ACCESS_KEYminioadminS3访问密钥(开发默认为MinIO)
DECKFORGE_S3_SECRET_KEYminioadminS3密钥
DECKFORGE_S3_BUCKETdeckforgeS3存储桶名称
DECKFORGE_API_HOST0.0.0.0API绑定地址
DECKFORGE_API_PORT8000API端口
DECKFORGE_DEBUGtrue调试模式(生产中禁用)
DECKFORGE_ENVIRONMENTdevelopmentdevelopment / staging / production
DECKFORGE_LLM_DEFAULT_PROVIDERclaude内容生成的默认LLM
DECKFORGE_LLM_FALLBACK_CHAINclaude,openai,geminiLLM回退顺序
DECKFORGE_ANTHROPIC_API_KEY--Claude的Anthropic API密钥
DECKFORGE_OPENAI_API_KEY--OpenAI API密钥
DECKFORGE_GEMINI_API_KEY--Google Gemini API密钥
DECKFORGE_OLLAMA_BASE_URLhttp://localhost:11434Ollama本地服务器URL
DECKFORGE_STRIPE_SECRET_KEY--条纹密钥
DECKFORGE_STRIPE_WEBHOOK_SECRET--条纹式webhook签名密钥
DECKFORGE_STRIPE_STARTER_PRICE_ID--初学者层的条纹价格ID
DECKFORGE_STRIPE_PRO_PRICE_ID--专业版条纹价格ID
DECKFORGE_GOOGLE_CLIENT_ID--谷歌OAuth客户端ID(用于幻灯片)
DECKFORGE_GOOGLE_CLIENT_SECRET--谷歌OAuth客户端机密
DECKFORGE_GOOGLE_REDIRECT_URIhttp://localhost:8000/v1/auth/google/callbackOAuth重定向URI
DECKFORGE_UNKEY_ROOT_KEY--取消密钥根密钥(生产身份验证)
DECKFORGE_UNKEY_API_ID--未密钥API ID
DECKFORGE_X402_ENABLEDfalse启用x402 USDC支付
DECKFORGE_X402_WALLET_ADDRESS--USDC在Base上接收钱包
DECKFORGE_X402_FACILITATOR_URLhttps://x402.org/facilitatorx402主持人端点
DECKFORGE_X402_NETWORKeip155:8453基础主网链ID

部署

Fly.io(推荐)

DeckForge发货时已准备好生产 fly.toml 多阶段 Dockerfile.

# 1. Install Fly CLI
curl -L https://fly.io/install.sh | sh

# 2. Login and launch
fly auth login
fly launch --name deckforge-api --region iad

# 3. Provision PostgreSQL
fly postgres create --name deckforge-db --region iad
fly postgres attach deckforge-db

# 4. Provision Redis (via Upstash or Fly Redis)
fly redis create --name deckforge-redis
# Copy the REDIS_URL from output

# 5. Set production secrets
fly secrets set \
  DECKFORGE_ENVIRONMENT=production \
  DECKFORGE_DEBUG=false \
  DECKFORGE_DATABASE_URL="postgres://..." \
  DECKFORGE_REDIS_URL="redis://..." \
  DECKFORGE_S3_ENDPOINT_URL="https://..." \
  DECKFORGE_S3_ACCESS_KEY="..." \
  DECKFORGE_S3_SECRET_KEY="..." \
  DECKFORGE_S3_BUCKET="deckforge" \
  DECKFORGE_STRIPE_SECRET_KEY="sk_live_..." \
  DECKFORGE_STRIPE_WEBHOOK_SECRET="whsec_..." \
  DECKFORGE_ANTHROPIC_API_KEY="sk-ant-..."

# 6. Deploy
fly deploy

# 7. Run database migrations
fly ssh console -C "alembic upgrade head"

# 8. Verify
curl https://deckforge-api.fly.dev/v1/health

Fly.io配置亮点:

  • 2个共享CPU,每个虚拟机1 GB RAM
  • 自动停止/启动以提高成本效益(至少1台机器运行)
  • 具有并发限制的强制HTTPS(200软/250硬)
  • 多流程: api (玉米)+ worker (ARQ)

Docker Compose(本地开发)

# Start all 6 services
docker compose up -d

# Services:
#   api             - FastAPI + uvicorn (port 8000)
#   content-worker  - ARQ worker for NL-to-IR generation
#   render-worker   - ARQ worker for IR-to-PPTX rendering
#   postgres        - PostgreSQL 16 (port 5432)
#   redis           - Redis 7 (port 6379)
#   minio           - MinIO S3-compatible storage (port 9000, console 9001)

# Check service health
docker compose ps

# View API logs
docker compose logs -f api

# Tear down (preserves data volumes)
docker compose down

# Full reset (removes data)
docker compose down -v

S3存储选项

环境提供程序配置
本地开发MinIO(通过Docker Compose)默认值 .env.example 价值观
生产Cloudflare R2设置 S3_ENDPOINT_URL, S3_ACCESS_KEY, S3_SECRET_KEY
生产AWS S3套件 S3_ENDPOINT_URL 到AWS端点
Fly.io飞虎fly storage create,自动配置

定价

订阅级别

级别价格积分/月利率限制最适合
启动器免费5010个要求/分钟评估、爱好项目
专业版79美元/月50060个要求/分钟团队、生产应用程序
企业自定义10000+300需求/分钟大容量,允许超龄

信用成本

每个API调用都会根据复杂度消耗信用:

  • 简单渲染 (\DeckForge -- Executive-ready slides, one API call away.

目录标签

目录标签

PythonClaude金融数据演示文稿生成本地部署自动化办公AI内容生成金融分析多格式输出

支持客户端

Claude

接入字段

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

未说明

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

oauth

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明oauthremote-capable

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP