serveMyAPI

ServeMyAPI:macOS 专用 MCP 服务器,安全存储 API 密钥,无缝集成 AI 模型,提升开发效率。

serveMyAPI
serveMyAPI能力展示

serveMyAPI 解决方案概述

ServeMyAPI 是一款个人MCP服务器,专为macOS设计,旨在安全存储和管理API密钥。它通过macOS Keychain提供安全保障,避免了将密钥暴露在.env文件或配置文件中的风险。ServeMyAPI允许开发者跨多个项目安全访问API密钥,并能通过自然语言与AI模型(如Claude)交互,直接向AI助手提供密钥。

该解决方案提供简单的MCP工具,用于存储、检索、列出和删除密钥,并支持stdio和HTTP/SSE传输。开发者可以通过CLI或Smithery等平台轻松集成ServeMyAPI。核心价值在于,它既保证了敏感凭据的安全存储,又提升了AI工具的可见性和可访问性,解决了传统.env文件在GitHub安全、LLM集成和跨项目一致性方面的问题。ServeMyAPI与任何MCP兼容的客户端无缝协作,简化了AI应用开发流程。

serveMyAPI 核心能力

安全密钥存储于macOS Keychain

ServeMyAPI 的核心功能是将 API 密钥安全地存储在 macOS Keychain 中。macOS Keychain 是一个由苹果公司提供的密码管理系统,它使用硬件加密来保护敏感信息。ServeMyAPI 利用 Keychain 的安全特性,确保 API 密钥不会以明文形式存储在任何地方,从而避免了密钥泄露的风险。密钥仅对当前用户可访问,并且需要身份验证才能访问,这增加了额外的安全层。这种方法比传统的 .env 文件更安全,因为 .env 文件容易被意外提交到版本控制系统,或者被未经授权的访问者读取。

使用场景: 开发者可以使用 ServeMyAPI 安全地存储 OpenAI API 密钥,然后通过 Claude 等 AI 助手安全地访问这些密钥,而无需担心密钥泄露。

技术实现: ServeMyAPI 使用 macOS 提供的 Keychain API 来存储和检索密钥。它通过 Node.js 封装了这些 API,提供了一个简单易用的接口。

跨项目密钥共享与管理

ServeMyAPI 允许开发者在多个项目之间共享和管理 API 密钥。传统的 .env 文件方法需要在每个项目目录中复制 API 密钥,这不仅冗余,而且容易出错。当密钥需要更新时,开发者必须手动更新所有相关的 .env 文件,这非常繁琐。ServeMyAPI 提供了一个中央存储位置,开发者只需在一个地方更新密钥,所有使用该密钥的项目都会自动更新。这大大简化了密钥管理,提高了开发效率。

使用场景: 一个开发者同时维护多个使用相同 GitHub API 密钥的项目。使用 ServeMyAPI,开发者只需在一个地方存储和更新 GitHub API 密钥,所有项目都可以自动使用最新的密钥。

技术实现: ServeMyAPI 通过 Keychain 存储密钥,并提供 CLI 工具和 HTTP/SSE 接口来访问这些密钥。不同的项目可以通过这些接口访问 Keychain 中存储的密钥。

自然语言集成AI助手

ServeMyAPI 允许 AI 助手通过自然语言请求 API 密钥。传统的 .env 文件方法无法直接与 AI 助手集成,因为 AI 助手无法直接访问本地文件系统。ServeMyAPI 通过 MCP 协议,为 AI 助手提供了一个安全的方式来请求 API 密钥。AI 助手可以使用自然语言来指定需要哪个 API 密钥,ServeMyAPI 会从 Keychain 中检索该密钥,并将其返回给 AI 助手。这使得 AI 助手可以更方便地使用 API 密钥来完成各种任务。

使用场景: 在 Claude 中,用户可以使用自然语言指令 "Using serveMyAPI, get the API key named 'OpenAI API Key'" 来获取 OpenAI API 密钥,然后 Claude 可以使用该密钥来调用 OpenAI API。

技术实现: ServeMyAPI 实现了 MCP 协议,并提供了 get-api-key 工具,该工具接受 API 密钥的名称作为参数,并从 Keychain 中检索相应的密钥。

便捷的CLI密钥管理工具

ServeMyAPI 提供了一个命令行界面 (CLI),允许开发者直接从终端管理 API 密钥。通过 CLI,开发者可以方便地列出、获取、存储和删除 API 密钥。CLI 工具简化了密钥管理流程,无需手动编辑配置文件或使用图形界面。这对于习惯使用命令行的开发者来说非常方便。

使用场景: 开发者可以使用 api-key store github_token ghp_123456789abcdefg 命令快速存储一个新的 GitHub API 密钥,或者使用 api-key get github_token 命令快速获取 GitHub API 密钥。

技术实现: ServeMyAPI 使用 Node.js 构建 CLI 工具,并使用 commander 等库来解析命令行参数。CLI 工具通过调用 ServeMyAPI 的核心函数来管理 Keychain 中的密钥。