coldpass

aliengiraffe/spotdb

GitHub ↗ · How this check works

Per-setup public labels: Linux / Haiku: Works

Static status badge · SVG · read-only JSON. Embed with ![Coldpass status](https://coldpass.dev/badge/aliengiraffe--spotdb.svg).

agenticagentic-aiagentic-workflowagentsaiai-agents

Works

Only older checks are saved; no current product test.

Answers apply to each recorded setup, revision and operation. Earlier observations remain in Run details.

Tested on Linux
PlatformHaikuLuna
Linuxyes

Linux / Haiku 5.5: yes · Oct 18, 2026 · cfbbef27f89d · claude-code / 2.1.300 (Claude Code)
Recorded operation: Remote hosted MCP connection · initialize + tools/list · http://127.0.0.1:8081/stream

MCP
yes, hosted
Yes, hosted
Needs keys or browser
None seen
Issue
none found in recorded check

Safety: no observations were recorded for the selected revision. Functional results do not establish a safety result.

Run details

Haiku 5.5

Native agent · Hosted MCP connection/tools-list passed

Checked operation Remote hosted MCP connection · initialize + tools/list · http://127.0.0.1:8081/stream

Checked against the hosted endpoint only.

Agent-reported scope: Started the SpotDB binary (bin/spotdb) and performed MCP initialize plus tools/list against the Streamable HTTP endpoint http://127.0.0.1:8081/stream; server returned 7 tools (append_insight, create_datasource, describe_datasource, list_datasources, load_datasource, read_query, write_query).

MCP server returned: A10e MCP Server · version 1.0.0.

MCP tools returned: append_insight, create_datasource, describe_datasource, list_datasources, load_datasource, read_query, write_query. Tool listing does not establish authenticated tool-call success.

Run details
run
aliengiraffe--spotdb-claude-haiku-5-5-1792339633706049639
date
Oct 18, 2026
time to working
not recorded
product hosting / execution
Remote hosted MCP endpoint
recorded operation scope
remote hosted MCP initialize + tools/list
model
claude-haiku-5-5
agent / version
claude-code / 2.1.300 (Claude Code)
platform
linux
reported cost
$0.014687
Recorded source
https://github.com/aliengiraffe/spotdb
Tool transport
mcp-assigned-vm
Test version
readme-03aea4c41d53955e3723c330e9927d2a9df627f6642624cc0078a97c73a53c8a
revision
cfbbef27f89d18939149790a0fa9ce1ee2c5eac5
What the agent did

Started the SpotDB binary (bin/spotdb) and performed MCP initialize plus tools/list against the Streamable HTTP endpoint http://127.0.0.1:8081/stream; server returned 7 tools (append_insight, create_datasource, describe_datasource, list_datasources, load_datasource, read_query, write_query).

cd <host-path> && ls -la && cat README.md | head -300
ls -la <host-path> 2>&1; ls -la <host-path> 2>&1; echo CDP=$CDP_URL $<env-var>
cd <host-path> && grep -n -i -E "go (build|run|install)|mcp|make|task |stdio|8081|```bash" DOCS.md | head -80; echo ---; cat Taskfile.yml; echo ---; which go task brew curl; go version 2>&1
cd <host-path> && grep -n -i -E 'go (build|run|install)|mcp|stdio|8081|task ' DOCS.md | head -80; echo ---; cat Taskfile.yml; echo ---; which go task brew curl; go version 2>&1
cd <host-path> && sed -n 120,140p DOCS.md; echo ----; sed -n 250,300p DOCS.md; echo ----; head -5 go.mod; cat .github/workflows/*.yml 2>/dev/null | grep -n -i -E "go-version|run:" | head
cd /tmp && (curl -fsSL -m 120 -o go.tgz https://go.dev/dl/go1.25.2.linux-amd64.tar.gz; echo rc=$?; ls -la go.tgz 2>&1) ; env | grep -i proxy
mkdir -p <host-path> && cd <host-path> && tar -xzf /tmp/go.tgz && <host-path> version && rm -f /tmp/go.tgz
uname -m; file <host-path> 2>&1; ls <host-path>
rm -rf <host-path> && mkdir -p <host-path> && cd /tmp && curl -fsSL -m 180 -o go.tgz https://go.dev/dl/go1.25.2.linux-arm64.tar.gz && cd <host-path> && tar -xzf /tmp/go.tgz && rm -f /tmp/go.tgz && <host-path> version
cd <host-path> && export PATH=<host-path> && export GOPATH=<host-path> && go build -o ./bin/spotdb . ; echo rc=$?; ls -la bin/ 2>&1
cd <host-path> && cat Dockerfile; echo ----; ls .github/workflows; grep -n -E "run:|GOLANG|runs-on|CGO|platform" .github/workflows/*.yml | head -40; echo ----; ls <host-path> 2>&1; ls <host-path> 2>&1 | head -30
which gcc cc; go env CGO_ENABLED 2>/dev/null; <host-path> env CGO_ENABLED
(sudo -n apt-get update -qq && sudo -n DEBIAN_FRONTEND=noninteractive apt-get install -y -qq build-essential >/tmp/apt.log 2>&1); echo rc=$?; which gcc && gcc --version | head -1
cd <host-path> && export PATH=<host-path> GOPATH=<host-path> CGO_ENABLED=1 && mkdir -p bin && go build -o ./bin/spotdb . 2>&1 | tail -20; echo rc=${PIPESTATUS[0]}; ls -la bin/
cd <host-path> && ls cmd cmd/*; cat main.go; grep -rn -i "8081\|stdio\|streamable" --include=*.go . | grep -v _test | head -20; grep -n "ENV_\|SOCKET_PORT\|MCP" -r pkg/config 2>/dev/null | head -30
cd <host-path> && grep -rn -A25 "func apiKeyMiddleware" pkg/mcp/ | head -50; grep -rn "API_KEY\|APIKEY\|api_key" --include=*.go . | grep -v _test | head
cd <host-path> && grep -n -B3 -A20 "func IsValidAPIKeyFromHeader" pkg/helpers/helpers.go; grep -rn "ENV_\|envconfig\|Getenv" --include=*.go pkg/config internal 2>/dev/null | head -20
cd <host-path> && (nohup ./bin/spotdb > <host-path> 2>&1 &) ; sleep 6; curl -s -m 5 -o /dev/null -w "8080:%{http_code}\n" http://127.0.0.1:8080/ ; curl -s -D /tmp/h.txt -m 10 -X POST http://127.0.0.1:8081/stream -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"probe","version":"1"}}}'; echo; cat /tmp/h.txt | grep -i mcp-session
SID=$(grep -i mcp-session /tmp/h.txt | sed 's/.*: //' | tr -d '\r\\x0d' | sed 's/\\x0d//g'); echo "sid=$SID"; H=(-H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' -H "Mcp-Session-Id: $SID"); curl -s -m 10 -X POST http://127.0.0.1:8081/stream "${H[@]}" -d '{"jsonrpc":"2.0","method":"notifications/initialized"}' -o /dev/null -w "notif:%{http_code}\n"; curl -s -m 15 -X POST http://127.0.0.1:8081/stream "${H[@]}" -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' | head -c 3000; echo
SID=$(grep -io 'mcp-session-[0-9a-f-]*' /tmp/h.txt | head -1); echo "sid=$SID"; H=(-H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' -H "Mcp-Session-Id: $SID"); curl -s -m 10 -X POST http://127.0.0.1:8081/stream "${H[@]}" -d '{"jsonrpc":"2.0","method":"notifications/initialized"}' -o /dev/null -w "notif:%{http_code}\n"; curl -s -m 15 -X POST http://127.0.0.1:8081/stream "${H[@]}" -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' | head -c 2500; echo
cat -A /tmp/h.txt | head; 
SID=$(tr -d '\r' < /tmp/h.txt | awk -F': ' 'tolower($1)=="mcp-session-id"{print $2}'); echo "sid=$SID"; H=(-H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' -H "Mcp-Session-Id: $SID"); curl -s -m 10 -X POST http://127.0.0.1:8081/stream "${H[@]}" -d '{"jsonrpc":"2.0","method":"notifications/initialized"}' -o /dev/null -w "notif:%{http_code}\n"; curl -s -m 15 -X POST http://127.0.0.1:8081/stream "${H[@]}" -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' | head -c 2500; echo
pkill -f '<host-path>' ; pkill -x spotdb; sleep 2; pgrep -fa spotdb || echo "no spotdb running"; (ss -ltnp 2>/dev/null | grep -E ':(8080|8081|6033)\b') || echo "ports free"; mkdir -p <host-path> && ls -la <host-path>
pgrep -x spotdb || echo "no spotdb running"; ss -ltn | grep -E ':(8080|8081|6033) ' || echo "ports free"; mkdir -p <host-path> && ls -ld <host-path>
kill 5245; sleep 3; pgrep -x spotdb || echo "no spotdb running"; ss -ltn | grep -E ':(8080|8081|6033) ' || echo "ports free"
cd <host-path> && cat > probe.json <<'EOF'
{
  "kind": "mcp_http",
  "argv": ["<host-path>"],
  "cwd": "<host-path>",
  "url": "http://127.0.0.1:8081/stream",
  "env": {}
}
EOF
cat > report.json <<'EOF'
{
  "outcome": "working",
  "operation": "Started the SpotDB binary (bin/spotdb) and performed MCP initialize plus tools/list against the Streamable HTTP endpoint http://127.0.0.1:8081/stream; server returned 7 tools (append_insight, create_datasource, describe_datasource, list_datasources, load_datasource, read_query, write_query).",
  "operation_scope": "Verified build and MCP server start/tools-list only. Did not run go test or lint suites (per task instructions). REST upload/query on :8080 and the MCP tool calls were not exercised. No API_KEY is set, so no credentials were needed. No browser used.",
  "steps": [
    "Read README.md; Quick Start uses Homebrew (brew install spotdb), which is not available in the guest, so built from source per DOCS.md/Taskfile.yml.",
    "Installed Go 1.25.2 linux/arm64 from https://go.dev/dl/go1.25.2.linux-arm64.tar.gz into <host-path> (go.mod requires go 1.25.1; CI uses 1.25.2).",
    "Installed build-essential via apt-get (gcc needed for cgo).",
    "CGO_ENABLED=1 go build -o ./bin/spotdb . (same command as Taskfile 'build' task, with CGO enabled as in the Dockerfile).",
    "Started ./bin/spotdb; MCP initialize on :8081/stream returned protocol 2025-03-26 and an Mcp-Session-Id; notifications/initialized returned 202; tools/list returned 7 tools.",
    "Stopped the server (PID 5245); ports 6033, 8080, 8081 confirmed free.",
    "Wrote .coldpass/probe.json (kind mcp_http, argv starts ./bin/spotdb, url http://127.0.0.1:8081/stream)."
  ],
  "deviations": [
    "README Quick Start 'brew tap aliengiraffe/spaceship && brew install spotdb' cannot run in this Linux guest (no Homebrew). Replaced with source build.",
    "Taskfile 'build' task (go build -o ./bin/spotdb .) failed with 'undefined: bindings.Type' in github.com/marcboeker/go-duckdb/mapping because CGO was disabled (no gcc). Fix: installed build-essential and rebuilt with CGO_ENABLED=1, matching the Dockerfile.",
    "Taskfile itself was not run because go-task is not installed; ran the underlying go build command directly.",
    "First Go download was an amd64 tarball, which failed with 'Exec format error' on this aarch64 guest; replaced with the linux-arm64 tarball."
  ],
  "stuck_step": null,
  "main_blocker": null,
  "suggested_fix": null
}
EOF
python3 -I -m json.tool probe.json >/dev/null && python3 -I -m json.tool report.json >/dev/null && echo json-ok; cd <host-path> && <env-var>=<host-path> python3 -I <host-path> --validate; echo rc=$?