This repository has been archived on 2026-08-16. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Levi Neely f2f61ee6be Make system prompt more prescriptive for smaller models
Replace high-level principles with explicit rules: when to call
execute_code, exact invocation syntax for all three modes, and
a numbered sequence (discover skills → plan → execute) that
smaller models can follow without inferring intent.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 23:55:43 +02:00
agent Add system prompt; delete BeadState 2026-03-31 23:18:40 +02:00
backend Rename OLLIE_API_KEY to OLLIE_OPENAI_KEY 2026-03-31 23:51:01 +02:00
config Remove MCP layer; execute_code is the sole built-in tool 2026-03-31 23:13:05 +02:00
exec Add ollie/exec package: extract execute_code from anvillm-mcp 2026-03-31 22:30:19 +02:00
.gitignore Initial commit 2026-02-21 20:47:38 +01:00
ARCHITECTURE.md Initial commit 2026-02-21 20:47:38 +01:00
LICENSE Add GNU General Public License v3 2026-02-21 22:21:21 +01:00
README.md Update usage section: clarify UI and tool dependencies 2026-02-21 20:55:47 +01:00
go.mod Add ollie/exec package: extract execute_code from anvillm-mcp 2026-03-31 22:30:19 +02:00
go.sum Add ollie/exec package: extract execute_code from anvillm-mcp 2026-03-31 22:30:19 +02:00
main.go Make system prompt more prescriptive for smaller models 2026-03-31 23:55:43 +02:00
mcpconfig.json Initial commit 2026-02-21 20:47:38 +01:00
mkfile Initial commit 2026-02-21 20:47:38 +01:00
ollie Add system prompt; delete BeadState 2026-03-31 23:18:40 +02:00

README.md

Ollie

A Go CLI that connects Ollama LLMs to MCP (Model Context Protocol) servers for tool use. Built because I couldn't find what I wanted with existing tools.

Quick Start

Requirements:

Build:

go build

Run:

./ollie config.json [model]

Default model is qwen3:8b. Override with any Ollama model name.

Configuration

Create a JSON file defining your MCP servers:

{
  "mcpServers": {
    "filesystem": {
      "command": "mcp-server-filesystem",
      "args": ["/path/to/allowed/directory"],
      "env": {
        "DEBUG": "true"
      }
    },
    "disabled-example": {
      "command": "some-server",
      "disabled": true
    }
  }
}

Options:

  • command - MCP server executable (required)
  • args - Command arguments (optional)
  • env - Environment variables (optional)
  • disabled - Skip this server (optional)

MCP server commands must be in your PATH.

Usage

Chat history displays in a scrollable viewport. Type in the multi-line text area below, submit with Enter (Ctrl+J for new lines).

Tools depend on which MCP servers you configure. Example with filesystem server:

> What files are in the current directory?
[Calling tool from filesystem server]
Found: main.go, config/, mcp/, ollama/, tools/

Troubleshooting

No servers connected

  • Verify MCP server commands are in PATH
  • Check command names and arguments in config

Tools not working

  • Ensure servers support tools/list and tools/call
  • Check tool arguments match expected schema

Ollama errors

  • Start Ollama: ollama serve
  • Verify model exists: ollama list

License

GPLv3