npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

shared-supabase-mcp-minimal

v8.3.1

Published

XBRL Financial Data MCP Server for Supabase with Claude Desktop compatibility

Readme

XBRL Financial Data API v6.0 - MCP Server Minimal Edition

Vercel NPM Version License: MIT MCP Compatible

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=トヨタ&sector=輸送用機器&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トークンの取得方法

  1. アカウント登録: https://xbrl-api-minimal.vercel.app/auth/register
  2. ダッシュボードアクセス: https://xbrl-api-minimal.vercel.app/dashboard
  3. APIキー発行:
    • 「APIキー」タブを選択
    • 名前を入力して「APIキー発行」をクリック
    • ⚠️ APIキーは一度だけ表示されます
  4. 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.