mcpField
L
llmkit

llmkit

本地服务
github.com/smigolsmigol数据与分析157 周前更新

关于 llmkit

llmkit 是用于 AI 调用成本归因和预算控制的开源网关及 SDK 套件,面向需要追踪 Agent 支出或限制预算的开发者。它同时提供无需账号或代理的本地追踪方式,以及包含 11 个工具的 MCP 服务。

主要功能

  1. 01本地估算模型调用成本
  2. 02预算准入与实际用量结算
  3. 03追踪 Claude Code 和 Cline 会话
  4. 04查询支出、预算与密钥
  5. 05提供定价比较接口

适用场景

  1. 01汇总本地 Agent 的模型调用费用
  2. 02在请求派发前限制预算支出
  3. 03在 MCP 客户端检查编码会话
  4. 04比较指定模型的参考价格

MCP 相关

提供包含 11 个工具的 MCP 服务:本地工具检查 Claude Code 会话和 Cline 任务,网关工具查询支出、预算、密钥、会话和服务状态。网关工具需要已有的 LLMKit API 密钥。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"smigolsmigol-llmkit": {
"command": "npx",
"args": [
"-y",
"@f3d1/llmkit-mcp-server"
],
"env": {
"LLMKIT_API_KEY": "<LLMKIT_API_KEY>",
"LLMKIT_PROXY_URL": "<LLMKIT_PROXY_URL>"
}
}
}
}
启动命令npx -y @f3d1/llmkit-mcp-server
需要配置的环境变量
LLMKIT_API_KEY密钥LLMKit API key. Optional: local tools work without it.
LLMKIT_PROXY_URLLLMKit proxy URL (defaults to hosted service)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@f3d1/llmkit-mcp-server0.4.10

工具

11

收录的工具列表 · 更新于 2 周前

参数类型必填说明
periodenum否时间段today | week | month

详细介绍

LLMKit

衡量 AI Agent 的成本。在请求超出预算前将其拦截。

CI PyPI npm OpenSSF 记分卡 OpenSSF 最佳实践 MIT 许可证

网站 | 文档 | 定价 API | 架构 | 安全 | 保证案例

LLMKit 是一套开源 AI 网关和 SDK 套件,用于成本归属、预算准入和请求取证。网关会在向提供商分发请求前预留预计支出。对于无法纳入当前有效预算的请求,网关会予以拒绝;对于获准请求,则会在响应完成后根据实际用量结算预留金额。

此代码库还提供本地跟踪方式,无需 LLMKit 账户或代理即可使用。

选择使用方式

使用方式适用场景软件包
Python 传输层你想在现有 SDK 调用中加入本地成本估算llmkit-sdk
CLI 包装器你的 OpenAI 或 Anthropic 客户端遵循标准的 base-URL 环境变量@f3d1/llmkit-cli
TypeScript SDK你已有密钥,并想通过 TypeScript 使用会话、流式处理和网关@f3d1/llmkit-sdk
MCP 服务你想在 MCP 客户端中使用支出、预算和本地编码会话工具@f3d1/llmkit-mcp-server
AI SDK 提供商你使用 Vercel AI SDK 6@f3d1/llmkit-ai-sdk-provider
网关和仪表板你需要共享预算、提供商路由、收据和分析功能packages/proxy、packages/dashboard

快速入门

本地 Python 跟踪
pip install llmkit-sdk
from llmkit import tracked
from openai import OpenAI

costs = []
client = OpenAI(http_client=tracked(on_cost=costs.append))

client.chat.completions.create(
    model="gpt-4.1",
    messages=[{"role": "user", "content": "Summarize this incident."}],
)

print(f"${sum(item.total_cost or 0 for item in costs):.6f}")

传输层会读取提供商的用量元数据,并根据随附的定价目录估算成本。它不会将跟踪数据发送到 LLMKit。

零代码 CLI 跟踪
npx @f3d1/llmkit-cli -- python my_agent.py

使用 -v 查看每个请求的输出,或使用 --json 获取机器可读的结果。

网关模式(使用现有密钥)

网关示例需要现有的 LLMKit API 密钥。身份验证服务正在恢复期间,账户创建和密钥管理暂不可用。如果你还没有密钥,请使用上面的本地跟踪方式之一。

from openai import OpenAI

client = OpenAI(
    base_url="https://api.llmkit.sh/v1",
    api_key="llmk_your_key_here",
)

response = client.chat.completions.create(
    model="gpt-4.1",
    messages=[{"role": "user", "content": "Draft a release note."}],
)

预算路径

LLMKit 对每个请求进行身份验证,预留其预估费用,在分发给提供商之前拒绝超出预算的请求,并根据实际用量结算已准入的请求。

控制路径围绕三个边界构建:

  • 原子准入: 每个预算范围的预留状态由一个 Durable Object 管理。并发请求无法重复花费同一笔剩余余额。
  • 感知分发的幂等性: 分发前的确定性失败会释放密钥。分发给提供商后,若无法确定是否已发生分发,失败会保持终止状态,以避免重复花费。
  • 有界响应: 非流式响应正文和单个 SSE 帧都有明确的字节数限制。超出限制时,LLMKit 会取消上游读取。

请求回执通过稳定标识符关联准入决策、提供商尝试、结算和分析数据移交。数据库写入使用发件箱,因此分析服务中断不会导致预算凭证被悄然抹去。

MCP 服务

{
  "mcpServers": {
    "llmkit": {
      "command": "npx",
      "args": ["-y", "@f3d1/llmkit-mcp-server"]
    }
  }
}

五个本地工具无需 LLMKit 密钥即可检查受支持的 Claude Code 会话和 Cline 任务数据。六个网关工具可在 LLMKIT_API_KEY 包含现有密钥时,查询支出、预算、密钥、会话和服务健康状态。它们总共提供 11 个工具。

定价数据

固定的目录是打包的参考快照,并非实时报价。一个源文件 packages/shared/pricing.json 记录快照日期,并生成 TypeScript、Python 和 MCP 表格。CI 会检查源文件与生成文件之间是否存在差异。公共网站仅呈现已有数据的提供商表格,并显示来源日期。

公共比较端点无需账号即可使用:

https://api.llmkit.sh/v1/pricing/compare?mode=text-token&models=anthropic%2Fclaude-sonnet-4-6%2Copenai%2Fgpt-4o&input=1000&output=1000&cacheRead=0&cacheWrite=0

该端点只为调用方提供的确切模型密钥定价。它不会搜索或推荐最便宜的模型。定价只是估算,并非提供商账单。提供商的计费规则、模型模态和目录时效性仍属于误差边界的一部分。

证据与当前边界

主张此仓库中的证据边界
并发预算准入会被串行化Worker 测试夹具会测试竞争预留、重试、结算和恢复确定性的本地 Worker 和数据库验证
重试行为可避免重复分发幂等性测试涵盖负载不匹配、分发前释放以及分发后状态不确定的情形CI 中模拟了提供商行为
大型提供商响应受到限制成功、错误和未终止的 SSE 测试夹具会验证拒绝行为和流取消限制针对每个缓冲响应或 SSE 帧
定价构件可复现一个生成器和 CI --check 流程涵盖所有已发布的语言表格目录数值仍需更新来源
可安全评估托管恢复受保护的暂存部署和验证运行器会绑定隔离的 Worker、数据库、修订版本和清理日志此处不声称已有完整的托管并发及中断恢复回执

有关隔离式托管验证契约,请参阅 STAGING_PROOF.md。该契约会明确拒绝生产目标和有未提交更改的工作树。

项目政策与设计

文档负责内容
治理决策权限、角色、争议及当前的连续性缺口
路线图截至 2027 年 8 月的计划工作与排除项
架构组件、请求流程、身份、存储、部署及故障边界
安全安全要求、不作保证的事项、报告方式及受支持版本
安全保障威胁模型、信任边界、可执行证据、剩余风险及运行时 HOLD
无障碍公共站点控件、验证方法、已知缺口及语言范围
贡献指南设置、质量门槛、审查预期及 DCO 签署

开发

git clone https://github.com/smigolsmigol/llmkit
cd llmkit
corepack [email protected] install --frozen-lockfile
corepack [email protected] build
corepack [email protected] quality:pr

使用仅供开发的绑定在本地运行 Worker:

corepack [email protected] --filter @f3d1/llmkit-proxy dev

此处有意省略通用部署命令。暂存环境和生产环境使用单独的受保护脚本,并要求明确确认目标环境。

安全

服务提供商凭据使用 AES-256-GCM 加密,并采用随机 IV 和绑定所有者与服务提供商的附加认证数据。LLMKit API 密钥在存储前会进行哈希处理。CI 包含机密扫描、静态分析、依赖项审查、CodeQL 和软件包来源验证。

请阅读安全政策与架构以及机器可读的安全洞察快照。请通过 GitHub 私密漏洞报告或发送邮件至 [email protected] 报告漏洞。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。