mcpField
S
sorted

sorted

github.com/glebisその他401147 回インストール1 日前に更新
リポジトリ

sorted について

sorted は、getSorted.de で請求書、経費、ドイツの税務報告を扱うフリーランス向けブラウザー自動化スキルです。実際の Chrome Beta セッションを使い、請求書作成や PDF ダウンロード、税務報告の確認・提出を行います。一部の操作はプランに依存します。

主な機能

  1. 01請求書の作成、一覧表示、ダウンロード
  2. 02利用可能なプランで請求書をメール送信
  3. 03経費の追加と記録
  4. 04税務上の義務と期限の確認
  5. 05税務報告のプレビューまたは提出

活用シーン

  1. 01クライアント向け請求書の作成
  2. 02請求書の PDF ダウンロード
  3. 03Sorted での経費記録
  4. 04ドイツの税務報告の確認または提出

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/glebis/claude-skills --skill sorted

インストール後、Claude Code で/sortedを入力して読み込まれたか確認します。

詳細

Sorted — フリーランサー向け税務・請求書の自動化

請求書の発行、経費の追跡、ドイツの税務申告書の提出を行うため、実際の Chrome Beta ブラウザーを使って getSorted.de を自動化します。

前提条件

  • --remote-debugging-port=9222 を指定した Chrome Beta(/real-browser の起動手順を使用)
  • ~/.chrome-beta-profile に保存された Google アカウントのセッション
  • agent-browser CLI がインストール済みであること

コマンド

invoice create

Sorted で新しい請求書を作成します。

必須パラメーター: 顧客名、金額 オプション: 時間、単価、説明、支払期限、サービス提供日、顧客の種類(事業者/個人)

invoice download <invoice-number>

ブラウザーの印刷機能ではなく、Sorted から正しくフォーマットされた PDF をダウンロードします。

invoice send <invoice-number> --email <email>

Sorted から直接、請求書をメールで送信します(有料プランのみ)。無料プランでは、PDF をダウンロードして Telegram 経由で送信します。

invoice list

すべての請求書を支払い状況(支払い済み/未払い)とともに一覧表示します。

expense add

経費を追加します。

tax status

現在の納税義務、期限、期限超過の申告書を表示します。

tax preview <report-type> <period>

提出前に税務申告書をプレビューします。

tax submit <report-type> <period>

ELSTER 経由で Finanzamt に税務申告書を提出します(有料プランが必要です)。

Sorted のナビゲーション

アプリの URL:https://app.getsorted.de/

セクションサイドバーのリンク用途
ダッシュボードSorted(ロゴ)概要:納税額、収入、経費
税務Taxes税務申告書、期限、提出
収入Income請求書一覧、請求書の作成/編集
経費Expenses経費の追跡、領収書
税務アドバイザーTax consultantアドバイザーとの連携
個人情報Profile → Personal detailsフリーランサー情報、Steuernummer
銀行口座Profile → Bank accounts (Beta)連携済みの銀行
サブスクリプションProfile → Subscriptionプランの管理
インポートProfile → Import your dataデータの一括インポート
設定Profile → Settingsアプリの設定

税務申告書の種類

申告書ドイツ語名頻度説明
VAT 予定申告Umsatzsteuer-Voranmeldung (UStVA)四半期ごと請求書で徴収した VAT
EU 売上明細書Zusammenfassende Meldung (ZM)四半期ごとEU の顧客からの収益
年次申告EÜR + Einkommensteuererklärung年次損益+所得税

請求書の作成手順

ブラウザー自動化の手順:
  1. 移動: Income → Add をクリック → Create invoice
  2. 顧客を設定: 請求書プレビューの Client details エリアをクリック
    • 既存の顧客を検索するか、Add new client をクリックします
    • Business または Private person を選択します
    • 次の情報を入力します:氏名、VAT/TIN、番地、市区町村、郵便番号、国(オートコンプリートのドロップダウンで入力後、一致する項目をクリック)、メールアドレス(任意)
    • ダイアログの Save をクリックします
  3. 請求書の日付を設定: 「Invoice date」の横の日付をクリックします(初期設定は今日です)
  4. サービス提供日を設定(必須): 請求書の日付の右側にある「Service date」と表示された空欄をクリックします
    • これは日付範囲ピッカーです。開始日を選択し、次に終了日を選択します
    • 同日中のサービスの場合は、同じ日付を 2 回クリックします
    • サービス提供日を設定しないと、保存は失敗しても通知されません。フィールドに赤字で「Required」と表示されます
    • クリック可能な要素には clickable クラスがあり、請求書プレビュー上の位置はおよそ x:734 y:413 です
    • スナップショットに表示されない場合は、JavaScript を使用して、テキスト「Service dateRequired」を含む div を見つけてクリックします
  5. 支払期限を設定: 「Due date」の下にある「Select date」をクリックし、カレンダーから日付を選択します
  6. 明細項目を追加: Add a line をクリックします
    • フィールド:説明(テキスト)、数量(数値)、単位のドロップダウン(h/pcs など)、単価(数値)
    • 折りたたまれた値をクリックすると、再編集できます
  7. VAT: 小規模事業者(Kleinunternehmer)のアカウントでは、自動的に 0% になります。注記には「Service not taxable in Germany」と表示されます
  8. 保存: Save ボタンをクリックします。成功すると、タイトルが「Add invoice」から「Edit invoice」に変わります
注意点
  • サービス日は必須ですが、見落としやすく、保存しようとするまで強調表示されません
  • ドイツ式の数値表記: ピリオドは桁区切りです(1.000 は千)。小数点にはカンマを使います
  • 折りたたまれたフィールド: 保存後、明細項目のフィールドは表示のみの状態に折りたたまれます。表示された値をクリックすると、編集可能なフィールドが再び開きます
  • 請求書番号: 連番で自動生成されます(例:2025-03-21)。クリックすると編集できます

請求書 PDF のダウンロード手順

重要:Chrome CDP の Page.printToPDF は使用しないでください。サイドバーや設定パネルを含むページ全体がキャプチャされます。必ず Sorted の標準 PDF を使用してください。

手順:
  1. 請求書を開きます(Income リストからクリックするか、作成後に移動します)
  2. Save and send ボタン(右上にある青緑色のボタン)をクリックします
  3. **「Email invoice」**ダイアログが表示され、次の項目が含まれています。
    • To フィールド(メールアドレス)
    • Subject(自動入力済み)
    • Message テキストエリア
    • 下部に PDF ファイル名が表示された添付ファイルセクション
  4. PDF のリンク(例:ALL3 DOO BELGRADE-2025-03-21-20260506.pdf)をクリックします
    • cursor:pointer と onclick を持つ generic 要素です
    • テキストは次のパターンに一致します:{CLIENT_NAME}-{INVOICE_NUMBER}-{DATE}.pdf
  5. PDF が ~/Downloads/ にダウンロードされます
  6. ダイアログを閉じます(Close または × をクリックします)
メール送信(有料プラン)

有料プランでは、「Email invoice」ダイアログのすべての機能を利用できます。

  1. To フィールドにクライアントのメールアドレスを入力します(@e49)
  2. 必要に応じて Subject を編集します(「Gleb Kalinin sent you an invoice (#INVOICE-NUMBER)」と自動入力されています)
  3. テキストエリアに Message を入力します
  4. 「Send a copy to my email」チェックボックスを切り替えます(デフォルトでオン)
  5. Email invoice ボタン(@e15)をクリックして送信します

無料プランでは、ダイアログに「メールでの請求書送信はお使いのプランでは利用できません」と表示され、「プランを変更」リンクが表示されます。プランにかかわらず、PDF はダウンロードできます。

代替手段:Telegram での送信(無料プラン)

メール送信を利用できない場合は、PDF をダウンロードし、Telethon 経由で送信します(下記の「ダウンロード後の請求書送信」セクションを参照)。

PDF ファイル名のパターン
{CLIENT_NAME}-{INVOICE_NUMBER}-{YYYYMMDD}.pdf

例:ALL3 DOO BELGRADE-2025-03-21-20260506.pdf

クライアント管理

既存のクライアントは保存され、再利用できます。請求書を作成する際:

  • クライアント選択欄には、保存済みのクライアントがすべて表示されます
  • 検索ボックスで名前を検索します
  • 各名前の横にある小さなボタンから、クライアントを編集または削除できます
クライアントの項目(法人)
  • 事業者名(必須)
  • VAT 番号/TIN(任意)
  • 通り名と番地
  • 市区町村
  • 郵便番号
  • 国(オートコンプリート — 入力して候補をクリックします)
  • メールアドレス
クライアントの項目(個人)
  • 名、姓
  • 住所の項目は法人と同じです

ダウンロード後の請求書送信

PDF をダウンロードした後、Telethon を使用して Telegram 経由で送信します。

from telethon.sync import TelegramClient
import json
from pathlib import Path

config = json.loads((Path.home() / '.telegram_dl' / 'config.json').read_text())
session = str(Path.home() / '.telegram_dl' / 'user')

with TelegramClient(session, config['api_id'], config['api_hash']) as client:
    client.send_file("username", "/path/to/invoice.pdf", caption="message")

Gleb の Sorted アカウント詳細

  • ステータス: Kleinunternehmer(VAT は請求されません)
  • Finanzamt: Berlin - Wedding
  • VAT-ID: DE369692682
  • 税番号: 2337201265
  • 銀行: Revolut Bank UAB, Zweigniederlassung
  • IBAN: DE38 1001 0178 8157 1777 30
  • BIC/SWIFT: REVODEB2
  • プラン: 無料(請求書の発行は可能ですが、税務申告にはアップグレードが必要です)

ブラウザーセッションの設定

必ず /real-browser スキルの起動手順を使用してください。セッション名は実行ごとに一意にしてください。

SESSION=$(LC_ALL=C tr -dc 'a-z0-9' < /dev/urandom | head -c 6)
agent-browser --cdp 9222 --session "$SESSION" open "https://app.getsorted.de/"

Google ログインは保持されるため、毎回再認証する必要はありません。

コメント