OpenAPI & Custom Integrations
Connect LexiChat to any REST API — paste an OpenAPI spec or define your own HTTP endpoint in seconds.
hub Overview
Beyond the built-in tools, LexiChat lets you add arbitrary HTTP endpoints as callable tools. There are two ways to do this:
Paste a JSON or YAML OpenAPI 3.x spec and LexiChat automatically generates one tool per API operation. Best for well-documented public or internal APIs.
Define a single HTTP endpoint with a form — name, URL template, method, and parameters. Best for simple webhooks or internal APIs without a full spec.
description OpenAPI Import
LexiChat parses OpenAPI 3.x specifications (JSON or YAML). Each operation (GET /users/{id}, etc.) becomes one tool the AI can call.
Open the Tools panel — click the wrench icon in the toolbar, then Import OpenAPI
Paste your OpenAPI JSON or YAML into the text area, then click Parse
Review the list of detected tools (operation ID, method, path, description)
Click Register All — tools are now available to the AI immediately
summary / description → tool description{id}) → required paramsExample OpenAPI spec
Here's a minimal spec that exposes a weather lookup endpoint. Paste this to try it out:
{
"openapi": "3.0.0",
"info": {
"title": "Weather API",
"version": "1.0"
},
"servers": [
{ "url": "https://api.open-meteo.com/v1" }
],
"paths": {
"/forecast": {
"get": {
"operationId": "get_weather",
"summary": "Get weather forecast for a location",
"parameters": [
{
"name": "latitude",
"in": "query",
"required": true,
"schema": { "type": "number" },
"description": "Latitude of the location"
},
{
"name": "longitude",
"in": "query",
"required": true,
"schema": { "type": "number" },
"description": "Longitude of the location"
},
{
"name": "current_weather",
"in": "query",
"required": false,
"schema": { "type": "boolean" },
"description": "Include current conditions"
}
]
}
}
}
}
After importing, the AI can answer questions like "What's the weather in London?" by calling get_weather with the coordinates it looks up.
build Custom Tools
For simple HTTP integrations that don't have an OpenAPI spec, use the Custom Tool builder to define an endpoint by hand.
| Field | Description |
|---|---|
| Name | Tool identifier shown to the model (snake_case, no spaces) |
| Description | Tells the AI what this tool does and when to use it — be specific |
| URL | Full URL with {param} placeholders for path params |
| Method | GET, POST, PUT, DELETE, PATCH |
| Parameters | Add one or more params — each has name, type, location (path/query/body), description, required flag |
Substituted directly into the URL. Requires a matching {paramName} in the URL template.
Appended to the URL as ?key=value. Works for GET requests and can be used with any method.
Sent as a JSON key in the request body. LexiChat sets Content-Type: application/json automatically.
Example: GitHub Repository Info
A custom tool to fetch public GitHub repo metadata:
owner
string
path
The GitHub username or organisation
required
repo
string
path
The repository name
required
Once registered, you can ask: "How many stars does the ollama/ollama repo have?" and the AI will call the tool automatically.
// AI generates this call
{
"name": "get_github_repo",
"arguments": {
"owner": "ollama",
"repo": "ollama"
}
}
// LexiChat makes: GET https://api.github.com/repos/ollama/ollama
// Returns JSON → fed back to model
lock Authentication
When adding an OpenAPI spec or MCP connection, you can configure authentication. LexiChat supports four methods:
Authorization: Bearer <token> on every request.X-API-Key: secret).Authorization header.settings_applications Managing Tools
All tools (built-in and custom) are listed in the Tools panel. From here you can: