AccuLynx çatı işleri CRM sistemini; işleri, kişileri, teklifleri ve finansal verileri yönetmek için yapay zeka istemcileriyle entegre eder.
Ayrıca bilinen adı opsrev/acculynx-cli, @opsrev/acculynx-cli, acculynx-mcp
- Yıldızlar
- 0
- Araçlar
- 34
- İndirmeler, 30 gün
- —
- En son sürüm
- —
- Son commit
- 27 Eki 2026
- Lisans
- MIT
AccuLynx MCP nedir?
AccuLynx bir MCP sunucusudur. AccuLynx çatı işleri CRM sistemini; işleri, kişileri, teklifleri ve finansal verileri yönetmek için yapay zeka istemcileriyle entegre eder. 34 araç sunar; örneğin acculynx_ping, acculynx_jobs_list, acculynx_jobs_get.
Özet, projenin README dosyasından oluşturuldu
AccuLynx MCP sunucusu hakkında
Bu sunucu, AccuLynx CRM kullanan yüklenicilerin çatı işi operasyonlarını yapay zeka aracılığıyla yönetmelerini sağlar. Kullanıcılar; Claude Desktop veya Cursor gibi istemcilere bağlanarak işleri, kişileri, teklifleri ve finansal kayıtları yönetmek için doğal dil kullanarak işletme verileriyle etkileşime girebilirler. Sunucu, yapay zeka ajanlarının doğru parametreleri kullanmasını sağlamak için zorunlu JSON Schemas ile yönetilen acculynx_jobs_list ve acculynx_contacts_search gibi 30 özel araç sunar.
Kurulum için hesap yöneticisi ayarlarından alınan bir AccuLynx API anahtarı gereklidir. Sunucu, stdio üzerinden haberleşerek npx veya global bir npm kurulumu ile yerel olarak çalışır. Standart MCP işlevselliğinin ötesinde paket, gelişmiş betik yazımı ve veri işleme imkanı tanıyan bir komut satırı arayüzü içerir. Buna iş aşamalarını izlemek, potansiyel müşteri yaşlanmasını takip etmek veya kuruş cinsinden kesin finansal değerlerle pazarlama kanıt raporları oluşturmak için özelleşmiş tarama yetenekleri dahildir.
Neler yapabilirsiniz
- 1Güncel iş detaylarını getirmeYapay zeka istemcinizden AccuLynx hesabınızdaki en son beş işi listelemesini isteyin.
- 2Potansiyel müşteri yaşlanmasını analiz etmeMevcut potansiyel müşterilerin belirli takvim günü aralıklarına göre sistemde ne kadar süredir bulunduğunu görmek için bir rapor oluşturun.
- 3İş ödemelerini denetlemeAlınan ödemelerin doğru kaydedildiğini doğrulamak için belirli aşamalardaki tüm işleri tarayın.
- 4Kişi yönetimini otomatize etmeBelirli bir tarih aralığındaki kişileri aramak ve sonuçları diğer araçlara aktarmak için CLI kullanın.
Projenin README dosyasından alınmıştır. Her kullanım durumu, oradaki bir alıntı ile kontrol edilir.
AccuLynx MCP nasıl yüklenir
Biçimler 10 Kas 2026 tarihinde doğrulandıCursor'a ekleGoose'a ekleAccuLynx MCP'yi Claude Code içine yükleyin
$ claude mcp add acculynx-cli -- npx -y @opsrev/acculynx-cliAccuLynx MCP'yi Cursor içine yükleyin
~/.cursor/mcp.json
{
"mcpServers": {
"acculynx-cli": {
"command": "npx",
"args": [
"-y",
"@opsrev/acculynx-cli"
]
}
}
}AccuLynx MCP'yi VS Code içine yükleyin
.vscode/mcp.json
{
"servers": {
"acculynx-cli": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@opsrev/acculynx-cli"
]
}
}
}AccuLynx MCP'yi VS Code CLI içine yükleyin
$ code --add-mcp '{"name":"acculynx-cli","type":"stdio","command":"npx","args":["-y","@opsrev/acculynx-cli"]}'AccuLynx MCP'yi Claude Desktop içine yükleyin
claude_desktop_config.json
{
"mcpServers": {
"acculynx-cli": {
"command": "npx",
"args": [
"-y",
"@opsrev/acculynx-cli"
]
}
}
}AccuLynx MCP'yi Codex içine yükleyin
$ codex mcp add acculynx-cli -- npx -y @opsrev/acculynx-cliAccuLynx MCP'yi Codex config.toml içine yükleyin
~/.codex/config.toml
[mcp_servers.acculynx-cli] command = "npx" args = ["-y", "@opsrev/acculynx-cli"]
AccuLynx MCP'yi Gemini CLI içine yükleyin
$ gemini mcp add -s user acculynx-cli npx -- -y @opsrev/acculynx-cliAccuLynx MCP'yi Gemini settings.json içine yükleyin
~/.gemini/settings.json
{
"mcpServers": {
"acculynx-cli": {
"command": "npx",
"args": [
"-y",
"@opsrev/acculynx-cli"
]
}
}
}AccuLynx MCP araçları 34
README dosyasından algılandıacculynx_pingacculynx_jobs_listacculynx_jobs_getacculynx_jobs_createacculynx_jobs_searchacculynx_jobs_contactsacculynx_jobs_estimatesacculynx_jobs_financialsacculynx_jobs_invoicesacculynx_jobs_milestonesacculynx_jobs_paymentsacculynx_jobs_history
| acculynx_ping | — | |
| acculynx_jobs_list | — | |
| acculynx_jobs_get | — | |
| acculynx_jobs_create | — | |
| acculynx_jobs_search | — | |
| acculynx_jobs_contacts | — | |
| acculynx_jobs_estimates | — | |
| acculynx_jobs_financials | — | |
| acculynx_jobs_invoices | — | |
| acculynx_jobs_milestones | — | |
| acculynx_jobs_payments | — | |
| acculynx_jobs_history | — |
34 aracın tümünü gösterDaha az araç göster
acculynx_jobs_repsacculynx_jobs_reps_assignacculynx_jobs_work_typesacculynx_jobs_trade_typesacculynx_jobs_set_work_typeacculynx_jobs_set_trade_typesacculynx_jobs_document_foldersacculynx_jobs_add_expenseacculynx_jobs_upload_documentacculynx_contacts_listacculynx_contacts_getacculynx_contacts_createacculynx_contacts_searchacculynx_contacts_emailsacculynx_contacts_phonesacculynx_contacts_phone_addacculynx_estimates_listacculynx_estimates_getacculynx_estimates_sectionsacculynx_estimates_sectionacculynx_estimates_itemsacculynx_users_list
| acculynx_jobs_reps | — | |
| acculynx_jobs_reps_assign | — | |
| acculynx_jobs_work_types | — | |
| acculynx_jobs_trade_types | — | |
| acculynx_jobs_set_work_type | — | |
| acculynx_jobs_set_trade_types | — | |
| acculynx_jobs_document_folders | — | |
| acculynx_jobs_add_expense | — | |
| acculynx_jobs_upload_document | — | |
| acculynx_contacts_list | — | |
| acculynx_contacts_get | — | |
| acculynx_contacts_create | — | |
| acculynx_contacts_search | — | |
| acculynx_contacts_emails | — | |
| acculynx_contacts_phones | — | |
| acculynx_contacts_phone_add | — | |
| acculynx_estimates_list | — | |
| acculynx_estimates_get | — | |
| acculynx_estimates_sections | — | |
| acculynx_estimates_section | — | |
| acculynx_estimates_items | — | |
| acculynx_users_list | — |
Yapılandırma
ACCULYNX_API_KEYJOB_ID
| Ad | Açıklama | Sunucu |
|---|---|---|
| ACCULYNX_API_KEY | — | |
| JOB_ID | — |
Otomatik kontroller
Çalıştırıldı 14 Kas 2026Tam rapor →Otomatik kontrollerimizden geçti. Bu bir güvenlik denetimi değildir: kodu okuyun ve sunucuya ihtiyaç duyduğu en dar erişimi verin. Kontroller nasıl çalışır
- Kaynak deposu bağlantılı ve erişilebiliropsrev/acculynx-cli is public and reachablegithub.com/opsrev/acculynx-cli ↗Geçti
- Paket, bu depoyu kaynağı olarak gösteriyor@opsrev/acculynx-cli, acculynx-mcp name opsrev/acculynx-cli as sourcenpmjs.com/package/@opsrev/acculynx-cli ↗Geçti
- Derleme kökeni (Sigstore onayı)Sigstore attestation for @opsrev/acculynx-cli, acculynx-mcpnpmjs.com/package/@opsrev/acculynx-cli/v/1.18.2#provenance ↗Geçti
- Açık kaynak lisansı (OSI)MITspdx.org/licenses/MIT.html ↗Geçti
- Son bir yıl içinde commit veya sürüm mevcutLast commit or release 2026-10-27github.com/opsrev/acculynx-cli ↗Geçti
- OpenSSF ScorecardKontrol edilmedi
- Paket adı popüler bir pakete yakın değilNo popular package one edit away from @opsrev/acculynx-cli, acculynx-mcpGeçti
- Pakette veya bağımlılıklarında kritik uyarı yokKontrol edilmedi
- Modele yönelik gizli talimat yok34 tool descriptions and the README read; no override phrases, credential paths or hidden charactersGeçti
- Yıkıcı araçlar etiketlenmişNo tool named like delete, drop or execGeçti
- Uzak uç nokta MCP el sıkışmasına yanıt veriyorKontrol edilmedi
AccuLynx MCP Server & CLI
npm:
acculynx-mcp(MCP server) ·@opsrev/acculynx-cli(CLI + MCP)
An MCP server for the AccuLynx roofing CRM — bring jobs, contacts, and estimates into Claude Desktop, Cursor, or any MCP client. Every tool is exposed with an enforced JSON Schema, so an AI agent can't invent a parameter or call a command that doesn't exist.
- 30 tools across jobs, contacts, estimates, and users.
acculynx-mcp— the MCP server, for Claude Desktop / Cursor / any MCP client.@opsrev/acculynx-cli— the same data as a JSON CLI (and it also ships theacculynx-mcpserver bin).
Use in Claude Desktop
- Get an AccuLynx API key (your AccuLynx account administrator creates it under Account Settings → API).
- Open your Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- Add the server (zero-install via
npx):
{
"mcpServers": {
"acculynx": {
"command": "npx",
"args": ["-y", "acculynx-mcp"],
"env": { "ACCULYNX_API_KEY": "your-api-key" }
}
}
}
Prefer a global install? Run npm i -g acculynx-mcp, then use
"command": "acculynx-mcp" with no args.
- Restart Claude Desktop. Open a new chat and ask "List my 5 most recent
AccuLynx jobs" — you should see the
acculynx_*tools available.
Use in Cursor / other MCP clients
Any client that speaks MCP over stdio works. Point it at npx -y acculynx-mcp
(or a global acculynx-mcp) and set ACCULYNX_API_KEY in the environment.
Example (Cursor ~/.cursor/mcp.json):
{
"mcpServers": {
"acculynx": {
"command": "npx",
"args": ["-y", "acculynx-mcp"],
"env": { "ACCULYNX_API_KEY": "your-api-key" }
}
}
}
MCP tools
All tools are prefixed acculynx_ and return JSON.
| Tool | Description |
|---|---|
acculynx_ping |
Health check — verify the API key and connectivity |
acculynx_jobs_list |
List jobs (paginated, filterable) |
acculynx_jobs_get |
Get one job by id |
acculynx_jobs_create |
Create a job |
acculynx_jobs_search |
Search jobs by free-text term |
acculynx_jobs_contacts |
List a job's contacts |
acculynx_jobs_estimates |
List a job's estimates |
acculynx_jobs_financials |
Get a job's financials |
acculynx_jobs_invoices |
List a job's invoices |
acculynx_jobs_milestones |
List a job's milestone history |
acculynx_jobs_payments |
List a job's payments |
acculynx_jobs_history |
Get a job's change history |
acculynx_jobs_reps |
List a job's representatives |
acculynx_jobs_reps_assign |
Assign a representative to a job |
acculynx_jobs_work_types |
List the company's active work types (id + name) |
acculynx_jobs_trade_types |
List the company's active trade types (id + name) |
acculynx_jobs_set_work_type |
Set a job's work type — by workType name or workTypeId |
acculynx_jobs_set_trade_types |
Set a job's trade types — by tradeTypes names or tradeTypeIds (empty array unassigns all) |
acculynx_jobs_document_folders |
List the company's document folders |
acculynx_jobs_add_expense |
Record an additional expense on a job |
acculynx_jobs_upload_document |
Upload a local file to a job |
acculynx_contacts_list |
List contacts (paginated) |
acculynx_contacts_get |
Get one contact by id |
acculynx_contacts_create |
Create a contact |
acculynx_contacts_search |
Search contacts within a date range |
acculynx_contacts_emails |
List a contact's email addresses |
acculynx_contacts_phones |
List a contact's phone numbers |
acculynx_contacts_phone_add |
Add a phone number to a contact |
acculynx_estimates_list |
List estimates (paginated) |
acculynx_estimates_get |
Get one estimate by id |
acculynx_estimates_sections |
List an estimate's sections |
acculynx_estimates_section |
Get one estimate section |
acculynx_estimates_items |
List items in an estimate section |
acculynx_users_list |
List users (paginated, optional name/email search) |
Configuration
| Env Var | Flag | Required | Description |
|---|---|---|---|
ACCULYNX_API_KEY |
--api-key |
Yes | AccuLynx official API key (Account Settings → API) |
ACCULYNX_EMAIL |
— | No | Login email; only for tools that use AccuLynx's web API |
ACCULYNX_PASSWORD |
— | No | Login password; only for web-API tools |
ACCULYNX_COMPANY_ID |
— | No | Company GUID; only for web-API tools |
Also a CLI
@opsrev/acculynx-cli exposes the same data as a JSON CLI (and bundles the
acculynx-mcp server bin). All output is JSON to stdout; errors are
{"error": "..."} to stderr with exit code 1.
npm install -g @opsrev/acculynx-cli
acculynx ping # verify API key
acculynx jobs list --limit 5 # 25 results by default; --all to fetch everything
acculynx jobs get <jobId>
acculynx jobs search --query "smith"
acculynx jobs scan --milestones Approved # scan all jobs → digest + coverage receipt
acculynx contacts list --limit 10
acculynx estimates get <estimateId>
List commands default to 25 results; use --limit <n> or --all. Commands
that create resources read a JSON body from stdin:
echo '{"name": "New Job"}' | acculynx jobs create
Pipe to jq for scripting:
JOB_ID=$(acculynx jobs list --limit 1 | jq -r '.[0].id')
acculynx jobs get "$JOB_ID" | jq .
Prospect aging with complete readable rows
acculynx jobs scan --report prospect-aging --as-of 2026-10-20 --exclude-trade-type "Maintenance Program"
This bounded GET-only report ages current Prospect inventory by its full milestone date in America/New_York, with inclusive 0–30, 31–60, 61–90 and 91+ calendar-day buckets. It is not a historical inventory snapshot. Exclusions use exact case-insensitive trade-type names; missing classification stays unknown. Every eligible row includes its full ID, date, age and separate approved/worksheet values in exact cents. Missing values remain unavailable rather than zero.
Enumeration is strict and capped at 5,000 jobs before per-job financial reads. Reports above 180,000 characters return partial with no detailed list, keeping output below the retained process-log limit. No history, payment, message or write requests are made. Invalid/incomplete inventory withholds totals and rows; missing dates or financial evidence make the result partial (exit 3). Incompatible filters and output modes fail before provider access (exit 2). Read long stdout through bounded process-log pages.
Monitoring scans: payments with strict coverage
Scan every job in a set of milestones and fetch each one's received payments in one process, with a coverage line a script can check:
acculynx jobs scan --milestones Approved,Completed,Invoiced \
--enrich payments --strict --format jsonl --out payments.jsonl
Each job line carries payments: the job's full received-payment objects
(id, from, amount, paymentDate, checkNumber, notes, …). The last
line is the coverage receipt:
{"type":"coverage","scanned":299,"serverCount":299,"complete":true,"pageError":null,"enrichErrors":0}
--strict(implied by--enrich payments) treats any pagination anomaly (changing total, duplicate job IDs, overfull or malformed pages) as a partial scan. Partial scans exit 3 and reportcomplete: false. Never treat them as a full inventory.- A per-job payments failure doesn't abort the scan. It appears in that job's
errors({"jobId", "source": "payments", "message"}) and counts towardenrichErrors, so retry just those jobs withacculynx jobs payments <id>. - Without
--strictand withoutpayments,jsonloutput is unchanged: job lines only.
Development
cp .env.example .env # fill in your credentials
npm install
npm test # run unit tests (mocked fetch)
npm run dev -- --help # run the CLI in dev mode (auto-loads .env)
npm run build # build both bins to dist/
npm run dev auto-loads .env via Node's --env-file:
npm run dev -- jobs list --limit 5
License
MIT
Private marketing evidence from a native scan
Operators preparing approval-date reconciliation can preserve exact source fields without parsing the rounded human digest:
acculynx jobs scan --start-date 2026-07-01 --end-date 2026-09-04 --date-filter-type ModifiedDate --enrich dates,financials --format marketing-evidence
This emits one acculynx-marketing-evidence/v1 JSON object. It is private
operator evidence containing full job IDs and individual values; do not post
it in a vendor/customer channel. It excludes contacts, addresses, names,
notes, documents, unrelated financials and raw provider error bodies.
--out and other enrichers are rejected before reading. Redirect stdout only
into an appropriately protected operator workspace if retaining the artifact.
This format does not alter downstream agents' command allowlists or authorize
them to export records.
The receipt distinguishes query completeness from enrichment completeness. Strict pagination requires a numeric stable total, advancing offsets and unique job IDs. Exit 3 means partial evidence; never publish it as a complete result. Full source dates are preserved without timezone conversion, repeated approval milestones remain separate, and current approved value is represented in exact cents. Missing/invalid values and dates remain null with issue codes.
This is not an approval cohort, an original-acquisition attribution, a complete lead-delivery inventory or historical revenue. ModifiedDate is a candidate filter; confirm historical and unassigned/dead-lead coverage separately. Review source date semantics, repeated approvals, transfers and current-versus-original contract value before producing normalized results. A large historical scan reads history and financials for each candidate; bootstrap it separately from short daily marketing jobs, then validate an incremental refresh strategy.
AccuLynx MCP soruları
AccuLynx MCP'yi Claude Code'a nasıl eklerim?
Terminalinizde claude mcp add acculynx-cli -- npx -y @opsrev/acculynx-cli komutunu çalıştırın. Her projede kullanılabilir olması için --scope user ekleyin.
AccuLynx MCP'yi Cursor'a nasıl eklerim?
~/.cursor/mcp.json dosyasını açın ve yukarıdaki yükleme bölümünde gösterilen Cursor yapılandırmasını kullanarak sunucuyu mcpServers altına ekleyin.
AccuLynx MCP hangi araçları sunar?
34 araç sunar; bunlar arasında acculynx_ping, acculynx_jobs_list, acculynx_jobs_get, acculynx_jobs_create, acculynx_jobs_search yer alır.
MCP araçları aracılığıyla ne tür verilere erişebilirim?
İşler, kişiler, teklifler, kullanıcılar, finansallar, faturalar ve daha fazlasını kapsayan 30 farklı araca erişebilirsiniz.
Bunu bir komut satırı arayüzü olarak kullanabilir miyim?
Evet, @opsrev/acculynx-cli paketi, betik yazımı ve terminal kullanımı için bir JSON CLI sağlar.
AccuLynx için API anahtarını nereden alabilirim?
AccuLynx hesap yöneticiniz, Account Settings → API altından bir API anahtarı oluşturabilir.