Hiddenden Cafe
Not in America :)

familiar (0.0.2.dev56)

Published 2026-06-27 19:29:12 +00:00 by Latte

Installation

pip install --index-url https://git.hiddenden.cafe/api/packages/Hiddenden/pypi/simple/ --extra-index-url https://pypi.org/simple familiar

About this package

Your familiar across New Eden — a read-only EVE Online MCP server.

familiar

Your familiar across New Eden — an EVE Online MCP server that lets a local AI see your whole account and the universe, and act on your behalf when you ask.

In EVE, your familiar isn't a cat on the windowsill. It's the companion that rides along through New Eden, sees what you see, remembers what you can't, and fetches — or does — whatever you ask. familiar is exactly that: an MCP server that gives a local AI (Claude Code, Claude Desktop, Cowork) a complete window into your EVE Online account and the entire game universe, plus hands to act on it.

Ask your familiar where your assets are, what your skill queue looks like, what Tritanium sells for in Jita, the safest route to a lowsec system, or whether a fit is worth building — and have it set a waypoint or draft a mail when you say so. It looks, it finds, it reports back, and it acts when asked.

Principles

  • Safe by default. Reading is free; every write — sending mail, setting waypoints, editing contacts/fittings/PI, fleet commands — is previewed before it runs (nothing happens without confirm=true) and recorded in an audit log. Writes are on by default but can be turned off entirely with familiar writes disable. The AI can see everything and changes nothing without your explicit confirm.
  • Local-first. Runs on your own machine. Your refresh token and account data never leave your control.
  • Everything, eventually. The goal is full coverage: the ESI scopes you grant (character and corp, read and write), plus the complete static universe. Built in phases so it actually ships.

How it works

Two data sources sit behind the server:

  • ESI (the EVE Swagger Interface) — the official REST API. Public endpoints (market, universe, industry indices) need no login. Character and corp data (wallet, assets, skills, industry, contracts, mail, location, and more) come through EVE SSO with read and write OAuth2 scopes across both character and corp; write scopes power the opt-in actions.
  • SDE (the Static Data Export) — the full static dataset of items, blueprints, systems and stations, cached locally for fast lookups and anything name- or recipe-based.

Built in Python with FastMCP, OAuth via PKCE with a localhost callback, refresh token stored encrypted on disk. ESI Expires headers are respected for caching, the rolling ESI error limit is honored with back-off, and (eventually) the SDE is loaded into a local store.

Setup

Requires uv.

uv sync                 # install
uv run familiar login   # browser EVE SSO login; run once per character
uv run familiar status  # list logged-in characters

Re-run login for each character (switch EVE accounts in the browser as needed); they all live in one encrypted store. Changing the requested scopes requires logging in again.

Offline SDE (optional)

For network-free item / system / station lookups, install a local copy of EVE's Static Data Export (the Fuzzwork SQLite conversion):

uv run familiar sde download   # download + decompress the SDE (a few hundred MB)
uv run familiar sde status     # show whether it's installed and where

Once present, get_item / get_system / get_station serve from it without hitting ESI; familiar falls back to ESI whenever the SDE is absent or doesn't know the id.

Connect to Claude

Claude Code:

claude mcp add familiar -- uv --directory /path/to/familiar run familiar

Claude Desktop — add this to claude_desktop_config.json:

{
  "mcpServers": {
    "familiar": {
      "command": "uv",
      "args": ["--directory", "/path/to/familiar", "run", "familiar"]
    }
  }
}

Then ask in natural language — "what's Tritanium worth in Jita?", "how much ISK across all my characters?", "where are my characters?".

Write actions

Write actions (send mail, set waypoints, edit contacts/fittings, fleet commands) are on by default. Even so, every write tool returns a dry-run preview unless called with confirm=true per call, and each executed write is recorded in an audit log — so nothing changes by accident.

To opt out and block all writes globally:

uv run familiar writes disable   # turn writes off (uv run familiar writes enable to re-allow)

Roadmap

Built in phases. Each phase is independently useful, so the project stays shippable.

Phase 0 — Skeleton

  • Repo, project scaffold, FastMCP server that starts and exposes a health/ping tool.
  • App registered on developers.eveonline.com.

Phase 1 — Public lookups (no auth)

  • Market: prices and order book for any item in any hub, spreads between hubs.
  • Universe via SDE: items, systems, stations, security, basic route/jumps.
  • Quick win: useful before any OAuth complexity exists.

Phase 2 — Account read (OAuth)

  • EVE SSO login flow, encrypted refresh token storage.
  • Wallet, assets (search across characters), skills + skill queue, current location and clones.

Phase 3 — Industry & contracts

  • Industry jobs, blueprints (SDE-backed), manufacturing cost/profit lookups.
  • Personal and corp contracts, market orders.

Phase 4 — Everything else

  • Mail, planetary interaction, loyalty points, fittings, corp roles.
  • zKillboard integration for kill/PvP data.

Phase 5 — Polish

  • Caching, error-limit safety, packaging, setup docs. Optional: prep a public, generic single-user release as a portfolio case.

Status

Phases 0–4 done on dev, plus Phase 5 caching/back-off and docs: public market & universe lookups; EVE SSO (PKCE) login with an encrypted, multi-character token store; full character and corp coverage across skills, wallet, assets, industry, trade, structures, killmails, profile, fleet, mail, contacts, fittings, PI and more; and opt-in, audited write actions. ~80 tools. Remaining: the full SDE bulk-load. main stays untouched until the first complete version is ready.

License

MIT

Requirements

Requires Python: >=3.11
Details
PyPI
2026-06-27 19:29:12 +00:00
0
MIT License Copyright (c) 2026 Hiddenden Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
178 KiB
Assets (2)
Versions (25) View all
0.0.2.dev59 2026-06-27
0.0.2.dev56 2026-06-27
0.0.2 2026-06-27
0.0.2.dev52 2026-06-27
0.0.1 2026-06-27