mcpField
M
macOS Office 365 MCP Server

macOS Office 365 MCP Server

ローカル
github.com/vAirpower生産性1565 週間前に更新

macOS Office 365 MCP Server について

macOS Office 365 MCP Serverは、macOS上でPowerPoint、Word、Excelファイルを作成・編集するAIアシスタント向けの概念実証サーバーです。AppleScriptでインストール済みのOfficeアプリを操作します。

主な機能

  1. 01PowerPointプレゼンテーションの作成・編集
  2. 02Word文書の作成と書式設定
  3. 03Excelデータの入力とグラフ作成
  4. 04複数形式でのファイル保存
  5. 05起動中のOfficeアプリの確認

活用シーン

  1. 01発表者ノート付きスライドの作成
  2. 02テンプレートを使った文書の書式設定
  3. 03表計算データと数式の入力
  4. 04ブックのデータからグラフを作成

MCP 対応

PowerPoint、Word、Excelファイルを作成・編集するツールに加え、開いている文書やOfficeアプリの状態を確認するツールを提供します。Claude DesktopやClineなどのMCPクライアントから呼び出せます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

macOS Office 365 MCP サーバー

AI アシスタントが macOS 上で Microsoft Office のドキュメント(PowerPoint、Word、Excel)を作成、操作できるようにする Model Context Protocol(MCP)サーバーです。これは概念実証を目的とした個人プロジェクトであり、公式の MCP サーバーではありません。問題があればお知らせください。

LinkedIn: https://www.linkedin.com/in/bluhmadam/

機能

PowerPoint
  • カスタムタイトルとテーマを使ってプレゼンテーションを作成
  • さまざまなレイアウトのスライドを追加
  • テキスト、画像、発表者ノートを挿入
  • 複数の形式でプレゼンテーションを保存
Word
  • 最初から、またはテンプレートからドキュメントを作成
  • 見出し、段落、リスト、表を追加
  • テキストの書式とスタイルを適用
  • 複数の形式でドキュメントを保存
Excel
  • 複数のワークシートを含むブックを作成
  • セルと範囲にデータを書き込む
  • 数式と計算を追加
  • グラフ(棒、折れ線、円)を作成
  • セルの書式とスタイルを適用
  • 複数の形式でブックを保存

前提条件

システム要件
  • macOS 10.15 以降
  • Python 3.8 以降
  • Microsoft Office for Mac(PowerPoint、Word、Excel のいずれか、またはすべて)
Python の依存関係
pip install mcp
pip install python-pptx
pip install python-docx
pip install openpyxl
pip install aiofiles

インストール

  1. リポジトリをクローンする

    git clone https://github.com/vAirpower/macos-office365-mcp-server.git
    cd macos-office365-mcp-server
    
  2. 依存関係をインストールする

    pip install -r requirements.txt
    
  3. macOS のアクセス許可を設定する

    このサーバーは AppleScript を使用して Office アプリケーションを操作します。次のアクセス許可を付与する必要があります。

    a. システム環境設定 → セキュリティとプライバシー → プライバシーを開きます b. 左側のサイドバーでオートメーションを選択します c. お使いのターミナルアプリケーション(Terminal、iTerm2、VS Code など)を見つけます d. 次の項目にチェックを入れます。

    • Microsoft PowerPoint
    • Microsoft Word
    • Microsoft Excel

    サーバーの初回実行時に確認を求められた場合は、「OK」をクリックしてオートメーションを許可します。

設定

MCP クライアントの設定

お使いの MCP クライアントの設定にサーバーを追加します。

Claude Desktop の場合

~/Library/Application Support/Claude/claude_desktop_config.jsonを編集します。

{
  "mcpServers": {
    "office365": {
      "command": "python",
      "args": ["/path/to/macos-office365-mcp-server/src/office365_mcp_server.py"]
    }
  }
}
Cline(VS Code)の場合

Cline の MCP 設定を編集します。

{
  "mcpServers": {
    "office365": {
      "command": "python",
      "args": ["/path/to/macos-office365-mcp-server/src/office365_mcp_server.py"]
    }
  }
}

使用方法

設定が完了すると、AI アシスタントは次のツールを使用できます。

PowerPoint ツール
  • create_presentation - 新しいプレゼンテーションを作成
  • add_slide - プレゼンテーションにスライドを追加
  • add_text_to_slide - スライドにテキストコンテンツを追加
  • add_image_to_slide - スライドに画像を追加
  • add_speaker_notes - スライドに発表者ノートを追加
  • save_presentation - プレゼンテーションをファイルに保存
Word ツール
  • create_document - 新しいドキュメントを作成
  • add_heading - ドキュメントに見出しを追加
  • add_paragraph - 書式設定(任意)付きの段落を追加
  • add_list - 箇条書きまたは番号付きリストを追加
  • add_table - データを含む表を追加
  • save_document - ドキュメントをファイルに保存
Excel ツール
  • create_workbook - 新しいブックを作成
  • add_worksheet - ブックにワークシートを追加
  • write_cell - 指定したセルにデータを書き込む
  • write_range - セル範囲にデータを書き込む
  • add_formula - セルに数式を追加
  • create_chart - データからグラフを作成
  • save_workbook - ブックをファイルに保存
  • list_worksheets - ブック内のすべてのワークシートを一覧表示
ユーティリティツール
  • list_active_presentations - 開いているすべてのプレゼンテーションを一覧表示
  • list_active_documents - 開いているすべてのドキュメントを一覧表示
  • list_active_workbooks - 開いているすべてのブックを一覧表示
  • check_office_status - Office アプリが利用可能かどうかを確認

使用例

PowerPoint プレゼンテーションの作成
# AI Assistant can execute:
result = await create_presentation(
    title="Q4 Sales Report",
    theme="modern"
)

slide = await add_slide(
    presentation_id=result["presentation_id"],
    layout="Title and Content"
)

await add_text_to_slide(
    slide_id=slide["slide_id"],
    text="Revenue increased by 25%",
    placeholder="content"
)

await save_presentation(
    presentation_id=result["presentation_id"],
    file_path="~/Desktop/Q4_Sales.pptx"
)
Word ドキュメントの作成
# AI Assistant can execute:
doc = await create_document(title="Project Proposal")

await add_heading(
    document_id=doc["document_id"],
    text="Executive Summary",
    level=1
)

await add_paragraph(
    document_id=doc["document_id"],
    text="This proposal outlines our approach...",
    formatting={"font_size": 12, "font_name": "Arial"}
)

await save_document(
    document_id=doc["document_id"],
    file_path="~/Desktop/proposal.docx"
)
Excel ブックの作成
# AI Assistant can execute:
workbook = await create_workbook(title="Sales Analysis")

# Add data
data = [
    ["Product", "Q1", "Q2", "Q3", "Q4"],
    ["Laptops", 100, 150, 200, 180],
    ["Tablets", 80, 90, 110, 120],
    ["Phones", 200, 250, 300, 350]
]

await write_range(
    workbook_id=workbook["workbook_id"],
    sheet_name="Sheet1",
    start_cell="A1",
    data=data,
    formatting={"bold": True}  # Bold headers
)

# Add a formula
await add_formula(
    workbook_id=workbook["workbook_id"],
    sheet_name="Sheet1",
    cell="F2",
    formula="=SUM(B2:E2)"
)

# Create a chart
await create_chart(
    workbook_id=workbook["workbook_id"],
    sheet_name="Sheet1",
    chart_type="bar",
    data_range="A1:E4",
    chart_title="Quarterly Sales",
    position="G2"
)

await save_workbook(
    workbook_id=workbook["workbook_id"],
    file_path="~/Desktop/sales_analysis.xlsx"
)

トラブルシューティング

アクセス許可の問題

「Not authorized to send Apple events」と表示される場合は、次の点を確認してください。

  1. ターミナルに Office アプリのオートメーションを許可するアクセス権がある
  2. Office アプリケーションがインストールされており、少なくとも一度は起動されている
  3. アクセス許可を付与した後、ターミナルの再起動が必要な場合がある
インポートエラー

インポートエラーが表示される場合は、次の手順を確認してください。

  1. すべての依存関係がインストールされていることを確認します:pip install -r requirements.txt
  2. Python のバージョンを確認します:python --version(3.8 以降である必要があります)
  3. MCP がインストールされていることを確認します:pip show mcp
Office が見つからない

Office アプリケーションが検出されない場合は、次の手順を確認してください。

  1. Microsoft Office for Mac がインストールされていることを確認します
  2. まず PowerPoint/Word/Excel を手動で開いてみます
  3. Office が標準の Applications フォルダーにインストールされているか確認します

開発

プロジェクト構成
macos-office365-mcp-server/
├── src/
│   ├── office365_mcp_server.py    # Main MCP server
│   ├── controllers/
│   │   ├── powerpoint_controller.py
│   │   ├── word_controller.py
│   │   └── excel_controller.py
│   ├── integrations/
│   │   └── applescript_bridge.py  # AppleScript automation
│   └── utils/
│       ├── config.py
│       ├── logger.py
│       └── validators.py
├── requirements.txt
└── README.md
新機能の追加
  1. 適切なコントローラーに新しいメソッドを追加します
  2. office365_mcp_server.py に新しいツールを登録します
  3. 使用例を記載して、この README を更新します

ライセンス

MIT License - 詳細については LICENSE ファイルを参照してください

コントリビューション

コントリビューションを歓迎します!次の手順に従ってください。

  1. リポジトリをフォークします
  2. フィーチャーブランチを作成します
  3. 新しい機能のテストを追加します
  4. プルリクエストを送信します

サポート

問題や質問がある場合:

  • GitHub で issue を作成します
  • 解決策について既存の issue を確認します
  • すべてのセットアップ手順に従ったことを確認します

謝辞

  • Model Context Protocol(MCP)を使用して構築されています
  • ドキュメントの操作に python-pptx、python-docx、openpyxl を使用しています
  • ネイティブの Office 制御に AppleScript を統合しています

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。