Skip to main content
Glama
The-Focus-AI

Buttondown MCP Server

by The-Focus-AI

ボタンダウン API 統合

Buttondown ニュースレター サービス用の包括的な TypeScript 統合。ニュースレター、下書き、分析を管理するための CLI インターフェイスと Model Context Protocol (MCP) サーバーの両方を提供します。

特徴

  • 複数のインターフェース:

    • 直接対話するためのコマンドラインインターフェース(CLI)

    • AI/LLM統合のためのモデルコンテキストプロトコル(MCP)サーバー

    • カスタム統合のためのプログラム可能な TypeScript API

  • コア機能:

    • メールの下書き管理(作成、更新、削除)

    • メールスケジュールシステム

    • 分析情報の取得とフォーマット

    • リスト管理

    • タグ管理

  • 安全

    • APIキー管理のための1Password統合

    • 環境変数のサポート

    • 安全な資格情報の取り扱い

  • 開発者エクスペリエンス:

    • 完全なTypeScriptサポート

    • 包括的な型定義

    • 実際のAPIレスポンスベースのタイプ

    • 組み込みのテストユーティリティ

Related MCP server: ClickUp MCP Server

インストール

# Install using pnpm (recommended)
pnpm install

# Or using npm
npm install

# Or using yarn
yarn install

構成

API キーは次の 2 つの方法で提供できます。

  1. 環境変数:

    export BUTTONDOWN_API_KEY=your_api_key
  2. 1Password CLI(推奨):

    • APIキーを1Passwordのop://Development/Buttondown API/notesPlainに保存します。

    • 統合により、必要に応じて自動的に取得されます

使用法

CLIインターフェース

# List all emails
buttondown emails list

# Create a new draft
buttondown draft create <file>

# Schedule an email
buttondown schedule set <draft-id> <relative-time>

# Get analytics
buttondown analytics get <draft-id>

MCPサーバー

  1. サーバーを起動します。

    pnpm mcp:start
  2. インスペクターから開始します(開発用):

    pnpm mcp:inspect

利用可能な MCP ツール:

  • list_emails : オプションのステータスフィルタリングを使用してすべてのメールを一覧表示します

    {
      "status": "draft" // Optional: "draft", "scheduled", "sent"
    }
  • create_draft : 新しいメールの下書きを作成する

    {
      "content": "Email content in markdown",
      "title": "Optional email subject"
    }
  • get_analytics : 特定のメールの分析情報を取得する

    {
      "draftId": "email-id-here"
    }
  • schedule_draft : メールの送信スケジュールを設定する

    {
      "draftId": "email-id-here",
      "scheduledTime": "2024-03-27T10:00:00Z"
    }

プログラムによる使用

import { ButtondownAPI } from "api-integrator";

// Initialize the client
const api = new ButtondownAPI(); // Will use 1Password or env var

// List drafts
const drafts = await api.getDrafts();

// Create a draft
const draft = await api.createEmail({
  subject: "My Newsletter",
  body: "Content here",
  status: "draft",
});

// Schedule an email
const scheduled = await api.scheduleEmail(draft.id, "2024-03-27T10:00:00Z");

// Get analytics
const analytics = await api.getEmailStats(draft.id);

発達

# Build the project
pnpm build

# Run tests
pnpm test

# Start MCP server in development mode
pnpm mcp:inspect

# Build MCP server
pnpm mcp:build

テスト

このプロジェクトにはいくつかの種類のテストが含まれています。

  • コア機能のユニットテスト

  • APIインタラクションの統合テスト

  • CLIコマンドテスト

  • MCP サーバーテスト

次のテストを実行します:

pnpm test

プロジェクト構造

.
├── src/
│   ├── api/          # Core API client
│   ├── cli/          # CLI implementation
│   ├── mcp/          # MCP server
│   ├── types/        # TypeScript definitions
│   └── utils/        # Shared utilities
├── tests/            # Test files
├── api-responses/    # Cached API responses
└── memory-bank/      # Project documentation

貢献

  1. リポジトリをフォークする

  2. 機能ブランチを作成します( git checkout -b feature/amazing-feature

  3. 変更をコミットします ( git commit -m 'Add some amazing feature' )

  4. ブランチにプッシュする ( git push origin feature/amazing-feature )

  5. プルリクエストを開く

ライセンス

ISCライセンス - 詳細についてはライセンスを参照してください

謝辞

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

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/The-Focus-AI/buttondown-mcp'

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