Reported issues for amnesic
Pod holds 9 of 9 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.
Back to amnesic.
Most discussed
Automate MCP Registry publish via GitHub OIDC (eliminate manual auth)
Problem
Every time we ship a new version, the MCP Registry publish requires a manual `mcp-publisher login github` device-code flow because the token expires in roughly an hour. This means:
- Releases shipped within a tight window get registry updates (good)
- Releases shipped after the token expires need a re-auth (manual, easy to forget)
- v0.1.7 / v0.1.8 / v0.1.9 all skipped registry updates because the token was stale and the changes were docs-only
Proposed
Add a job to `.github/wo
Read the thread · 2026-05-26 · closed · 1 comment
v0.2: native .env support for credentials
Problem
Users currently have to either:
- Export env vars in their shell rc files (`MSSQL_PASSWORD`, etc.)
- Source another project's `.env` from their MCP client invocation (brittle, non-portable)
The README implies `${VAR}` expansion works, but doesn't address how the var actually gets set when amnesic runs as an MCP server (which inherits the parent process env, not the user shell).
Proposed
Auto-load `~/.config/amnesic/.env` (if present) on amnesic startup, before reading `
Read the thread · 2026-05-26 · closed · 1 comment
Who's using amnesic? 👋
Using amnesic? Drop a comment. 👋
It's genuinely the only way I can tell what's actually being used. PyPI download counts are dominated by mirrors and CI, GitHub stars measure something else entirely, and neither tells me whether the MSSQL path works for anyone or whether people care about the relationship graph. A one-line comment tells me more than either number.
What to say
Anything you're comfortable sharing — all of it optional:
- Who — company, team, or just "personal pro
Read the thread · 2026-08-16 · open · 0 comments
db_explain — return the database's own query plan (passthrough, not an analyzer)
Problem
amnesic can run a query but can't tell you how the database intends to execute it. When the AI writes a slow query against production, there's no way to see why from inside the tool.
To be clear about scope: this is a passthrough, not an analyzer. amnesic is not going to do index tuning or plan cost analysis — Postgres MCP Pro does that well and competing with it is an explicit non-goal (see [ROADMAP.md](../blob/main/ROADMAP.md#where
Read the thread · 2026-08-16 · open · 0 comments
Soft-FK inference for legacy schemas with no FK constraints
Problem
db_discover_relationships reads FK constraints from the live database. On a well-designed schema that works well. On the schemas where an AI assistant is most needed — legacy MSSQL, MySQL tables built without constraints, anything that grew organically over a decade — it returns nothing, because there are no declared constraints to read.
This is precisely the gap a live-introspection server cannot close: there is no metadata to introspect. It's ours to take.
Proposed shape
Read the thread · 2026-08-16 · open · 0 comments
Cached schema never expires — add fetched_at and a stale flag
Problem
db_get_schema serves the cached schema forever. From amnesic/tools/schema.py:
cached_columns = None if force_refresh else store.get_cached_schema(fqn)
There is no TTL, no timestamp, and no signal to the caller. A column added six months ago is invisible until a human remembers to pass force_refresh=True. db_detect_drift exists but is manual and opt-in — the agent has no reason to run it because nothing tells it the cache might be stale.
This is why amnesi
Read the thread · 2026-08-16 · open · 0 comments
Schema fetch is missing primary keys and indexes
Problem
_fetch_schema_from_db in amnesic/tools/schema.py selects only four fields per column:
column_name, data_type, is_nullable, max_length
No primary keys. No indexes. No defaults. No identity/computed flags.
This means an agent using amnesic cannot tell whether its WHERE clause hits an index, so it writes slow queries against production. DBHub and Postgres MCP Pro both return index and constraint metadata; this is table stakes for a database MCP server and its absenc
Read the thread · 2026-08-16 · open · 0 comments
Shrink the tool surface: 12 tools (~3.4k tokens) → ~5 with action/detail_level params
Problem
amnesic ships 12 MCP tools. Measured from amnesic/server.py, the tool definitions total ~2,684 tokens, plus a ~679-token server instructions block — roughly 3.4k tokens of context consumed in every session before the agent does anything at all.
For comparison, DBHub ships 2 tools by default and advertises a 1.4k-token footprint, benchmarking itself against MCP Toolbox (19.0k) and Supabase MCP (19.3k). Tool-surface footprint is now a publicly marketed axis, and ours is
Read the thread · 2026-08-16 · open · 0 comments
Most recent
Token budget: cap every tool response so a single call can't blow out the context window
Problem
No tool in amnesic caps the size of its response. The only cap in the codebase is _UNDOCUMENTED_LIST_CAP in amnesic/tools/drift.py.
The worst offender is db_query: max_rows=500 by default with no character budget. A SELECT * against a 40-column table returns 500 full row dicts — easily 50k tokens in a single tool result, which can blow out the caller's context window in one call. db_list_tables is unbounded too (every cached table with description and aliases), and `db_g
Read the thread · 2026-08-16 · open · 0 comments
The remaining reports are on the project's issue tracker.