Server options
Keep provider and server credentials in environment variables, then apply them through typed config objects.
env.sh
export MISTRAL_API_KEY="your-key"
export MISTRAL_BASE_URL="https://api.mistral.ai"
export MISTRAL_MODEL="mistral-medium-latest"builder_server.py
import os
try:
from jazzmine.core import AgentBuilder, OpenAILLMConfig, ServerConfig
except ImportError:
from jazzmine.core.builder import AgentBuilder, OpenAILLMConfig, ServerConfig
builder = (
AgentBuilder(
name="CoreServer",
agent_id="core-server-v1",
personality="Reliable backend assistant.",
)
.llm(
OpenAILLMConfig(
model=os.environ.get("MISTRAL_MODEL", "mistral-medium-latest"),
api_key=os.environ["MISTRAL_API_KEY"],
base_url=os.environ.get("MISTRAL_BASE_URL", "https://api.mistral.ai"),
)
)
.server(
ServerConfig(
host="0.0.0.0",
port=8080,
)
)
)Middleware pipeline
Keep middleware deterministic: validate input early, attach security checks before invoking tools, and emit structured trace events at each stage of the request lifecycle.
Provider adapters
Choose an LLM config model per provider and keep provider-specific credentials in secure environment injection, not hard-coded values.