v0.3.0 — MCPB drag-drop + in-chat auth
Highlights
- Drag-drop install for Claude Desktop. Download the
.mcpbartifact attached to this release, drag it into Settings → Extensions, fill in App ID + Secret in the config tab, then ask Claude “log me into Accela” — no terminal needed. - In-chat auth recovery. Two new tools (
accela_auth_status,accela_login) are always available, even when no tokens exist or the refresh window has expired. The OAuth flow runs from inside the MCP process. - Auto-pagination on search tools.
accela_search_records,accela_get_my_records,accela_search_addresses,accela_search_contacts, andaccela_search_professionalsnow return up to 1000 results by default and surface acontinuationcursor when more are available, so a year-long records query no longer silently stops at 100.
Added
authcapability group (always-on) —accela_auth_status,accela_login. The login tool opens the browser, captures the OAuth redirect on a loopback listener, persists encrypted tokens, and auto-createscapabilities.yamlon first login.- Bootstrap mode in
serve_async— when tokens are missing or the refresh window has lapsed, the server registers only the auth tools instead of failing to start. ensure_mcp_key()auto-generates a Fernet encryption key on first run when the host passes an empty value, persisting it to the user-level env file (mode 0600 on Unix).- 401-after-refresh API errors include a
hintpointing ataccela_loginso the model can self-suggest the fix. manifest.json,bundle/server/launcher.py,bundle/icon.png,scripts/build-mcpb.sh, and.github/workflows/release-mcpb.ymlso each Release attaches a packed.mcpb.auto_paginate=True(default) andmax_results=1000on the search tools, with a structuredcontinuationcursor when capped. Setauto_paginate=Falsefor the previous single-page behavior.auto_paginate_collecthelper inapi/pagination.pyfor tool authors.docs/INSTALL.mdcovering all four install paths (Claude Desktop drag-drop,accela-mcp setupCLI, manual Codex, manual Cursor / stdio).
Changed
tools/_base.tool_calladds the login hint for status 401, alongside the existing EMSE hint for status 500.default_capabilities_yamlmoved fromcli.pyintocapabilities.pyso the CLI and the in-chat login path share one default.
Install
- Claude Desktop: download
accela-mcp-0.3.0.mcpbbelow and drag it into Settings → Extensions. - CLI (Codex / Claude Desktop / Cursor):
uv tool install accela-mcpthenaccela-mcp setup.
Full install walkthrough: docs/INSTALL.md.