shared-supabase-mcp-minimal
v8.3.1
Published
XBRL Financial Data MCP Server for Supabase with Claude Desktop compatibility
Maintainers
Readme
XBRL Financial Data API v6.0 - MCP Server Minimal Edition
XBRL財務データAPIサービス - Claude Desktop MCPサーバーとして日本の上場企業の有価証券報告書をMarkdown形式で提供
🚀 v5.1.0 - MCP統合リリース
主要アップデート
- ✅ 2層認証システム - JWTと独自APIキー(xbrl_v1_プレフィックス)の組み合わせ
- ✅ MCP完全対応 - Claude Desktopから直接アクセス可能
- ✅ Supabase Edge Function Gateway - 高速・セキュアなAPI処理
- ✅ Private Schemaセキュリティ - APIキーをprivateスキーマで保護
- ✅ PBKDF2ハッシュ化 - APIキーの安全な保存
🌟 特徴
- 286,742件の財務文書を収録
- 1,100社以上の上場企業データ
- 4年分のデータ - 2020年〜2024年の財務情報
- Markdown形式で即座に利用可能
- HMAC-SHA256セキュア認証
- レート制限対応(プラン別)
- キャッシュによる高速レスポンス
- 99.9% SLA(Pro以上)
💰 料金プラン
| プラン | 月額 | アクセス | |--------|------|--------------| | Free Trial | 無料 | 直近1年間 | | Standard | ¥2,980 | 無制限 |
🔧 技術スタック
- Frontend/API: Next.js 14
- Database: Supabase (PostgreSQL)
- Storage: Supabase Storage
- Deployment: Vercel
- Security: HMAC-SHA256, Rate Limiting
- Monitoring: Sentry
- CDN: Cloudflare
📦 インストール
# Clone repository
git clone https://github.com/ruisu2000p/xbrl-api-minimal.git
cd xbrl-api-minimal
# Install dependencies
npm install
# Setup environment variables
cp .env.example .env.local
# Edit .env.local with your Supabase credentials
# Run development server
npm run dev🔑 環境変数
# Supabase
NEXT_PUBLIC_SUPABASE_URL=your-supabase-url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
# Security
API_KEY_SECRET=your-api-key-secret-minimum-32-chars
# Application
NEXT_PUBLIC_APP_URL=http://localhost:3000
NODE_ENV=development📚 API ドキュメント
認証
全てのAPIエンドポイントは認証が必要です:
curl -H "X-API-Key: your-api-key" \
https://api.xbrl-data.com/v1/companies主要エンドポイント
企業検索
GET /api/v1/companies?search=トヨタ§or=輸送用機器&fiscal_year=2024企業詳細
GET /api/v1/companies/{id}ヘルスチェック
GET /api/health詳細は OpenAPI仕様書 を参照
🧪 テスト
# 全テスト実行
npm test
# 統合テスト
npm run test:integration
# セキュリティテスト
npm run test:security
# CI用テスト
npm run test:ci🚀 デプロイ
# Staging環境
npm run deploy:staging
# Production環境
npm run deploy:production📊 パフォーマンス
- レスポンス時間: < 200ms (キャッシュヒット時)
- 同時接続数: 最大200
- 稼働率: 99.9% SLA (Pro以上)
- データ更新: リアルタイム(Standard以上)
🔒 セキュリティ
- HMAC-SHA256によるAPIキー認証
- レート制限(プラン別)
- SQLインジェクション対策
- XSS対策
- CORS設定
- WAF (Web Application Firewall)
📈 アーキテクチャ
┌─────────────┐ ┌──────────────┐ ┌─────────────┐
│ Client │────▶│ API Layer │────▶│ Service │
│ (Next.js) │ │ (Next.js) │ │ Layer │
└─────────────┘ └──────────────┘ └─────────────┘
│ │
┌───────▼────────┐ ┌───────▼────────┐
│ Middleware │ │ Supabase │
│ (Security) │ │ (DB/Storage) │
└────────────────┘ └────────────────┘🤝 Claude Desktop MCP 統合
Claude Desktopでの使用:
{
"mcpServers": {
"xbrl-financial": {
"command": "npx",
"args": ["shared-supabase-mcp-minimal@latest"],
"env": {
"XBRL_API_KEY": "your-api-key-from-dashboard",
"XBRL_JWT_TOKEN": "your-jwt-token",
"XBRL_API_URL": "https://wpwqxhyiglbtlaimrjrx.supabase.co/functions/v1/gateway"
}
}
}
}APIキーとJWTトークンの取得方法
- アカウント登録: https://xbrl-api-minimal.vercel.app/auth/register
- ダッシュボードアクセス: https://xbrl-api-minimal.vercel.app/dashboard
- APIキー発行:
- 「APIキー」タブを選択
- 名前を入力して「APIキー発行」をクリック
- ⚠️ APIキーは一度だけ表示されます
- JWTトークン取得:
- ダッシュボードの「JWT認証状態」セクションで確認
- または開発者ツールのネットワークタブで
Authorizationヘッダーを確認
⚠️ 重要:
- 必ず環境変数(
envセクション)を設定してください XBRL_API_KEYにはxbrl_v1_で始まる独自APIキーを設定XBRL_JWT_TOKENにはSupabase AuthのJWTトークンを設定- Free/Standard/Pro/Enterpriseティアによってアクセス可能なデータ範囲が異なります
📄 ライセンス
MIT License - 詳細はLICENSEをご確認ください。
🔗 リンク
🏆 実績
- 286,742件の財務文書
- 1,100社以上の企業データ
- 99.9%の稼働率
- 200ms以下のレスポンス時間
© 2024 XBRL API Minimal. All rights reserved.
