mcpField
D
DepTime

DepTime

Local
github.com/cschmertzOther0Updated today

About DepTime

DepTime is a local API history tool for coding agents working with Python libraries. It uses static diffs across indexed releases to identify when a symbol changed and what replaces it, without sending code or errors off the machine.

Key features

  1. 01Explain Python API errors with release evidence
  2. 02Browse symbol history across versions
  3. 03Check symbols and keyword arguments before use
  4. 04Compare releases or changes since a date
  5. 05Local answers from a prebuilt release index

Use cases

  1. 01Diagnose an ImportError or removed argument
  2. 02Check remembered APIs before generating code
  3. 03Review breaking changes before upgrading a dependency

MCP support

Its local MCP server exposes tools for error explanations, symbol history, pre-flight symbol checks, version diffs, and index coverage.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cschmertz-deptime": {
"command": "uvx",
"args": [
"deptime"
],
"env": {
"DEPTIME_OFFLINE": "<DEPTIME_OFFLINE>",
"DEPTIME_HOME": "<DEPTIME_HOME>"
}
}
}
}
Run commanduvx deptime
Environment variables to set
DEPTIME_OFFLINESet to 1 to never touch the network: no index download and no daily update check.
DEPTIME_HOMEWhere the index is stored. Defaults to ~/.cache/deptime.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypideptime0.1.2

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

DepTime

An API time machine for Python libraries, built for coding agents.

PyPI Python CI Index build License: MIT

When an agent hits ImportError, AttributeError or "unexpected keyword argument" in a fast-moving library, one call to DepTime says what changed, in which release, and what to use instead. Answers are computed from static diffs of every indexed release, not from docs or model memory.

Free, open source (MIT), and local: your code and errors never leave your machine.

How DepTime works. Built nightly on GitHub: new PyPI releases are read statically and diffed release to release; packages are never imported or run. The only thing that crosses to your machine is one file, index.sqlite.gz. Answered on your machine: deptime mcp answers your agent locally, and your code and errors stay there.

TypeError: Client.__init__() got an unexpected keyword argument 'proxies'
{
  "symbol": "httpx.Client.__init__(proxies)",
  "issue": "param_removed",
  "installed_version": "0.28.1",
  "last_version_with": "0.27.2",
  "first_version_without": "0.28.0",
  "deprecated_in": "0.26.0",
  "replacements": [
    {"target": "proxy", "confidence": 0.8, "source": "deprecation_message"},
    {"target": "mounts", "confidence": 0.79, "source": "deprecation_message"}
  ],
  "pin_to_restore": "httpx<=0.27.2",
  "confidence": "high"
}

That's the real explain_error answer from the published index, trimmed. The full answer also quotes the deprecation message DepTime found in httpx's own source, and adds a one-sentence explanation for your agent to pass on.

Status: alpha. The prebuilt index is rebuilt nightly. Known gaps are tracked in BACKLOG.md.

Install

Requires uv.

# Claude Code. Cursor, Codex, VS Code and Claude Desktop take the same
# command (uvx deptime mcp) in their MCP config.
claude mcp add deptime -- uvx deptime mcp

On first launch DepTime downloads its prebuilt index (one file from this repo's GitHub Releases) in the background, then checks for a newer one at most once a day. Set DEPTIME_OFFLINE=1 to never touch the network.

Claude Code users can also install the plugin in integrations/claude-code with /plugin marketplace add cschmertz/deptime, then /plugin install deptime@deptime. It adds a skill and a local hook that suggests DepTime when a Python version-change error appears in a command's output.

Tools

ToolUse it when
explain_error(traceback, installed_versions?, pip_freeze?)An import or call into a library just failed
symbol_history(package, path)Before trusting an API you remember
check_symbols(package, version, symbols[{path, kwargs}])Pre-flight check of the symbols and kwargs you're about to use
diff_versions(package, from_version | date, to_version?, used_symbols?)Upgrading, or "what changed since my training cutoff?"
coverage()What's indexed (52 fast-moving packages: AI/agent stack + libraries with known breaking changes)

Every answer carries evidence and a confidence level. If a package isn't covered, DepTime says so instead of guessing. The contracts are in docs/03-product-spec.md.

CLI

uvx deptime explain --installed httpx==0.28.1 < traceback.txt
uvx deptime history httpx Client.__init__
uvx deptime check httpx 0.28.1 'httpx.Client:proxies,proxy'
uvx deptime diff httpx 0.27.2 0.28.1
uvx deptime diff pydantic 2024-06-01              # everything since a date
uvx deptime index status | pull

How it works

Every night, GitHub Actions reads each new release's public API with griffe, which parses the source without running it, diffs it against the previous release, and publishes the result as one file, index.sqlite.gz, on this repo's Releases. On your machine, deptime mcp checks that file's sha256 and schema before swapping it in, then answers every question locally in milliseconds. The full design is in docs/04-architecture.md, and the decisions are in docs/adr/.

Hosting (optional)

Local mode covers coding agents. For web clients that only accept a URL, or for a public demo, run deptime serve (MCP at /mcp, JSON at /v1/*) on Cloud Run (likely free) or Fly.io (about $3–6/month). It has a Dockerfile and fly.toml, plus anonymous rate limits. See docs/05-hosting-and-sustainability.md.

Prior art and credits

  • griffe does the static analysis.
  • since-cutoff diffs your pinned dependencies against a model's training cutoff, locally and on demand. DepTime differs by shipping a prebuilt cross-version index and starting from a traceback.
  • Context7 and Ref serve version-specific docs. DepTime answers symbol-level "when and what replaced it" questions.

Contributing

The most useful contributions are wrong-answer reports, which become benchmark cases. See CONTRIBUTING.md. Development setup:

uv sync && uv run pytest
# build a small local index from real PyPI wheels
uv run deptime ingest httpx --versions 0.27.2 0.28.1

Docs

Product spec · Architecture · Hosting & sustainability · Launch & adoption · Risks & spikes · Privacy & security

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.