Config Service¶
The config service is the service discovery hub for all Jarvis services. Every service queries it at startup to resolve URLs for other services it needs to communicate with. It is the single Tier 0 dependency — if config service is down, no service can discover any other.
Quick Reference¶
| Port | 7700 |
| Health endpoint | GET /health |
| Source | jarvis-config-service/ |
| Framework | FastAPI + Uvicorn |
| Database | PostgreSQL |
| Tier | 0 - Foundation |
API Endpoints¶
| Method | Path | Description |
|---|---|---|
GET |
/health |
Health check |
GET |
/info |
Service identity (name, version, port) |
GET |
/services |
List all registered services and their URLs |
GET |
/services/{name} |
Get URL for a specific service |
POST |
/services |
Register or update a service (admin) |
DELETE |
/services/{name} |
Deregister a service (admin) |
GET |
/services/health |
Check health of all registered services |
GET |
/services/{name}/health |
Check health of a specific registered service |
URL Style Query Parameters¶
The /services and /services/{name} endpoints accept an optional style query parameter to control the format of returned URLs:
| Parameter | Value | Description |
|---|---|---|
style |
(default) | Returns container-name URLs (e.g. http://jarvis-auth:7701) — used by Docker services on the shared network |
style |
dockerized |
Returns host.docker.internal URLs — used when containers need to reach services running directly on the host (e.g. LLM proxy on macOS) |
style |
remote |
Returns URLs using JARVIS_REMOTE_HOST as the hostname |
remote_host |
hostname | Override the remote host for this request only (used with style=remote) |
Environment Variables¶
| Variable | Description |
|---|---|
DATABASE_URL |
PostgreSQL connection string |
JARVIS_AUTH_BASE_URL |
Auth service URL for validating admin/app requests |
JARVIS_CONFIG_URL_STYLE |
Default URL style for all responses (dockerized returns host.docker.internal URLs) |
JARVIS_REMOTE_HOST |
Hostname used when style=remote is requested |
PORT |
API port (default 7700) |
Dependencies¶
- PostgreSQL -- stores service registry
Dependents¶
Every service depends on config service for URL discovery:
- jarvis-auth, jarvis-logs, jarvis-command-center, jarvis-llm-proxy-api, jarvis-whisper-api, jarvis-tts, jarvis-ocr-service, jarvis-recipes-server, jarvis-notifications, jarvis-settings-server, jarvis-mcp, jarvis-admin
Impact if Down¶
All inter-service communication that relies on dynamic URL discovery will fail. Services that have already cached URLs may continue operating until their cache expires. New service startups will fail to resolve dependencies.