Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Banktivity MCP server for .bank8 vaults; writes go through Core Data so CloudKit sync sees them.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
BANKTIVITY_FILE_PATH, BANKTIVITY_STORE_READ_ONLY어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
링크는 제작자의 파일로 바로 연결돼요. 우리가 보관하거나 다시 패키징하지 않아요. 파일을 열면 Claude Desktop이 설치해요.
터미널에서 이 명령어를 실행하세요
실행하기 전에 빈 값을 채워 주세요.
브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
BANKTIVITY_FILE_PATH envBANKTIVITY_STORE_READ_ONLY env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 10일 점검
레지스트리 이름이 GitHub 계정 david00769 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.17.4)은 3일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 MCPB도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Claws Mail MCP Plugin
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:↓ 주간 다운로드i★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Claws Mail plugin exposing the running mail client over a local, bearer-token MCP endpoint.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
A Swift library, Model Context Protocol (MCP) server and command-line tool for Banktivity personal finance files. It lets Claude Desktop, Claude Code, Cursor and other MCP clients or AI agents read and write a Banktivity 10 .bank8 vault: accounts, transactions, splits, categories, payees, tags, templates, import rules, scheduled transactions, statements and securities. It can also export a vault as RDF.
Every change goes through Core Data, the way Banktivity itself writes, so edits are seen by Banktivity's iCloud/CloudKit sync. See CloudKit sync safety.
A .bank8 vault is a Core Data store, and Banktivity syncs it through CloudKit.
core.sql with SQL bypasses Core Data's change tracking. CloudKit sync never sees those edits, so they can fail to sync, be reverted, or corrupt the vault. Martijn Riemers's TypeScript banktivity-mcp, which inspired the Swift rewrite, was built that way.NSPersistentContainer, using Banktivity's own compiled data model, and makes every change through it, as Banktivity does.lsof check, from the Swift rewrite).Warning: this tool changes your Banktivity data. Write commands make real
changes to your vault, and AI assistants make mistakes. Back up the vault before
any write session, and work on a copy until you trust your setup. The authors
are not responsible for data loss.
Using it safely
banktivity-cli or banktivity-mcp process per vault at a time. Writes are queued inside one process, but nothing locks the file across processes.banktivity-mcp server before you open the same vault in Banktivity.app. The app and this tool must not have the file open together. (Writes are refused while Banktivity has the vault open, but reads are not.)This is david00769's maintained fork of Steve Flinter's banktivity-swift-mcp. It has everything upstream has. Upstream merged nine of this fork's pull requests on 2026-11-03, so much of the fork's earlier work is in upstream too. Some of what is listed below is still offered upstream as pull requests; the rest is only here.
What the fork adds:
accounts update;line-items source, showing the raw bank import behind a transaction;Some of this came from other people's forks. ACKNOWLEDGEMENTS.md credits each contribution, and CHANGELOG.md lists every change by release.
Three related projects come up when you search for a Banktivity MCP server:
| Project | Language | How it writes | Install | Status |
|---|---|---|---|---|
| mhriemers/banktivity-mcp | TypeScript (npm) | SQL into core.sql (as described when the Swift rewrite began) | npm | The original TypeScript server that inspired the Swift rewrite |
| sflinter/banktivity-swift-mcp | Swift | Core Data (NSPersistentContainer) | Homebrew (sflinter/tap) | The Swift rewrite this fork is based on |
| david00769/banktivity-swift-mcp (this repo) | Swift | Core Data, plus the guards above | Release download or make install | Maintained; everything upstream has, plus the fork's additions |
If you want an AI assistant to write to a vault that syncs through iCloud, use one of the Core Data projects. All three can read a vault.
.bank8 vaultEach release has one universal download (Apple Silicon and Intel) and a checksum file. CI builds and tests the release from the tagged commit. For v0.17.4:
base=https://github.com/david00769/banktivity-swift-mcp/releases/download/v0.17.4
curl -LO "$base/banktivity-swift-mcp-v0.17.4-macos-universal.tar.gz" curl -LO "$base/banktivity-swift-mcp-v0.17.4-macos-universal.tar.gz.sha256" shasum -a 256 -c banktivity-swift-mcp-v0.17.4-macos-universal.tar.gz.sha256 # prints "OK"
tar xzf banktivity-swift-mcp-v0.17.4-macos-universal.tar.gz xattr -d com.apple.quarantine banktivity-cli banktivity-mcp 2>/dev/null || true mkdir -p ~/.local/bin && mv banktivity-cli banktivity-mcp ~/.local/bin/ banktivity-cli --version # 0.17.4
The binaries are signed ad hoc, not notarized. The xattr line removes the quarantine flag macOS puts on downloaded files, which would otherwise stop them from running.
.mcpb)Each release also has banktivity-swift-mcp-vX.Y.Z-macos-universal.mcpb, an MCP Bundle. Download it and open it with Claude Desktop to install banktivity-mcp as an extension. Leave Vault path blank to use your Banktivity 10 vault (see Where is my vault?), and consider turning Read-only on. The binary inside is ad-hoc signed, not notarized; if macOS refuses to run it, clear the quarantine flag with xattr -dr com.apple.quarantine ~/Library/Application\ Support/Claude/Claude\ Extensions and restart Claude Desktop. It installs only the MCP server; for the CLI, use the download above. The server is also listed in the MCP Registry as io.github.david00769/banktivity-swift-mcp.
Xcode 16 or later is recommended. Without Xcode the Makefile falls back to the Command Line Tools for building and installing (not tested here); running the tests needs Xcode.
git clone https://github.com/david00769/banktivity-swift-mcp.git
cd banktivity-swift-mcp make install # universal build, installed to ~/.local/bin
Always install with make install (or make install-fast for a quicker single-architecture build). Never copy a new binary over ~/.local/bin with cp. cp rewrites the file in place, and a banktivity-mcp still running from it is killed by macOS the next time it starts ("Code Signature Invalid"). The Makefile copies to a temporary name, signs it, then renames it into place.
Other Makefile targets:
make help # list all targets
make install-fast # native-architecture build and install, for development make verify # check that the installed binaries actually run make build # debug build make test # run all tests make test-filter FILTER=AccountUpdateTests # run one test type make release # universal release build (arm64 + x86_64) make package # release tarball plus its SHA-256 make mcpb # the tarball plus the Claude Desktop bundle (.mcpb) make clean # remove build output
make test runs the suite the way a release build behaves: release configuration, one worker, Xcode's test frameworks.
brew install sflinter/tap/banktivity-swift-mcp
This installs upstream's binaries, without this fork's changes.
CI (.github/workflows/ci.yml) runs on every push and pull request to main. It runs make test, then make package, so a change that breaks the release build fails before anyone tags it. To release, bump Sources/BanktivityLib/Version.swift and add a matching section to CHANGELOG.md, then push a tag:
git tag -a v0.18.0 -m "v0.18.0" && git push origin v0.18.0
.github/workflows/release.yml then checks that the tag matches Version.swift, runs the tests, builds the tarball and publishes the release. The CHANGELOG section becomes the release notes.
Banktivity 10 keeps a vault that syncs through Banktivity Cloud in its own library, not in Documents:
~/Library/Group Containers/group.com.iggsoftware.banktivity.library/IGGFinance/production/Documents/<vault id>/1.bank8
The folder differs from Mac to Mac. If `BANKTIVITY_FILE_PATH` is unset or empty, `banktivity-mcp` and `banktivity-cli` use the vault in that folder, provided there is exactly one. With several they list them and stop, so you can pick one.
macOS asks permission first. That folder belongs to Banktivity, and macOS protects one app's data from other apps, so the first run is blocked until you grant access. See Granting access on macOS.
A vault saved anywhere else (the examples below use ~/Documents/Banktivity/My Accounts.bank8) needs its path set. The path must end in .bank8; if you give a folder, the error lists the vaults inside it.
macOS blocks other programs from reading Banktivity 10's library until you allow it. Until then the server logs:
Error: macOS blocked access to Banktivity's library (…/IGGFinance/production/Documents). …
and Claude Desktop shows the extension as failed. You may also get a macOS notification about a program accessing "data from other apps". To fix it:
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요