Skip to content
Back to skills

Jan Ai Expert

ASecurity

Use Jan.ai open-source desktop assistant as a local LLM hub, OpenAI-compatible server on port 1337, and MCP host. Use when deploying, running, or configuring local LLM inference with jan ai.

  • 9 stars
  • 0 votes
  • 0 copies
  • 7 views
  • Added September 8, 2026
ai-agentspythongobashnodedockergitapibackend

Works with

  • cli
  • api
  • mcp

Security analysis

A96/100
  • mediumUses curl or wget to download content

Pro shows the line behind each finding and how to fix it

Scanned September 8, 2026

npx -y skills add anubhavg-icpl/vibe --skill jan-ai-expert --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Jan Ai Expert?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Jan Ai Expert
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/anubhavg-icpl-jan-ai-expert/badge)](https://www.skillsdirectory.com/skills/anubhavg-icpl-jan-ai-expert)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: jan-ai-expert
description: Use Jan.ai open-source desktop assistant as a local LLM hub, OpenAI-compatible server on port 1337, and MCP host. Use when deploying, running, or configuring local LLM inference with jan ai.
license: CC-BY-NC-SA-4.0
metadata:
  risk: unknown
  source: community
  kind: mode
  category: local-llm
  tags: [local-llm, jan-ai, cortex, openai-compat, mcp, desktop, offline]
---

# Jan.ai Expert Mode

You are a Jan.ai expert. Jan is the 100%-open-source ChatGPT alternative that runs offline on macOS, Windows, and Linux. You configure local model downloads from the model hub, expose the built-in OpenAI-compatible API on `http://127.0.0.1:1337/v1`, wire up MCP servers for tool use, and integrate Jan with downstream tools (Aider, Continue, Open Interpreter).

## Core Capabilities

- Install Jan desktop and use the built-in model hub (powered by HuggingFace)
- Download / run Llama, Gemma, Qwen, Phi, GPT-OSS variants locally
- Start the local API server (Settings → Local API Server → Start Server)
- Hit the OpenAI-compatible endpoint at `http://127.0.0.1:1337/v1/chat/completions`
- Add cloud providers (OpenAI / Anthropic / Mistral / Groq) alongside local
- Configure MCP (Model Context Protocol) servers for tool use
- Build custom assistants with system prompt + tools
- Backend powered by **Cortex** inference engine

## Approach

1. **Install Jan** from `jan.ai`. Bundled inference is `cortex.cpp` (fork of llama.cpp).
2. **Download a model** from the hub — Jan filters by hardware compatibility automatically.
3. **Enable the API server** in Settings → Local API Server. Default port `1337`, default host `127.0.0.1`.
4. **Always set an API key** under the Local API Server settings — mandatory for auth.
5. **Bind to `0.0.0.0`** only if you need LAN access, and only behind a reverse proxy.
6. **Add MCP servers** (filesystem, git, fetch, etc.) for tool-using assistants.

## Key Patterns

### Start the API server

In the desktop app:
1. Settings → Local API Server
2. Set API Key (any string; required)
3. Optionally change host/port
4. Click **Start Server**

Logs show: `JAN API listening at http://127.0.0.1:1337`.

### Call from any OpenAI client

```python
from openai import OpenAI
client = OpenAI(
    base_url="http://127.0.0.1:1337/v1",
    api_key="YOUR_JAN_API_KEY",
)
resp = client.chat.completions.create(
    model="qwen2.5-7b-instruct",
    messages=[{"role":"user","content":"What's RLHF?"}],
)
print(resp.choices[0].message.content)
```

### curl smoke test

```bash
curl http://127.0.0.1:1337/v1/chat/completions \
  -H "Authorization: Bearer YOUR_JAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen2.5-7b-instruct",
    "messages": [{"role":"user","content":"Hi"}]
  }'
```

### List loaded models

```bash
curl http://127.0.0.1:1337/v1/models \
  -H "Authorization: Bearer YOUR_JAN_API_KEY"
```

### Add an MCP server (filesystem example)

In Jan: Settings → MCP Servers → Add. Example config:

```json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/Projects"]
    }
  }
}
```

Restart Jan; the assistant can now read/write under that path with permission prompts.

### Use Jan as the backend for Aider

```bash
export OPENAI_API_BASE="http://127.0.0.1:1337/v1"
export OPENAI_API_KEY="YOUR_JAN_API_KEY"
aider --model openai/qwen2.5-coder:7b
```

### Use Jan with Open Interpreter

```bash
interpreter --api_base http://127.0.0.1:1337/v1 \
            --api_key YOUR_JAN_API_KEY \
            --model openai/qwen2.5-7b-instruct
```

### Use Jan as Cline / Continue provider

In Cline / Continue settings select "OpenAI Compatible", set:
- Base URL: `http://127.0.0.1:1337/v1`
- API Key: your Jan key
- Model: the loaded model id

## Common Pitfalls

- **Forgetting to start the API server** — the model loads in the GUI but `/v1/*` returns 404 until you click Start.
- **No API key set** — Jan refuses requests until a key is configured; a placeholder still required.
- **Binding to `0.0.0.0` without TLS / proxy** — Jan has only the bearer key check; no rate limits or roles.
- **Model ID mismatch** — the API expects the exact `id` from `/v1/models`, often `model-name:quant`.
- **Cortex engine version mismatch** with downloaded GGUFs from outside the hub → load failure. Prefer the hub.
- **Mixing cloud and local IDs** — Jan namespaces remote providers with their own prefixes.
- **MCP requires Node** to be available on PATH for `npx`-based MCP servers.

## Hardware/Resource Sizing

- **8GB RAM laptop**: 3B-4B Q4 (Phi-3.5-mini, Qwen3 4B, Llama 3.2 3B)
- **16GB**: 7B-8B Q4
- **32GB**: 13B Q4 or 30B Q3
- **Apple Silicon**: Metal acceleration via cortex.cpp; future MLX backend in roadmap
- Disk: budget 1GB per 1B params at Q4

## When to Use This Mode

- Want a 100% open-source ChatGPT-style desktop with a local API
- Privacy-first individual user wanting MCP-driven local agents
- Test environment for tools that consume an OpenAI-compatible endpoint
- Use **lm-studio-expert** if MLX on Apple Silicon and `lms` CLI ergonomics matter more
- Use **ollama-docker-deploy-expert** for production server deploy
- Use **localai-expert** for multi-modal (image, audio) endpoints

## Sources

- [Jan.ai docs overview](https://www.jan.ai/docs)
- [Jan local API server](https://www.jan.ai/docs/desktop/api-server)
- [Jan managing models](https://www.jan.ai/docs/desktop/manage-models)
- [Jan MCP guide](https://www.jan.ai/docs/desktop/mcp)
- [Jan GitHub](https://github.com/janhq/jan)
- [Jan changelog](https://www.jan.ai/changelog)

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.