FastAPI MCP服务

一个Python MCP服务器,将FastAPI API-key路由暴露为MCP工具,供Claude Code和任何MCP客户端使用。

  • by yasinfakhar
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 yasinfakhar/outly-mcp-server

使用说明

outlty mcp

Python MCP服务器将您的FastAPI API-key路由公开为用于Claude Code(和任何MCP客户端)的MCP工具。

工具

  • list_user_apis
  • get_user_api
  • create_user_api
  • make_request

先决条件

  • Python 3.10+
  • 您的后端正在运行且可访问(默认基本URL:http://localhost:8000)
  • 对后端有效的API密钥。后端支持以下任一功能:
    • X-API-Key: <key>
    • Authorization: ApiKey <key>

安装

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

使用uvx运行(推荐)

您可以使用uv在不进行本地安装的情况下运行此服务器。

本地结账:

uvx --from . outlty-mcp

来自Git仓库(示例):

uvx --from git+https://github.com/your-org/outly-mcp-server.git outlty-mcp

您还可以将发布的版本固定到索引:

uvx outlty-mcp

运行(独立调试)

当MCP客户端启动时,此服务器通过stdio进行通信,但您可以验证它的导入:

python server.py

配置(环境)

  • OUTLY_MCP_API_BASE_URL (默认值: http://localhost:8000)
  • OUTLY_MCP_API_KEY (必填)
  • OUTLY_MCP_AUTH_HEADER (默认值: X-API-Key;设置为 Authorization 发送 Authorization: ApiKey <key>)

Claude代码配置(JSON)

将此添加到您的Claude配置中(例如。, ~/.config/anthropic/claude_desktop_config.json 或工作空间 .claued.json 取决于您的设置)。有关确切位置,请参阅Claude文档。

{
  "mcpServers": {
    "outlty-mcp": {
      "command": "uvx",
      "args": ["outlty-mcp"],
      "env": {
        "OUTLY_MCP_API_BASE_URL": "http://localhost:8000",
        "OUTLY_MCP_API_KEY": "ak_xxx_your_secret",
        "OUTLY_MCP_AUTH_HEADER": "X-API-Key"
      }
    }
  }
}

如果您更喜欢授权标头:

{
  "mcpServers": {
    "outlty-mcp": {
      "command": "uvx",
      "args": ["outlty-mcp"],
      "env": {
        "OUTLY_MCP_API_BASE_URL": "http://localhost:8000",
        "OUTLY_MCP_API_KEY": "ak_xxx_your_secret",
        "OUTLY_MCP_AUTH_HEADER": "Authorization"
      }
    }
  }
}

工具模式

  • list_user_apis:获取 /api-key/user-apis
  • get_user_api(id:string):get /api-key/user-apis/{id}
  • create_user_api(user_query:string):POST /api-key/user-apis
  • make_request(url:字符串,input_data:对象):POST /api-key/user-apis/make-request