ServeMyAPI

by Jktfe

Integrations

  • Provides an alternative to .ENV files by securely storing API keys in the macOS Keychain while maintaining accessibility across projects

  • Mentioned in the roadmap as a framework that will have easy integration options for accessing securely stored API keys

  • Solves security conflicts with GitHub by storing API keys securely in the Keychain rather than in .gitignore'd files

サーブマイAPI

macOS キーチェーンを使用してプロジェクト間で API キーを安全に保存およびアクセスするための個人用 MCP (Model Context Protocol) サーバー。

重要:ServeMyAPIはmacOS専用のツールであり、安全なストレージのためにmacOSキーチェーンを利用しています。WindowsまたはLinuxオペレーティングシステムとは互換性がありません。詳細はセキュリティに関する注意事項のセクションをご覧ください。

概要

ServeMyAPIを使用すると、APIキーをmacOSキーチェーンに安全に保存し、一貫したMCPインターフェースからアクセスできます。これにより、以下のことが容易になります。

  • API キーを安全に保存します (.env ファイルや構成ファイルには表示されません)
  • 複数のプロジェクト間で同じキーにアクセスする
  • 自然言語を使用してキーを保存および取得する(Claude などの LLM で使用する場合)
  • AIアシスタントがサービスにアクセスする必要があるときにキーを直接提供します

.ENV ファイルではなく ServeMyAPI を使用する理由は何ですか?

従来の .ENV ファイルの代わりに ServeMyAPI を使用すると、いくつかの一般的な問題が解決されます。

  1. GitHub セキュリティ競合:
    • セキュリティ上の理由から、.ENV ファイルは Git リポジトリから除外する必要があります (.gitignore 経由)
    • これにより、重要な構成が共同作業者やLLMに見えない「隠れたコンテキスト」の問題が発生します。
    • 新しい開発者は、正しい環境変数を設定するのに苦労することが多い
  2. LLM統合の課題
    • ClaudeのようなLLMはセキュリティ上の制約により.ENVファイルに直接アクセスできません
    • LLMがタスクを完了するためにAPIキーを必要とする場合、多くの場合、手動の回避策が必要になります。
    • ServeMyAPIを使用すると、AIアシスタントが自然言語でキーをリクエストできます。
  3. プロジェクト間の一貫性:
    • .ENVファイルでは、通常、複数のプロジェクト間でAPIキーを複製する必要があります。
    • キーが変更されると、複数のファイルを更新する必要があります
    • ServeMyAPIは、どのプロジェクトからでもアクセスできる中央のストレージ場所を提供します。

このアプローチにより、AI ツールの可視性とアクセシビリティを犠牲にすることなく、機密性の高い資格情報を安全に保存できるという、両方のメリットが得られます。

特徴

  • macOSキーチェーンでのAPIキーの安全な保管
  • キーを保存、取得、一覧表示、削除するためのシンプルな MCP ツール
  • 端末ベースのキー管理に便利なCLIインターフェース
  • stdioとHTTP/SSEトランスポートの両方をサポート
  • あらゆる MCP クライアント (Claude Desktop など) と互換性があります

インストール

# Clone the repository git clone https://github.com/yourusername/servemyapi.git cd servemyapi # Install dependencies npm install # Build the project npm run build

使用法

CLIインターフェース

ServeMyAPI には、ターミナルから直接キーをすばやく管理するためのコマンドライン インターフェイスが付属しています。

# Install the CLI globally npm run build npm link # List all stored API keys api-key list # Get a specific API key api-key get github_token # Store a new API key api-key store github_token ghp_123456789abcdefg # Delete an API key api-key delete github_token # Display help api-key help

stdioサーバーとして実行

これは、特に Claude Desktop で作業する場合に、ServeMyAPI を MCP サーバーとして使用する最も簡単な方法です。

npm start

HTTPサーバーとして実行

HTTP アクセスを必要とするアプリケーションの場合:

node dist/server.js

これにより、ポート 3000 (または PORT 環境変数で指定されたポート) でサーバーが起動します。

鍛冶屋を使う

ServeMyAPI はSmitheryでホストされたサービスとして利用できます。

import { createTransport } from "@smithery/sdk/transport.js" const transport = createTransport("https://server.smithery.ai/@Jktfe/servemyapi") // Create MCP client import { Client } from "@modelcontextprotocol/sdk/client/index.js" const client = new Client({ name: "Test client", version: "1.0.0" }) await client.connect(transport) // Use the server tools with your LLM application const tools = await client.listTools() console.log(`Available tools: ${tools.map(t => t.name).join(", ")}`)

詳細については、 Smishery API ドキュメントを参照してください。

MCP クライアントの構成

ServeMyAPIはMCP互換のクライアントであればどれでも動作します。サンプル設定ファイルはexamplesディレクトリに用意されています。

クロードデスクトップ

Claude Desktop で ServeMyAPI を使用するには:

  1. Claude Desktop 構成ファイルを見つけるか作成します。
    • macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows : %AppData%\Claude\claude_desktop_config.json
  2. mcpServersセクションに ServeMyAPI を追加します ( examples/claude_desktop_config.jsonからコピーできます)。
    { "mcpServers": { "serveMyAPI": { "command": "node", "args": [ "/ABSOLUTE/PATH/TO/servemyapi/dist/index.js" ] } } }
  3. /ABSOLUTE/PATH/TO/servemyapiを、ServeMyAPI インストールへの実際のパスに置き換えます。
  4. Claude Desktop を再起動します。
ウィンドサーフィン

Windsurf で ServeMyAPI を使用するには:

  1. Windsurfエディタを開き、設定に移動します
  2. examples/windsurf_config.jsonの例を使用して、MCP サーバー構成に ServeMyAPI を追加します。
  3. ローカルインストールに合わせてパスを調整します

MCPツール

ServeMyAPI は次のツールを公開します。

ストアAPIキー

API キーをキーチェーンに保存します。

パラメータ:

  • name : APIキーの名前/識別子
  • key : 保存するAPIキー

例(クロードより):

Using serveMyAPI, store my API key ABC123XYZ as "OpenAI API Key"

APIキーを取得する

キーチェーンから API キーを取得します。

パラメータ:

  • name : 取得するAPIキーの名前/識別子

例(クロードより):

Using serveMyAPI, get the API key named "OpenAI API Key"

APIキーの削除

キーチェーンから API キーを削除します。

パラメータ:

  • name : 削除するAPIキーの名前/識別子

例(クロードより):

Using serveMyAPI, delete the API key named "OpenAI API Key"

APIキーのリスト

保存されているすべての API キーを一覧表示します。

パラメータは必要ありません。

例(クロードより):

Using serveMyAPI, list all my stored API keys

セキュリティノート

  • すべてのAPIキーはmacOSキーチェーンに安全に保存されます
  • キーは現在のユーザーのみがアクセスできます
  • キーチェーンへのアクセスには認証が必要です
  • キーは平文で保存されず、どこにも記録されません

ロードマップ

ServeMyAPI の将来の計画には次のものが含まれます。

  • コードスキャナツール:コードベースを自動スキャンし、APIエンドポイント、機密性の高いURL、環境変数を検出し、キーチェーンに保存する名前を提案するツールです。これにより、開発者は通常のワークフローで.ENVファイルを使用し続けることができ、必要に応じてLLMやその他のツールでも認証情報を確実に利用できるようになります。
  • クロスプラットフォーム サポート: ServeMyAPI をより広範囲にアクセス可能にするために、Windows および Linux の安全な資格情報保存オプションを調査しています。
  • 一般的なフレームワークとの統合: Next.js、Express などのフレームワークとの簡単な統合を提供します。
  • キー管理用の UI : 保存された API キーを直接管理するためのシンプルな Web インターフェース。

問題やプル リクエストを開いて、お気軽に追加機能を提案したり、ロードマップに貢献したりしてください。

発達

# Run in development mode with hot reload npm run dev # Use the CLI during development npm run cli list # Lint the code npm run lint # Build for production npm run build

ライセンス

マサチューセッツ工科大学

-
security - not tested
F
license - not found
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

macOS キーチェーンを使用してプロジェクト間で API キーを安全に保存およびアクセスするための個人用 MCP サーバー。AI アシスタントとアプリケーションが自然言語を通じて資格情報を取得できるようになります。

  1. 概要
    1. .ENV ファイルではなく ServeMyAPI を使用する理由は何ですか?
      1. 特徴
        1. インストール
          1. 使用法
            1. CLIインターフェース
            2. stdioサーバーとして実行
            3. HTTPサーバーとして実行
            4. 鍛冶屋を使う
            5. MCP クライアントの構成
          2. MCPツール
            1. ストアAPIキー
            2. APIキーを取得する
            3. APIキーの削除
            4. APIキーのリスト
          3. セキュリティノート
            1. ロードマップ
              1. 発達
                1. ライセンス

                  Related MCP Servers

                  • A
                    security
                    A
                    license
                    A
                    quality
                    An MCP server that enables AI agents to authenticate with and interact with Open eClass platform instances, supporting UoA's SSO authentication system for retrieving course information and performing basic platform operations.
                    Last updated -
                    4
                    1
                    Python
                    MIT License
                  • -
                    security
                    F
                    license
                    -
                    quality
                    A Python implementation of an MCP server that enables secure, local Bitbucket integration for AI applications, providing tools for repository management, branch creation, file operations, issue tracking, and pull request creation.
                    Last updated -
                    1
                    Python
                  • -
                    security
                    -
                    license
                    -
                    quality
                    A MCP server that requires user authentication via Auth0, allowing it to call protected APIs on behalf of authenticated users.
                    Last updated -
                    TypeScript
                  • A
                    security
                    F
                    license
                    A
                    quality
                    An MCP server that allows AI assistants to interact with the ServiceTitan API, requiring client credentials for authentication.
                    Last updated -
                    454
                    TypeScript

                  View all related MCP servers

                  ID: y2unl3n9g4