JitAPI
 ](https://pepy.tech/project/jitapi)  
在任何API上指向Claude。JitAPI自动计算出要调用哪些端点以及调用顺序。
JitAPI是一个MCP服务器,允许Claude与 *任何* API的OpenAPI规范。JitAPI没有将数百个端点转储到上下文中,而是使用语义搜索和依赖关系图来只显示所需的内容,然后Claude计划并执行调用。
https://github.com/user-attachments/assets/53f72f89-a41a-4a9c-a688-ec876ea05fbd
______________________________________________________________________
问题
Stripe有300多个端点。GitHub有800多个。将完整的规范加载到Claude的上下文中会浪费令牌并导致幻觉。为您使用的每个API编写一个自定义MCP服务器是不可扩展的。
JitAPI解决了这个问题: 注册任何OpenAPI规范一次,然后用简单的英语询问你需要什么。它找到正确的端点,解析它们之间的依赖关系,并让Claude执行调用。
快速开始
pip install jitapi添加到您的Claude代码配置中(.mcp.json):
{
"mcpServers": {
"jitapi": {
"command": "uvx",
"args": ["jitapi"]
}
}
}就是这样。不需要API密钥-JitAPI使用开箱即用的本地嵌入。
然后在克劳德:
You: Register the GitHub API from https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/api.github.com/api.github.com.json
Claude: ✓ Registered GitHub v3 REST API — 1,107 endpoints indexed
You: List my repos
Claude: [searches for "list repositories for authenticated user" → finds GET /user/repos → executes]
Here are your repositories: ...多API编排
杀手级功能:注册多个API并提出跨API的问题。JitAPI搜索所有已注册的API,Claude将调用链接起来。
You: Register the TMDB API and OpenWeatherMap API
Claude: ✓ Registered both APIs
You: Find the top popular movie on TMDB, then get the weather where it was filmed
Claude: [searches TMDB → GET /movie/popular → GET /movie/{id} for production locations
→ searches OpenWeather → GET /data/2.5/weather with the city]
The #1 popular movie is "Inception", filmed in Los Angeles.
Current weather in LA: 72°F, partly cloudy.运作原理
Register API Ask a question
│ │
▼ ▼
Parse OpenAPI spec Embed query → vector search
│ │
▼ ▼
Build dependency graph Find relevant endpoints
│ │
▼ ▼
Embed all endpoints Expand with dependencies
│ │
▼ ▼
Store in vector DB Return schemas → Claude executes- 注册 --解析OpenAPI规范,构建依赖关系图(哪些端点需要其他端点的数据),并为所有端点创建可搜索的嵌入
- 搜索 --当你提问时,JitAPI会嵌入你的查询,并通过余弦相似度找到最相关的端点
- 扩展 --依赖关系图添加了任何先决条件端点(例如,“您需要先调用GET/users以获取POST/orders的user_id”)
- 执行 -Claude获取端点模式并进行API调用,在步骤之间传递数据
MCP工具
| 工具 | 说明 |
|---|---|
register_api | 从OpenAPI规范URL注册API |
list_apis | 列出所有已注册的API及其端点计数 |
search_endpoints | 使用自然语言跨端点进行语义搜索 |
get_workflow | 使用依赖解析和完整模式查找相关端点 |
get_endpoint_schema | 获取特定终结点的完整架构 |
call_api | 使用auth、路径参数、查询参数和body执行单个API调用 |
set_api_auth | 配置身份验证(API密钥、承载令牌、基本身份验证) |
delete_api | 删除已注册的API及其所有数据 |
设置
克劳德代码
创建 .mcp.json 在您的项目目录中(或 ~/.claude.json 全球访问):
{
"mcpServers": {
"jitapi": {
"command": "uvx",
"args": ["jitapi"]
}
}
}克劳德桌面版
添加到您的Claude Desktop配置中:
| 操作系统 | 配置路径 |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| 窗户 | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
{
"mcpServers": {
"jitapi": {
"command": "uvx",
"args": ["jitapi"]
}
}
}嵌入提供者
JitAPI开箱即用 局部嵌入 (fastembed)-不需要API密钥。为了在大型API上获得更好的搜索质量,您可以添加云嵌入提供商:
| 提供者 | 质量 | 设置 |
|---|---|---|
| 本地(默认) | 很好 | 没什么——马上就好 |
| Voyage AI (推荐) | 优秀 | pip install jitapi[voyage] +set VOYAGE_API_KEY |
| 开放人工智能 | 太好了 | pip install jitapi[openai] +set OPENAI_API_KEY |
| 凝聚 | 很好 | pip install jitapi[cohere] +set COHERE_API_KEY |
在MCP配置中设置API键 env 块:
{
"mcpServers": {
"jitapi": {
"command": "uvx",
"args": ["jitapi"],
"env": {
"VOYAGE_API_KEY": "your-key-here"
}
}
}
}从可用环境变量中自动检测提供程序。优先级:Voyage AI>OpenAI>Cohere>本地。
认证
注册后配置API身份验证。推荐的方法使用 环境变量 所以秘密永远不会写入磁盘:
{
"mcpServers": {
"jitapi": {
"command": "uvx",
"args": ["jitapi"],
"env": {
"GITHUB_TOKEN": "ghp_...",
"OPENWEATHER_API_KEY": "your-key-here"
}
}
}
}然后告诉Claude使用env变量:
You: Set bearer auth for GitHub using env var GITHUB_TOKEN
Claude: [calls set_api_auth with auth_type="bearer", env_var="GITHUB_TOKEN"]
✓ Auth configured for github (from env var $GITHUB_TOKEN)随着 env_var,JitAPI在请求时从环境中读取密钥——只有env变量 *名字* 是持久的,而不是凭证本身。
您还可以直接传递凭据(它们将存储在 ~/.jitapi/auth.json 随着 0600 权限):
You: Set API key auth for OpenWeather with param name "appid"
Claude: [calls set_api_auth with auth_type="api_key_query", credential="...", param_name="appid"]
✓ Auth configured for openweather支持的身份验证类型: bearer, api_key_header, api_key_query, basic.
安全说明: 当使用env_var,凭据在运行时解析,永远不会触及文件系统。通过时credential直接地,秘密以明文JSON存储在~/.jitapi/auth.json(文件权限0600,目录0700).对于生产用途,首选env_var方法。
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
VOYAGE_API_KEY | 否 | Voyage AI API密钥(推荐云提供商) |
OPENAI_API_KEY | 否 | OpenAI API密钥(替代云提供商) |
COHERE_API_KEY | 否 | Cohere API密钥(替代云提供商) |
JITAPI_STORAGE_DIR | 否 | 数据目录(默认: ~/.jitapi) |
JITAPI_LOG_LEVEL | 否 | 调试、信息、警告、错误(默认值:信息) |
发展
git clone https://github.com/nk3750/jitapi.git
cd jitapi
pip install -e ".[dev]"
pytest
ruff check src/许可证
麻省理工学院
