Coala Client
Part of the coala ecosystem. CLI for chat with OpenAI-compatible LLMs (OpenAI, Gemini, Ollama) and MCP (Model Context Protocol) servers. Supports importing CWL toolsets as MCP servers, importing skills.
Config paths
- MCP config and toolsets:
~/.config/coala/mcps/mcp_servers.json— server definitions<toolset>/— per-toolset dirs withrun_mcp.pyand CWL files
- Skills:
~/.config/coala/skills/(one subfolder per imported source) - Env:
~/.config/coala/env(optional; key=value for providers and MCP env)
Quick start
-
Init (first time)
coala init— creates~/.config/coala/mcps/mcp_servers.jsonandenv. -
Set API key
e.g.export OPENAI_API_KEY=...orexport GEMINI_API_KEY=.... Ollama needs no key. -
Chat
coalaorcoala chat— interactive chat with MCP tools.
coala ask "question"— single prompt with MCP. -
Options
-p, --provider(openai|gemini|ollama|custom),-m, --model,--no-mcp.
MCP: CWL toolsets
No API key needed for MCP import, list, or call — only for chat/ask with an LLM.
-
Import (creates toolset under
~/.config/coala/mcps/<TOOLSET>/and registers server):
coala mcp-import <TOOLSET> <SOURCES...>or aliascoala mcp ...
SOURCES: local.cwlfiles, a.zip, or http(s) URLs to a .cwl or .zip.
Requires thecoalapackage where the MCP server runs (forrun_mcp.py). -
List
coala mcp-list— list server names.
coala mcp-list <SERVER_NAME>— print each tool’s schema (name, description, inputSchema). -
Call
coala mcp-call <SERVER>.<TOOL> --args '<JSON>'
Example:coala mcp-call gene-variant.ncbi_datasets_gene --args '{"data": [{"gene": "TP53", "taxon": "human"}]}'
Skills
-
Import (into
~/.config/coala/skills/, one subfolder per source):
coala skill <SOURCES...>
SOURCES: GitHub tree URL (e.g.https://github.com/owner/repo/tree/main/skills), zip URL, or local zip/dir. -
In chat
/skill— list installed skills.
/skill <name>— load skill from~/.config/coala/skills/<name>/(e.g. SKILL.md) into context.
Chat commands
/help,/exit,/quit,/clear/tools— list MCP tools/servers— list connected MCP servers/skill— list skills;/skill <name>— load a skill/model— show model info/switch <provider>— switch provider
MCP on/off
- All off:
coala --no-mcp(orcoala ask "..." --no-mcp). - One server off: remove its entry from
~/.config/coala/mcps/mcp_servers.json. - On: default when
--no-mcpis not used; add or restore servers inmcp_servers.json.
Providers and env
Set provider via -p or env PROVIDER. Set keys and URLs per provider (e.g. OPENAI_API_KEY, GEMINI_API_KEY, OLLAMA_BASE_URL). Optional: put vars in ~/.config/coala/env.
coala config — print current config paths and provider/model info.