MCP
Sealith MCP をローカル実行型クライアントに接続する
HTTP JSON-RPC の MCP endpoint を公開しています。Business プランなら、AI クライアントから secure handoff と監査ログ追記を呼べます。ただしファイル転送の完結性は、クライアントがローカルコマンドやローカルファイルに触れられるかに依存します。
Endpoint
https://www.sealith.com/api/mcp
認証は Authorization: Bearer sl_agent_... です。
サポートするメソッドは initialize、tools/list、tools/call です。
AI 起点の呼び出しでは purpose、jobId、aiProvider、aiClient が必須です。aiModel は任意です。
Business 以上で利用できます。
URL共有と短い text file は広く扱えますが、PDF・画像・Office などのバイナリ file はクライアント実行環境によって完結可否が変わります。
Slack 連携も Business 以上ですが、こちらは MCP ではなく Web アプリ側の workspace 接続と posting policy で扱います。MCP と Slack delivery は同じ handoff / revoke / audit 基盤を共有します。
MCP が向く場面
Claude Code や Cursor のようにローカル実行しやすいクライアントへ handoff 操作を渡したいときに向いています。短い text file は 1 回で完結し、Google Drive や Box の URL共有は即時完了です。PDF・画像・Office などのバイナリは、ローカル環境では helper upload が使いやすく、Claude App や ChatGPT のようなリモート実行型クライアントではクライアント側のネットワークや添付仕様を確認する必要があります。
受信側での広げ方
受信企業も Sealith アカウントを持つなら、受信後の資料を自社 AI で処理する次のワークフローに MCP を使えます。受信の瞬間より、その後の社内処理で効く設計です。
ツール一覧
create_secure_handoff
暗号化ファイル共有または監査付きURL共有の handoff を作成します。
upload_handoff_chunk
generic MCP クライアント向けの後方互換フローです。upload session に base64 chunk を追加します。
complete_handoff_upload
generic MCP クライアント向けの後方互換フローです。chunk upload を完了し、暗号化・確定処理へ進めます。
cancel_handoff_upload
進行中の大容量ファイル upload session を取り消します。
get_handoff_status
handoff 状態を返します。
finalize_handoff
従来の file upload フローや手動制御時に handoff を有効化し、通知を送ります。
receive_handoff
人が送った handoff を AI が受信します。file では暗号パラメータ、url では targetUrl を返します。
revoke_handoff
handoff を共有停止します。
get_handoff_logs
監査ログを返します。
append_audit_context
purpose、jobId、note、result を監査ログへ追記します。
list_handoffs
キーワード・ステータス・宛先・日付でこの token が作成した handoff を検索します。transfer ID を覚えていなくても探せます。
bulk_revoke_handoffs
複数の handoff をまとめて取り消します。理由を監査ログに残せます(最大20件)。
get_org_usage
プランの上限値と今月の転送利用状況(残件数・リセット日)を返します。
verify_audit_integrity
SHA-256 ハッシュチェーンを全件検証し、監査ログの改ざん有無を確認します。コンプライアンス証跡として利用できます。
JSON-RPC 例
MCP クライアントを使わず自前で疎通確認する場合は、text file / binary file / URL / receive の4パターンを押さえると全体像がつかめます。binary file はクライアント側のローカル実行権限も合わせて確認してください。
initialize
{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {}
}tools/list
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/list"
}tools/call create_secure_handoff
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "create_secure_handoff",
"arguments": {
"purpose": "contract_review",
"jobId": "job_20260423_001",
"aiProvider": "anthropic",
"aiClient": "claude_code",
"aiModel": "claude-sonnet-4",
"type": "file",
"fileName": "nda.txt",
"fileSizeBytes": 32,
"textContent": "Sealith MCP inline upload test",
"recipients": [{ "email": "legal@example.com", "name": "法務担当" }],
"message": "レビューをお願いします。",
"securityMode": "standard",
"expiresInHours": 72,
"maxDownloads": 3,
"sensitivityLevel": "confidential"
}
}
}tools/call create_secure_handoff (大容量 file の開始)
{
"jsonrpc": "2.0",
"id": 6,
"method": "tools/call",
"params": {
"name": "create_secure_handoff",
"arguments": {
"purpose": "board_pack_review",
"jobId": "job_20260507_001",
"aiProvider": "anthropic",
"aiClient": "claude_code",
"idempotencyKey": "board-pack-2026-05",
"type": "file",
"fileName": "board-pack.pdf",
"fileSizeBytes": 10485760,
"mimeType": "application/pdf",
"recipients": [{ "email": "legal@example.com" }],
"securityMode": "standard"
}
}
}tools/call create_secure_handoff (URL共有)
{
"jsonrpc": "2.0",
"id": 5,
"method": "tools/call",
"params": {
"name": "create_secure_handoff",
"arguments": {
"purpose": "dd_link_review",
"jobId": "job_20260423_002",
"aiProvider": "openai",
"aiClient": "chatgpt_connector",
"type": "url",
"url": "https://drive.google.com/file/d/xxx/view",
"title": "DD資料共有リンク",
"recipients": [{ "email": "legal@example.com", "name": "法務担当" }],
"message": "リンク先の資料確認をお願いします。",
"securityMode": "standard",
"expiresInHours": 72,
"maxDownloads": 3,
"sensitivityLevel": "confidential"
}
}
}tools/call receive_handoff
{
"jsonrpc": "2.0",
"id": 4,
"method": "tools/call",
"params": {
"name": "receive_handoff",
"arguments": {
"transferId": "tr_xxxxxxxxxxxxxxxx",
"passcode": "A2b!C3d@E4f#G5h$",
"purpose": "contract_review",
"jobId": "job_20260423_001",
"aiProvider": "anthropic",
"aiClient": "claude_app",
"recipientEmail": "legal@example.com"
}
}
}Claude Code
Claude Code の公式ドキュメントでは、リモート MCP は HTTP transport を推奨しています。CLI で追加するか、.mcp.json に HTTP server を定義できます。
claude mcp add --transport http sealith https://www.sealith.com/api/mcp \
--header "Authorization: Bearer ${SEALITH_AGENT_TOKEN}"{
"mcpServers": {
"sealith": {
"type": "http",
"url": "https://www.sealith.com/api/mcp",
"headers": {
"Authorization": "Bearer ${SEALITH_AGENT_TOKEN}"
}
}
}
}Cursor
Cursor は公式に local / remote の MCP transport を持っています。ローカル実行型のため、helper を使う binary file 転送とも相性が良いです。設定では mcpServers に URL と header を渡し、トークンは直接書かず環境変数参照にしてください。
{
"mcpServers": {
"sealith": {
"url": "https://www.sealith.com/api/mcp",
"headers": {
"Authorization": "Bearer ${env:SEALITH_AGENT_TOKEN}"
}
}
}
}ChatGPT / Claude App
ChatGPT の custom connectors や Claude App の remote MCP は利用できますが、binary file 転送はローカル helper や shell upload の可否がクライアント実装に依存します。現時点では URL共有、監査ログ、短い text file を先に検証し、PDF・画像・Office の完結性は個別クライアントで確認する前提が安全です。
1Password
1Password は MCP クライアントではなく、Sealith Agent Token を平文で持たないための運用導線として使うのが自然です。1Password Environments や CLI で環境変数に供給してから、Cursor / Claude Code の設定で参照します。
1. 1Password Environments で SEALITH_AGENT_TOKEN を管理する
2. ローカル .env file destination か 1Password CLI で環境変数として取り出す
3. Cursor / Claude Code の MCP 設定では平文ではなく環境変数参照を使う
例:
SEALITH_AGENT_TOKEN=sl_agent_...実行環境の考え方
Claude Code / Cursor はローカル helper やローカルファイル参照と相性が良く、binary file 転送を組み込みやすいクライアントです。
Claude App / ChatGPT は remote MCP や custom connector としては接続できますが、binary file 転送の完結性はクライアント側の shell / network / attachment 仕様に依存します。
エラーコード
| code | message | 意味 |
|---|---|---|
| -32600 | invalid_request | JSON-RPC の形式が不正です。method がありません。 |
| -32601 | method_not_found | initialize / tools/list / tools/call 以外を呼んでいます。 |
| -32602 | tool_name_required | tools/call で params.name がありません。 |
| -32000 | tool_call_failed | 下位の Agent API 呼び出しが失敗しました。content 内に API エラー JSON が入ります。 |
| -32001 | feature_not_available_on_plan | Business 未満のため MCP を使えません。 |
使い分け
アプリやバックエンドへ組み込むなら REST API + OpenAPI が向いています。
Claude Code や Cursor のようなローカル実行型クライアントに handoff 操作を渡すなら MCP が向いています。text file、binary file、URL共有を同じ契約で扱えます。
どちらも同じ Agent Token 制約を使うので、運用ルールを分けずに済みます。
監査ログは REST と MCP のどちらから呼んでも同じ形式で蓄積されます。