not-ace-tool-rs
v1.0.2
Published
MCP server for codebase indexing, semantic search, and prompt enhancement
Maintainers
Readme
not-ace-tool-rs
An MCP server that gives AI coding agents grounded codebase context, prompt enhancement, web search, and mid-task advice from a Finnian/ACE backend.
Your editor launches this binary as a subprocess. It speaks JSON-RPC 2.0 over stdio and proxies tool calls to your Finnian/ACE server, so the agent answers from a real index of your codebase instead of guessing.
Quick Start
npx not-ace-tool-rs --base-url <API_URL> --token <AUTH_TOKEN>npx downloads the right platform package, starts the server, and serves MCP tools over stdio. Supports Linux (x64/ARM64), macOS (x64/ARM64), and Windows (x64/ARM64).
Tools
| Tool | What it does |
|---|---|
| codebase_retrieval | Retrieve ranked code context for a natural-language question, scoped to indexed blobs |
| enhance_prompt | Rewrite a prompt using retrieved codebase context |
| web_search | Search the web through the server |
| advisor | Ask for a course correction mid-task: assessment, recommendation, and the failure mode to watch for |
advisor requires a server exposing POST /agents/advisor. Against an older backend it returns a clear "not supported" result instead of failing the session, so one binary works across server versions.
MCP Client Setup
Claude Code
claude mcp add-json not-ace-tool --scope user '{
"type": "stdio",
"command": "npx",
"args": ["not-ace-tool-rs", "--base-url", "https://your-api.example.com", "--token", "your-token"]
}'Then allow the tools in ~/.claude/settings.json:
{
"permissions": {
"allow": [
"mcp__not-ace-tool__codebase_retrieval",
"mcp__not-ace-tool__enhance_prompt",
"mcp__not-ace-tool__web_search",
"mcp__not-ace-tool__advisor"
]
}
}Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json on macOS:
{
"mcpServers": {
"not-ace-tool": {
"command": "npx",
"args": ["not-ace-tool-rs", "--base-url", "https://your-api.example.com", "--token", "your-token"]
}
}
}Codex CLI
~/.codex/config.toml:
[mcp_servers.not-ace-tool]
command = "npx"
args = ["not-ace-tool-rs", "--base-url", "https://your-api.example.com", "--token", "your-token"]
startup_timeout_ms = 60000Configuration
| Flag | Environment variable | Required |
|---|---|---|
| --base-url | FINNIAN_BASE_URL | Yes |
| --token | FINNIAN_API_TOKEN | Yes |
Flags take precedence over environment variables. The base URL must be HTTP(S); trailing slashes are stripped. Startup fails with a message on stderr if either is missing.
Tool Reference
codebase_retrieval
| Parameter | Type | Required | Description |
|---|---|---|---|
| information_request | string | Yes | What you want to know, in natural language |
| blobs | object | Yes | Blob scope: checkpoint_id, added_blobs, deleted_blobs |
| max_output_length | integer | No | Cap on returned characters |
enhance_prompt
| Parameter | Type | Required | Description |
|---|---|---|---|
| prompt | string | Yes | The prompt to rewrite |
| conversation_history | any | No | Prior turns, for continuity |
| blobs | object | No | Blob scope to ground the rewrite |
web_search
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | Search query |
| count | integer | No | Results to return (the server caps this) |
advisor
| Parameter | Type | Required | Description |
|---|---|---|---|
| situation | string | Yes | The decision you face |
| proposed_approach | string | No | What you are about to do; also sharpens retrieval |
| transcript | string | No | Recent turns; tail-truncated when long |
| blobs | object | No | Blob scope. Omit it and the advice is ungrounded — the response says so via grounded_in_code |
Notes
- stdout carries only JSON-RPC frames; all diagnostics go to stderr, so the protocol stays clean.
- Requests time out after 30 seconds.
- Upstream error bodies are truncated and stripped of the auth token before being surfaced, since MCP errors surface in your editor.
Building from Source
cargo build --release
./target/release/not-ace-tool-rs --base-url <API_URL> --token <AUTH_TOKEN>License
GPL-3.0-only OR LicenseRef-Commercial. See LICENSE and LICENSE-COMMERCIAL.
