mcpField
M
Mood Booster Agent

Mood Booster Agent

リモート
github.com/edge-claw開発ツール131 週間前に更新
リポジトリ

Mood Booster Agent について

Mood Booster Agentは、ERC-8004に登録された、励ましのメッセージを提供するエージェントです。オンチェーン連携の実装例として、MCPツールで発見、USDCチップ、評判フィードバックを扱い、トランザクションを検証します。

主な機能

  1. 014カテゴリの励ましメッセージ
  2. 02チップとフィードバック報告ツール
  3. 03ERC-8004のID・評判連携
  4. 04オンチェーンのチップとフィードバック検証
  5. 05サービス統計とチップガイド

活用シーン

  1. 01励ましやプログラミングジョークの取得
  2. 02エージェントの発見とMCPツールの呼び出し
  3. 03USDCチップの送信と取引報告
  4. 04オンチェーンの評判フィードバック送信

MCP 対応

SSEを使って、メッセージ取得、チップ情報、チップ確認、フィードバック報告など6つのツールをMCP経由で公開します。任意のMCPクライアントからSSEエンドポイントに接続できます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://aws.tail177fbd.ts.net/sse
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

ムードブースターエージェント

英語 | 中文

MCPプロトコル経由で元気が出るメッセージを届ける、ERC-8004に登録されたAIエージェントです。気分がよくなりましたか? 0.001 USDCをチップとして贈りましょう!

このプロジェクトの目的

ERC-8004エージェントとのやり取りの流れを完全に実装したリファレンス実装です。

  1. オンチェーンでの検出 — Identity Registryを照会して、エージェントのMCPエンドポイントを見つけます
  2. MCP通信 — SSE経由で接続し、ツールを呼び出して結果を取得します
  3. USDCでのチップ — オンチェーンの少額決済でエージェントに報酬を贈ります
  4. 評判フィードバック — Reputation Registryにオンチェーンのフィードバックを送信します(giveFeedback)
  5. オンチェーンでの検証 — サーバーがトランザクションレシートを使ってチップとフィードバックを検証します

この5つの手順はすべて、ERC-8004プロトコルのコントラクト上に追跡可能なオンチェーン記録を残すため、今後のエコシステムのエアドロップの対象となる資格をウォレットが得られます。

┌──────────────┐     ┌──────────────┐     ┌──────────────┐     ┌──────────────┐
│  ERC-8004    │ --> │  MCP Server  │ --> │  USDC Tip    │ --> │  Reputation  │
│  Identity    │     │  (SSE)       │     │  (ERC-20)    │     │  Registry    │
│  Registry    │     │              │     │              │     │              │
│  agentId     │     │  cheer_me_up │     │  0.001 USDC  │     │ giveFeedback │
│  tokenURI    │     │  confirm_tip │     │  6 chains    │     │ on-chain     │
│  agentWallet │     │  report_fbk  │     │              │     │ reputation   │
└──────────────┘     └──────────────┘     └──────────────┘     └──────────────┘
    Discover              Call                  Tip                Feedback

オンチェーン情報

チェーンagentIdエクスプローラー
BSC23139bscscan.com
Base24692basescan.org
Ethereum28289etherscan.io
Arbitrum591arbiscan.io
Optimism431optimistic.etherscan.io
Polygon233polygonscan.com
  • Identity Registry: 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432
  • Reputation Registry: 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63
  • MCPエンドポイント: https://oc-001.tail177fbd.ts.net/mcp/sse
  • チップ用ウォレット: 0x4f5caa4fa9Dd7F92A687582b0e09234bEf49F80a

MCPツール

ツール説明
cheer_me_up温かく元気が出るメッセージを取得します(励まし/褒め言葉/知恵/ジョーク)
get_tip_info自動送金用のチップ詳細をJSON形式で取得します
confirm_tipオンチェーン検証を伴う、完了済みのUSDCチップを報告します
report_feedbackERC-8004のgiveFeedbackトランザクションを報告します — 追跡可能なプロトコルとのやり取りをオンチェーンに残します
how_to_tipコード例付きのチップ方法をまとめたガイドを取得します
get_statsサービスの統計情報を確認します

クイックスタート

サーバーを実行する
cd server
npm install
node index.mjs
# MCP SSE: http://localhost:3004/sse
# REST API: http://localhost:3004/api/cheer
Docker
docker build -t mood-booster-agent .
docker run -p 3004:3004 mood-booster-agent
最初から最後までの一連の流れ
cd scripts && npm install

# Dry-run: discover → call MCP → on-chain feedback (no USDC tip)
node discover_and_tip.mjs --agent-id 23139 --chain bsc --wallet-key 0xYOUR_KEY --dry-run

# Full loop: discover → call → tip → confirm → feedback
node discover_and_tip.mjs --agent-id 23139 --chain bsc --wallet-key 0xYOUR_KEY

# Skip feedback
node discover_and_tip.mjs --agent-id 23139 --chain bsc --wallet-key 0xYOUR_KEY --no-feedback
REST API(MCPクライアント不要)
curl https://oc-001.tail177fbd.ts.net/mcp/api/cheer
curl "https://oc-001.tail177fbd.ts.net/mcp/api/cheer?category=joke"

Claude Codeで使う

~/.claude/claude_code_config.jsonに次の内容を追加します。

{
  "mcpServers": {
    "mood-booster": {
      "type": "sse",
      "url": "https://oc-001.tail177fbd.ts.net/mcp/sse"
    }
  }
}

Claude Codeで次のように入力できます。

> Cheer me up!
> Tell me a programming joke
> How do I tip this agent?

任意のMCPクライアントで使う

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";

const transport = new SSEClientTransport(new URL("https://oc-001.tail177fbd.ts.net/mcp/sse"));
const client = new Client({ name: "my-agent", version: "1.0.0" });

await client.connect(transport);
const result = await client.callTool({ name: "cheer_me_up", arguments: { category: "random" } });
console.log(result.content[0].text);
await client.close();

オンチェーンでの検出

任意のエージェントがブロックチェーンからこのサービスを直接検出できます。

import { ethers } from "ethers";

const registry = new ethers.Contract(
  "0x8004A169FB4a3325136EB29fA0ceB6D2e539a432",
  ["function tokenURI(uint256) view returns (string)"],
  new ethers.JsonRpcProvider("https://bsc-dataseed.binance.org/")
);

const uri = await registry.tokenURI(23139);  // agentId on BSC
const metadata = JSON.parse(atob(uri.split(",")[1]));
console.log(metadata.services[0].endpoint);  // → MCP endpoint URL

プロジェクト構成

├── server/                 # MCP Server (Express + SSE)
│   ├── index.mjs           # Main server — 6 MCP tools
│   ├── messages.json       # Message library (32 messages, 4 categories)
│   └── package.json
├── scripts/                # Client tools
│   ├── discover_and_tip.mjs  # Full loop: discover → call → tip → feedback
│   ├── test_mcp.mjs          # Quick MCP connection test
│   ├── update_uri.mjs        # Update on-chain agentURI
│   └── gen_wallets.mjs       # Generate test wallets
├── metadata/
│   └── mood_agent.json     # Agent metadata (stored on-chain as base64)
├── Dockerfile              # Container build
├── deploy.sh               # One-click deploy to server
└── restart.sh              # Server restart script

技術スタック

  • アイデンティティ: ERC-8004 — AIエージェントのIdentity Registry
  • 評判: ERC-8004 — Reputation Registry経由のオンチェーンフィードバック
  • プロトコル: SSE上のMCP(Model Context Protocol)
  • 決済: BSC/Base/Ethereum上のUSDC(ERC-20)
  • ランタイム: Node.js、Express、ethers.js
  • インフラストラクチャ: Tailscale Funnel(HTTPSリバースプロキシ)

作者

ライセンス

MIT

コメント

MCP は初めてですか?

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

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