Skip to main content

MCP server for routes as MCP tools

Project description

outlty-mcp

A Python MCP server exposing your FastAPI API-key routes as MCP tools for use in Claude Code (and any MCP client).

Tools

  • list_user_apis
  • get_user_api
  • create_user_api
  • make_request

Prerequisites

  • Python 3.10+
  • Your backend running and accessible (default base URL: http://localhost:8000)
  • An API key valid for the backend. The backend supports either:
    • X-API-Key: <key>
    • Authorization: ApiKey <key>

Install

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

Run with uvx (recommended)

You can run this server without a local install using uv.

Local checkout:

uvx --from . outlty-mcp

From Git repository (example):

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

You can also pin a version published to an index:

uvx outlty-mcp

Run (standalone debug)

This server communicates via stdio when launched by an MCP client, but you can validate it imports:

python server.py

Configuration (env)

  • OUTLY_MCP_API_BASE_URL (default: http://localhost:8000)
  • OUTLY_MCP_API_KEY (required)
  • OUTLY_MCP_AUTH_HEADER (default: X-API-Key; set to Authorization to send Authorization: ApiKey <key>)

Claude Code configuration (JSON)

Add this to your Claude configuration (e.g., ~/.config/anthropic/claude_desktop_config.json or the workspace .claued.json depending on your setup). See Claude docs for exact location.

{
  "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"
      }
    }
  }
}

If you prefer Authorization header:

{
  "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"
      }
    }
  }
}

Tool schemas

  • list_user_apis: GET /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: string, input_data: object): POST /api-key/user-apis/make-request

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

outlty_mcp-0.1.0.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

outlty_mcp-0.1.0-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

Details for the file outlty_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: outlty_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for outlty_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 13a5cc79b8b78959198010cb6f419a9fe228ad93b52ce0aecf8572bdd8cfe010
MD5 77c4729df7270b2b500716bd58fc8d26
BLAKE2b-256 e35de77d971a7910af062d27dc065e9104199ce13501f384b15447af1d8c358b

See more details on using hashes here.

File details

Details for the file outlty_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: outlty_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for outlty_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 62e0d8f6c5484bc0ff78e8e9c79bbfca402367f0bef39aece7c3e8b0f9e18fa3
MD5 5c59f2dde9dfab930f9ae9d3a8b71da0
BLAKE2b-256 c5c1d33dcc5cea1bdd53d6fbd4d41b86edd5234a81ff873b66339384d2050d24

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page