Skip to main content
Glama

Presentation Agent MCP

一个基于 TypeScript 的 Presentation MCP Server —— 通过结构化 Deck JSON 和 Layout Engine 自动生成技术汇报 PPTX。

What it does

通过 MCP tools 提供以下能力:

  • create_deck: 根据主题自动生成结构化 Deck JSON(6-10 页)

  • get_deck: 读取已生成的 Deck JSON

  • review_deck: 审查 PPT 内容结构(标题过长、bullet 过多、缺页等)

  • update_slide: 对单页进行增量修改

  • export_pptx: 导出真实 .pptx 文件

  • create_storyline: 生成故事线

  • create_style_profile: 获取风格配置

Related MCP server: PptxGenJS MCP Server

Architecture

Client (Codex/ChatGPT/Claude)
        │ MCP
        ▼
Presentation MCP Server (stdio)
        │
        ▼
Presentation Runtime
    ├── Storyline Planner      → 生成故事线
    ├── Deck Generator          → 生成结构化 Deck JSON
    ├── Layout Engine           → 布局计算
    ├── Review Engine           → 内容审查
    ├── Incremental Editor      → 单页修改
    └── PptxExporter            → PPTX 导出

核心约束:所有内容必须先进入 Deck JSON,所有布局必须经过 Layout Engine,LLM 不允许直接写 PPTX。

Install

cd presentation-agent-mcp
npm install

Run locally

# Start the MCP server (stdio mode)
npm start

For development with auto-reload:

npm run dev

Test

npm test

Test coverage

  • Schema tests: Deck/Slide schema validation

  • Layout tests: All 6 slide types render valid elements within bounds

  • Review tests: 10+ static check rules

  • Export tests: PPTX buffer generation with real PptxGenJS

MCP tools

Tool

Description

Input

create_style_profile

Get style profile

style_id (default/allen_huawei_tech)

create_storyline

Generate storyline

topic, audience?, purpose?, research_brief?, slide_count?

create_deck

Create deck JSON

topic, audience?, purpose?, research_brief?, slide_count?, style_id?

get_deck

Read deck JSON

deck_id

review_deck

Review deck structure

deck_id

update_slide

Update a single slide

deck_id, slide_id, instruction

export_pptx

Export to PPTX

deck_id

Example workflow

Full closed loop

1. create_deck
2. review_deck
3. export_pptx
4. update_slide
5. export_pptx again

Via MCP Inspector

npx @modelcontextprotocol/inspector node --loader tsx src/index.ts

Example create_deck input

{
  "topic": "Agentic AI 时代端侧 OS 架构演进",
  "audience": "操作系统架构师和技术管理层",
  "purpose": "说明端侧负载变化,并提出 AgentOS Kernel 架构演进方向",
  "slide_count": 8,
  "style_id": "allen_huawei_tech"
}

Built-in styles

  1. default: Clean default presentation style

  2. allen_huawei_tech: 面向技术战略、架构演进的技术汇报风格

    • 16:9 宽屏(13.333 x 7.5 inch)

    • 主色调: #A80000

    • 字体: Arial

    • 支持 title/agenda/insight/comparison/architecture/summary

Slide types

  • title: 封面页

  • agenda: 议程页(最多 6 项)

  • insight: 洞察页(关键观点 + 证据卡片)

  • comparison: 对比页(左右两栏)

  • architecture: 架构页(分层架构图)

  • summary: 总结页(3 Takeaways + 下一步行动)

Current limitations (V0.1)

  1. No real LLM: 使用确定性规则生成内容,不接外部 LLM

  2. No Deep Research: V0.1 不包含联网研究能力

  3. No UI: 纯 MCP Server,无 Web 界面

  4. Basic layouts: 固定坐标布局,非 constraint-based

  5. No image support: V0.1 不包含图片搜索和渲染

  6. No PDF export

  7. Local storage only: 使用本地 filesystem 存储

  8. No complex animations

Roadmap

V0.2

  • 接入真实 LLM

  • Deck Patch 机制

  • 更强的 slide-level incremental editing

  • 增加 roadmap、timeline、case_study 页面类型

  • Remote MCP 部署

V0.3

  • 接入 Deep Research

  • 企业知识库集成

  • Web Console + PPT 预览

  • 图标库和 SVG 架构图生成

V1.0

  • ChatGPT App 化

  • 多用户 / 权限 / 模板市场

  • OpenDesk Presentation Agent 集成

Development

npm run typecheck  # TypeScript type check
npm test           # Run tests
npm run dev        # Start with tsx watch

Available Tools

9 tools
auto_fix_deckC

Auto-fix review issues in a deck

ParametersJSON Schema
NameRequiredDescriptionDefault
deck_idYesDeck ID

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description bears full responsibility for behavioral disclosure. It merely states that the tool fixes review issues but does not describe whether the operation is destructive, reversible, or what side effects occur. The agent cannot assess the tool's impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but overly brief. It front-loads the purpose but lacks supporting details that would justify its brevity given the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that modifies content (fixes issues), the description is incomplete. It does not explain what 'fixing' entails, what types of issues are addressed, or any expected outcomes. The agent lacks information to confidently invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single parameter 'deck_id', described as 'Deck ID'. The description does not add any additional parameter-level information, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the verb 'auto-fix' and the resource 'review issues in a deck', indicating the tool's purpose. However, 'review issues' is vague and does not specify what types of issues are addressed, nor does it distinguish from sibling tool 'review_deck' which likely identifies issues. The purpose is clear but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. For example, there is no mention of first running 'review_deck' to identify issues, or any prerequisites. The agent is given no context for correct usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_deckB

根据主题或 storyline 创建 Deck JSON

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYes主题
purposeNo目的
audienceNo受众
style_idNo风格allen_huawei_tech
slide_countNo幻灯片数量
research_briefNo研究摘要

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose all behavioral traits. It only states the action (create) but fails to mention idempotency, side effects, auth needs, or any constraints, leaving the agent uninformed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single-sentence description is concise and front-loaded. It could benefit from additional keywords but is efficient for its length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters and no output schema or annotations, the description is too brief. It lacks explanation of return value, parameter usage context, and behavioral expectations, leaving the agent underinformed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of parameters with descriptions. The description adds 'storyline' context but does not significantly extend understanding beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '创建' (create) and the resource 'Deck JSON', and distinguishes from sibling tools like 'create_storyline' which creates a storyline, not a deck.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, exclusions, or context for use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_storylineC

根据主题、受众、研究摘要生成故事线

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYes主题
purposeNo目的
audienceNo受众
slide_countNo幻灯片数量
research_briefNo研究摘要

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It only states the basic action without disclosing behavioral traits like permissions, side effects, or output format. The description is too minimal to inform an agent about safe usage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, making it concise. However, it omits some parameters (purpose, slide_count), which could mislead about required inputs. It is front-loaded but incomplete.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema and annotations, the description is insufficient. It does not explain what the storyline output looks like, how it is structured, or any constraints (e.g., maximum length). A more complete description would aid agent understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the input schema already describes all parameters. The description mentions 'topic', 'audience', and 'research_brief' but omits 'purpose' and 'slide_count'. It adds little value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a storyline based on topic, audience, and research summary. The verb '生成' (generate) and resource '故事线' (storyline) are specific. However, it does not differentiate from sibling tools like 'create_deck' which might have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'create_deck' or 'review_deck'. There is no mention of prerequisites, context, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_style_profileD

获取内置风格配置

ParametersJSON Schema
NameRequiredDescriptionDefault
style_idNo风格标识allen_huawei_tech

TDQS

D1.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided. The description states a read-like operation ('get') but the tool name suggests creation, creating ambiguity. No disclosure of side effects or required permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single phrase, which is concise but under-specified. It lacks essential details to be useful, making it merely a truncated statement rather than a properly structured description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without output schema or annotations, and given the contradiction in purpose, the description is severely incomplete. It fails to explain what the tool returns or how the style configuration is used.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter (style_id) having an enum. The description adds no additional meaning beyond the schema's parameter description '风格标识' (style identifier). The enum values 'default' and 'allen_huawei_tech' remain unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '获取内置风格配置' (get built-in style configuration) contradicts the tool name 'create_style_profile', which implies creation. The verb is unclear and potentially misleading.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidance is provided. The description does not specify when to use this tool versus its siblings like 'create_deck' or 'get_deck', nor does it mention any prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_pdfD

导出 PDF

ParametersJSON Schema
NameRequiredDescriptionDefault
deck_idYesDeck ID

TDQS

D1.9/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations. Description fails to disclose any behavioral traits such as file generation, output location, permissions, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Under-specified: one sentence that is effectively a translation of the name. Not appropriately sized for the information needed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Description is incomplete even for a simple tool. No mention of output, behavior, or constraints. Lacks all context beyond the name.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for deck_id, providing a description 'Deck ID'. The tool description adds no additional meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description '导出 PDF' is a tautology of the tool name 'export_pdf'. It restates the name without clarifying the resource (e.g., exporting a deck to PDF). Does not distinguish from sibling tool 'export_pptx'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'export_pptx'. No prerequisites or context provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_pptxC

导出 PPTX

ParametersJSON Schema
NameRequiredDescriptionDefault
deck_idYesDeck ID

TDQS

C2.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose any behavioral traits such as side effects (e.g., file creation, download, or job trigger), required permissions, or whether the operation is safe (read-only vs destructive). This is a significant gap for a tool that likely produces an output.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise at four characters, but it sacrifices informativeness. While it avoids waste, it is too minimal to be fully helpful. It does not follow a structured format like 'action + resource + constraints'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Considering the lack of output schema, no annotations, and low complexity (1 param), the description should explain what the tool produces (e.g., a file path, binary stream) and any side effects. It fails to do so, leaving the agent uninformed about the result of the operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter 'deck_id' described as 'Deck ID'. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate. No param-specific guidance is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '导出 PPTX' states the action 'export' and the format 'PPTX', but it is in Chinese while the tool name is English, causing potential confusion. It does not specify what is being exported (likely a deck) beyond the parameter, but it does distinguish from siblings like export_pdf by format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like export_pdf or other deck-related tools. There is no mention of prerequisites, when not to use, or context such as before/after actions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_deckB

读取 Deck JSON

ParametersJSON Schema
NameRequiredDescriptionDefault
deck_idYesDeck ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It states read-only behavior but does not disclose return format, side effects, or authorization needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Very concise single phrase with no wasted words, but lacks structure or formatting. Appropriate for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description should provide more detail about what the returned JSON contains or any constraints. It is minimally sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter, but the description adds no extra meaning beyond the schema's 'Deck ID'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '读取' (read) and the resource 'Deck JSON', distinguishing it from siblings like create_deck and update_slide.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives such as review_deck or create_deck. The description does not mention context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

review_deckC

审查 PPT 内容结构

ParametersJSON Schema
NameRequiredDescriptionDefault
deck_idYesDeck ID

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must fully disclose behavioral traits. It fails to state whether the tool modifies data, requires permissions, or what output it produces. The brief phrase leaves significant ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (5 characters) but lacks essential information. It is underspecified rather than concise, failing to earn its place with adequate substance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only one parameter, no output schema, and no annotations, the description should clarify the outcome (e.g., returns a report, flags issues). It does not, leaving the tool's purpose incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single parameter is documented in the schema. The description adds no additional meaning beyond what the schema provides, meeting the baseline for complete coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'review PPT content structure' indicates the tool performs a review of the deck's content structure. It is a specific verb+resource but lacks detail on what the review entails, distinguishing it only vaguely from siblings like 'get_deck'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as 'auto_fix_deck' or 'get_deck'. No context about prerequisites or exclusions is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_slideC

增量修改单页

ParametersJSON Schema
NameRequiredDescriptionDefault
deck_idYesDeck ID
slide_idYesSlide ID
instructionYes修改指令

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It states 'incremental modification' hinting at partial updates, but fails to detail any side effects, required permissions, or constraints. The agent cannot anticipate the tool's behavior beyond basic modification.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (4 characters) but not effectively concise—it sacrifices necessary detail. The tool definition would benefit from at least a sentence explaining the scope of modification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (3 required parameters, no output schema, no annotations), the description is under-specified. It does not explain the nature of the 'instruction' parameter or what the tool returns. The agent lacks sufficient context to use this tool appropriately.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with minimal descriptions, but the description does not add meaning beyond the schema. 'instruction' remains vague as '修改指令' without specifying format or scope. Baseline 3 is appropriate as schema covers parameters but description adds little.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '增量修改单页' communicates that the tool modifies a single slide incrementally, which is a specific verb and resource. However, it lacks detail on what specific modifications are possible, and the sibling tools like auto_fix_deck and create_deck are not differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus siblings. For example, it does not clarify when to use update_slide instead of create_deck or auto_fix_deck. The description offers no context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

C2.5/5.0
Disambiguation4/5

Most tools have clearly distinct purposes: creation, retrieval, review, fixing, export, and styling. The only potential confusion is between auto_fix_deck and review_deck, but they are differentiated as 'review' checks while 'fix' applies changes.

Naming Consistency3/5

Tools mostly follow a verb_noun pattern with underscores, but 'create_style_profile' is misleading because its description indicates it retrieves built-in styles rather than creating a new profile. This inconsistency reduces clarity.

Tool Count5/5

With 9 tools, the server covers the essential operations for presentation creation from storyline to export without being overly numerous. The count feels well-scoped for its purpose.

Completeness3/5

The tool set covers core workflows (create storyline, create deck, review, fix, update slides, export) but lacks common operations like deleting a deck, adding or removing slides, or listing existing decks. These gaps could hinder full lifecycle management.

Maintenance

ActivityStale
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gaowanlong/presentation-agent-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server