FrankKi について
FrankKiは、B2Bチームや開発者向けのホスト型MCPサーバーで、エージェントが世界各地へ紙の手紙を作成、見積もり、発送、追跡できます。プレビューや承認管理、コンプライアンスを意識したアーカイブ機能も備えています。
主な機能
- 01プレビュー付きの書式済み手紙を作成
- 02郵送先住所の検証と検索
- 03料金見積もりと注文追跡
- 04手紙の個別・一括発送
- 05承認キューと支出制限
- 06GoBDアーカイブとDATEVエクスポート
活用シーン
- 01支払い督促を郵送
- 02契約や注文の確認書を発送
- 03顧客向け案内状の送付を自動化
- 04正式通知の配達状況を追跡
MCP 対応
MCPクライアントに、実物の郵便物を作成、見積もり、発送、追跡するツールを提供します。OAuth 2.1またはAPIキーで認証する、ホスト型のStreamable HTTP MCPサーバーです。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.frankki.appclaude mcp add --transport http app-frankki-letters https://mcp.frankki.app{"mcpServers":{"app-frankki-letters":{"type":"http","url":"https://mcp.frankki.app"}}}Cursor で開く{"servers":{"app-frankki-letters":{"type":"http","url":"https://mcp.frankki.app"}}}VS Code で開く{"mcpServers":{"app-frankki-letters":{"type":"http","url":"https://mcp.frankki.app"}}}{"mcpServers":{"app-frankki-letters":{"serverUrl":"https://mcp.frankki.app"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
4| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| reasoning | string | いいえ | |
| checkRender | boolean | いいえ | レンダリング経路(Composer + Rasterizer)も確認します。デフォルトは false です。 EN: |
詳細
FrankKi MCP
ホスト型のリモート MCP サーバーです。インストールもセルフホストも不要です。 エージェントを https://mcp.frankki.app(リモート、streamable-http、OAuth 2.1 または API キー)に接続してください。このリポジトリは、このサーバーの公開マニフェスト、ドキュメント、変更履歴です。サーバー自体はクローズドソースで、当社のインフラ上で稼働しているため、ここに src/ ディレクトリはありません。
AI エージェントのための物理郵便です。 1 回のツール呼び出しで、FrankKi MCP を使ってエージェントが世界中の住所へ実際に印刷した手紙を送れます。作成、料金確認、送付、追跡が可能です。文書は印刷され、郵便料金の処理が行われ、世界各地の郵便パートナーによって配達されます。
これはFrankKiの公式 Model Context Protocol(MCP)サーバーです。B2B および開発者向けに構築されており、エージェント、バックエンド、自動化されたワークフローで実際の手紙を大規模に世界中へ送れるようにします。
ウェブサイト:frankki.app · 人間とエージェントのための MCP:frankki.app/mcp(英語:frankki.app/en/mcp)
目次
- FrankKi MCP とは?
- MCP 経由で物理郵便を送る理由
- エージェントができること
- 人間向けクイックスタート
- AI エージェント向けクイックスタート
- 認証
- ウォレットと料金
- 安全性と人間参加型のプロセス
- サンドボックス
- コンプライアンス
- 送付の実際の仕組み
- 検出とサーバーマニフェスト
- ドキュメント
- よくある質問
- リンク
FrankKi MCP とは?
FrankKi MCP は、FrankKiの物理郵便インフラにエージェントからアクセスするためのインターフェースです。FrankKi は手紙を作成、印刷し、実際に郵送します。このサーバーは、その機能をソフトウェアに提供します。モデルが手紙を作成して送信すると、実際の文書が受取人の住所に届きます。
配達範囲は世界中で、各配達先の国における郵便パートナーが配達を担当します。主にB2B および開発者向けの製品です。アシスタント、運用自動化、または物理的な書類を作成して発送する必要があるバックエンドを構築している場合、これは物理的な出力を担うレイヤーとなります。
MCP 経由で物理郵便を送る理由
正式通知や法的通知、取引関連やコンプライアンス関連の郵便、契約確認、督促やリマインダー、顧客のオンボーディング、公式な連絡など、今でも紙で届く必要があるものがあります。こうしたワークフローは通常、「ここから人間が印刷して郵便ポストまで持っていく」というところで行き詰まります。FrankKi MCP はその手順をなくします。手紙を作成したエージェントが、そのまま世界中へ送付し、配達状況を追跡できます。
一般的な用途:
- 督促および支払いのリマインダー
- 解約、解除、異議申し立て、その他の正式な通知
- 契約および注文の確認
- 顧客およびアカウントへの通知
- オンボーディングおよび歓迎の手紙
- 最後の手順として物理的な手紙の送付が必要なあらゆるワークフロー
エージェントでできること
このサーバーは、用途を絞ったスコープ付きのツールセットを公開します。基本的な送信フローは次のとおりです。
| ツール | 内容 | 副作用 |
|---|---|---|
address_validate | 送付先の国の郵便規則に照らして宛先住所を検証します | 読み取り専用 |
address_search_company | 会社名から郵便住所を検索します | 読み取り専用 |
template_list | 再利用可能な手紙のテンプレートを閲覧します | 読み取り専用 |
letter_create_draft | プレーンテキストと宛先から、プロフェッショナルな書式の手紙を作成し、プレビューを返します | 下書きを作成します。送信はしません |
shipping_quote | 確定前に、指定した宛先への送信にかかる正確な料金を確認します | 読み取り専用 |
wallet_balance | プリペイドウォレットの残高を確認します | 読み取り専用 |
order_send | 1通の物理的な手紙を送信し、ウォレットに課金します。maxCostEuros ガードに対応しています | 料金が発生し、紙の手紙が郵送されます |
order_send_batch | 一度の呼び出しで、差し込み項目を使って複数の宛先に一括送信します | 料金が発生し、紙の手紙が郵送されます |
approval_submit | 直接送信する代わりに、手紙を二者承認のキューに送ります | キューに追加します。送信はしません |
order_status | 印刷、投函、配達の各段階で手紙を追跡します | 読み取り専用 |
wallet_topup_link | 安全な Stripe チャージ用リンクを作成します | 支払いリンクを作成します |
基本的なフロー以外にも、添付ファイル、レターヘッドと署名、送信者プロフィール、送信プリセット、予約送信、注文のキャンセル、投函証明(Einlieferungsbeleg)、クライアント(Mandanten)の検索、GoBD/DATEV アーカイブのエクスポートに対応するツールがあります。スコープと副作用を含む全ツールの一覧は、docs/tools.md をご覧ください。権威あるバージョン管理された一覧は、常にサーバーが MCP tools/list メソッドから返す内容です。
文書の作成はテキストを基本とします。手紙の内容と宛先を指定すると、FrankKi が適切にレイアウトされた文書を作成します(デフォルトは DIN 5008)。添付ファイルにも対応しています。事前にレンダリングした任意の PDF を送信する機能は、意図的にプラットフォームに含めていません。
人間向けクイックスタート
何かをクローンしたり、セルフホストしたりする必要はありません。FrankKi MCP サーバーはホスト済みです。MCP クライアントを接続し、認証するだけです。
1. アクセスを取得します。 ダッシュボードの frankki.app/mcp でパートナーアカウントを作成し、キーを発行します。ウォレットに入金するか、まずはサンドボックスを利用してください(実際の郵便物は送られません)。
2a. Claude Desktop およびネイティブのリモート接続に対応するクライアント。 エンドポイントを指定したカスタムコネクターを追加します。初回利用時に、ブラウザーで OAuth 認証が実行されます。
{
"mcpServers": {
"frankki": {
"url": "https://mcp.frankki.app"
}
}
}
2b. stdio のみを使用するクライアント(旧バージョンの Claude Desktop、一部の Cursor 構成)。mcp-remote でブリッジします。
{
"mcpServers": {
"frankki": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.frankki.app"]
}
}
}
2c. API キーを使用したヘッドレス接続(対話型ブラウザーなし)。ベアラーヘッダーとしてキーを渡します。
{
"mcpServers": {
"frankki": {
"command": "npx",
"args": [
"-y", "mcp-remote", "https://mcp.frankki.app",
"--header", "Authorization: Bearer ${FRANKKI_API_KEY}"
]
}
}
}
2d. Claude Code。 次のコマンドを実行します。
claude mcp add --transport http frankki https://mcp.frankki.app
クライアントを再起動すると、モデルから手紙を送信できるようになります。たとえば、次のように依頼します。「登録済みの住所に、この支払いのリマインダーを送ってください。ただし、まず料金を見せてください。」
Cursor、VS Code、Windsurf、Zed、OpenAI Agents SDK、LangChain のステップごとのガイドは、docs/clients.md をご覧ください。
AI エージェント向けクイックスタート
このサーバーは標準的な ストリーミング可能な HTTP MCP です。ディスカバリー、エンドポイント、認証情報を以下にまとめています。
- エンドポイント:
https://mcp.frankki.app - レジストリ名:
app.frankki/letters(Official MCP Registry で公開、バージョン 1.0.0) - 認証メタデータ:
https://mcp.frankki.app/.well-known/oauth-authorization-server(OAuth 2.1、動的クライアント登録)、または静的なベアラー API キー - 機械可読な概要:
https://frankki.app/llms.txt
TypeScript
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const transport = new StreamableHTTPClientTransport(
new URL("https://mcp.frankki.app"),
{ requestInit: { headers: { Authorization: `Bearer ${process.env.FRANKKI_API_KEY}` } } }
);
const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(transport);
const { tools } = await client.listTools();
console.log(tools.map((t) => t.name));
const price = await client.callTool({
name: "shipping_quote",
arguments: { recipientCountry: "US", deliveryType: "standard" },
});
Python
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
url = "https://mcp.frankki.app"
headers = {"Authorization": f"Bearer {FRANKKI_API_KEY}"}
async with streamablehttp_client(url, headers=headers) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
print([t.name for t in tools.tools])
認証
クライアントごとに、次の2つのモードから選択できます。
- OAuth 2.1 は、インタラクティブなクライアント(Claude Desktop、IDE)向けです。同意画面には、エージェントに許可される操作が表示され、読み取り専用スコープはデフォルトで許可されます。エンドユーザーが自身の FrankKi アカウントを接続する場合に最適です。
- API キー(ベアラートークン)は、ヘッドレスエージェント、サーバー、CI 向けです。ダッシュボードでキーを発行し、ローテーションできます。各キーには利用上限と許可するツールのスコープを設定できるため、価格を調べるキーと支払いができるキーを分けられます。
ウォレットと料金
FrankKi はプリペイドウォレット方式です。ウォレットに入金(Stripe 経由)すると、送信のたびに残高から差し引かれます。後払い請求が突然発生することはなく、残高不足のエージェントは支払いを実行できません。
- 料金は宛先の国によって異なります。ドイツ国内の通常郵便は3,49 EURからで、国際郵便の料金は宛先ごとに設定されています。
- 書留など、ほかのサービスレベルも宛先に応じて利用できます。
- 利用量に応じた段階料金(Staffelpreise)により、送付数が増えると1通あたりの料金が下がります。
order_send を実行する前に、必ず shipping_quote を呼び出して、最新の正確な料金を確認してください。料金はサーバーが返す値が正式なものであり、ハードコードしないでください。
安全性と人間による確認
物理的な郵便物の送付は取り消せず、費用も発生するため、プラットフォームはデフォルトで慎重に動作します。
- 正確なアノテーション。
order_sendとorder_send_batchは破壊的操作、読み取りツールは読み取り専用としてアノテーションされています。エージェントはこれに基づいて実行を制御できます。また、order_sendではmaxCostEuros上限を指定でき、最新の料金がその上限を超えた場合は送信を中止します。 - 発送前の承認。 送信は承認キューに入ります。ユーザーは、返された承認リンクからログイン済みポータルで判断します。エージェントによる承認が可能になるのは、別途、明示的な自己承認の許可が与えられた後に限るよう、OAuth の強化に備えています。認可に関する仕様とリリース状況をご覧ください。
- キーごとの利用上限とツールのスコープ。 自動化キーの支出上限を設定し、呼び出し可能なツールを制限できます。
- 確定前のプレビュー。
letter_create_draftはレンダリング済みのプレビューを返し、shipping_quoteは料金を返すため、order_sendの前にエージェントまたは人間が確認できます。
サンドボックス
郵送せずに一連のフロー全体をテストできます。ダッシュボードからサンドボックスキーをリクエストして、同じエンドポイントを指定すると、テスト用の入金済みウォレットが利用できます。文書の作成、料金、ステータスは本番環境と同じように動作しますが、用紙は印刷されず、料金も発生しません。統合機能をエンドツーエンドで構築してデモを行い、その後、ライブキーに切り替えてください。
コンプライアンス
必要とするチーム向けに、エンタープライズおよび EU の基準に対応しています。
- すべての送信をGoBD 準拠でアーカイブし、領収書を取得できます。
- 会計および文書管理向けに、DATEV と汎用のDMS形式でエクスポートできます。
- DSGVO / GDPR:郵便物のデータは EU 内で処理されます。
- プラットフォームとメッセージは英語とドイツ語で利用できます。
送信の実際の流れ
- エージェントが本文と宛先を指定して
letter_create_draftを呼び出します。FrankKi がプロ品質の書式で文書をレンダリングします。 shipping_quoteが宛先に応じた正確な料金を返します。エージェント、または承認キューを通じた人間が確認します。order_sendが郵便物を承認キューに入れます。承認リンクをユーザーに表示してください。承認された判断に従って発送処理が進みます。- FrankKi が郵便物を印刷し、郵便パートナーを通じて世界各地への配達を依頼します。
order_statusを通じて、印刷済み、郵便局への引き渡し済み、対応地域では配達済みのステータスが返されます。order_einlieferungsbelegは郵便局への引き渡し証明書を返します。
ディスカバリーとサーバーマニフェスト
ディレクトリやレジストリ向けに、このリポジトリでは server.json(Official MCP Registry スキーマ、名前 app.frankki/letters)と、リポジトリレベルの llms.txt を公開しており、AI を活用したディスカバリーに利用できます。
MCP ディレクトリ経由でこのサーバーを見つけましたか?正式な情報源は、常に frankki.app/mcp です。
ドキュメント
| ドキュメント | 内容 |
|---|---|
| docs/tools.md | 各ツールのスコープ、副作用、標準的な送信フロー、エラーコード |
| docs/authentication.md | OAuth 2.1、API キー、スコープの一覧、推奨される設定 |
| docs/clients.md | Claude Desktop、Claude Code、Cursor、VS Code、Windsurf、Zed、OpenAI Agents SDK、LangChain のセットアップ |
| docs/use-cases.md | 督促、契約解除、コンプライアンス関連の郵便物、オンボーディング、エージェントネイティブな製品 |
| examples/ | 実行可能な TypeScript および Python クライアント(サンドボックスを優先し、送信には明示的なフラグが必要です) |
FAQ
手紙は本当に印刷して郵送されますか?それともメールですか? 本物の紙の手紙です。印刷、切手の貼付、郵便パートナーによる配達が行われます。メールではありません。
どの国に配達できますか?
世界中に配達できます。特定の宛先への配達可否と料金を確認するには、shipping_quote を使用してください。
サーバーは自分でホストする必要がありますか?
いいえ。FrankKi がホストします。このリポジトリにはドキュメント、server.json、サンプルが含まれます。クライアントまたはエージェントからホスト済みのエンドポイントに接続してください。
これは個人向けですか?それともビジネス向けですか? 主に B2B と開発者向けです。物理的な郵便物を大規模に送る必要があるエージェント、バックエンド、自動化されたワークフローを対象としています。
エージェントが暴走したらどうなりますか? ウォレット残高またはキーの支出上限を超えて支出することはできません。機密性の高い手紙は人間の承認キューを必須にできます。また、破壊的なツールには明確な注記があります。サンドボックスから始めてください。
MCP を使わない API はありますか? はい。FrankKi は REST API も提供しています。MCP サーバーはエージェント向けのネイティブな入り口です。frankki.app/mcp をご覧ください。
リンク
- ホームページ: https://frankki.app
- 人間とエージェント向けの MCP: https://frankki.app/mcp · https://frankki.app/en/mcp
- 機械可読な概要: https://frankki.app/llms.txt
- エンドポイント: https://mcp.frankki.app
- レジストリ名:
app.frankki/letters(Official MCP Registry にバージョン 1.0.0 で公開)
ソフトウェア向けの物理郵便インフラを提供する FrankKi のチームが開発しました。エージェントやワークフローがプリンターに触れることなく、世界中に本物の手紙を送れます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。