Ascora MCP by usefulapi

io.usefulapi由 usefulapi.io 發布官方發布者v1.1.4更新於 Nov 7, 2026

Read customers, quotes, jobs, bookings and price list; create quotes, jobs and bookings in Ascora.

發布方自己的服務:Ably MCP by usefulapi

已驗證Streamable HTTP可網頁執行效率與工作流商業與電商

概覽

AI 產生的概覽

託管式 Ascora 連接器,讓助理讀取客戶、報價、工單、排班與價目表,並建立報價、工單和排班。

可以做什麼
  • 搜尋並讀取客戶、聯絡人、供應商與員工使用者
  • 瀏覽價目表:物料、套件、庫存分類與工時角色
  • 查詢報價與工單,包含工單工時明細與工時表
  • 檢索排班:預約、活動類型與預約詳情
  • 建立詢價、客戶、報價、工單與預約,新增備註,變更報價狀態,將報價轉為工單
  • 查看用量、提出功能需求並管理訂閱
適用情境
適合已在使用 Ascora 的外勤與工程服務團隊,想在聊天用戶端中詢問報價、工單、未開票情況與排班,或不必開啟 Ascora 就能草擬報價與預約。
執行需求
遠端 MCP 端點,只需填入網址,無須本機安裝。登入採用 OAuth,登入頁面要求提供在「管理 → API 設定」產生的 Ascora API 金鑰,伺服器會依使用者儲存該金鑰。免費方案每月 50 次工具呼叫,另有付費方案。
安裝前請注意
寫入類工具會建立真實紀錄:詢價、客戶、報價、工單、預約與備註。多數操作不具冪等性,重複呼叫會產生重複資料,且備註無法透過此伺服器編輯或刪除。建立預約可能觸發 Ascora 本身的客戶或員工通知。建立報價時無法辨識的 ID 會被默默略過,應核對合計金額。Ascora API 金鑰於登入時輸入,並由第三方託管業者保存。付費方案涉及付款連結與訂閱。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Ascora MCP by usefulapi,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.usefulapi%2Fascora/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "ascora-by-usefulapi": {
      "type": "http",
      "url": "https://ascora.usefulapi.io/mcp"
    }
  }
}

README

Ascora MCP by usefulapi

Use your Ascora account from Claude, Cursor, or any MCP client. Read customers, quotes, jobs, bookings, staff and the price list, and make labeled writes such as quotes, jobs and bookings. Hosted, no local install: connect with your own credentials.

Live endpoint: https://ascora.usefulapi.io/mcp · Homepage: https://usefulapi.io

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://ascora.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http ascora https://ascora.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "ascora": {      "url": "https://ascora.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Ascora credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/ascora/

On first connect you provide an Ascora API key (Administration → API Settings → Generate New API Key). The server validates it and stores it per user. No keys go in config files.

Tools

ToolTypeWhat it does
ascora_list_customersreadList customers
ascora_get_customerreadGet customer
ascora_list_contactsreadList contacts
ascora_list_customer_contactsreadList contacts of a customer
ascora_list_suppliesreadList supplies (price list)
ascora_list_kitsreadList kits
ascora_list_categoriesreadList inventory categories
ascora_list_labour_rolesreadList labour roles
ascora_list_quotesreadList quotes
ascora_get_quotereadGet quote
ascora_list_jobsreadList jobs
ascora_get_jobreadGet job
ascora_get_job_labourreadGet job labour
ascora_get_job_timesheetsreadGet job timesheets
ascora_list_bookingsreadList bookings (schedule)
ascora_get_bookingreadGet booking
ascora_list_activity_typesreadList activity types
ascora_list_usersreadList staff users
ascora_list_suppliersreadList suppliers
ascora_list_supplier_invoicesreadList supplier invoices
ascora_create_enquirywriteCreate enquiry (lead)
ascora_create_customerwriteCreate customer
ascora_add_notewriteAdd note
ascora_create_quotewriteCreate quote
ascora_update_quote_statuswriteUpdate quote status
ascora_convert_quote_to_jobwriteConvert quote to job
ascora_create_jobwriteCreate job
ascora_create_bookingwriteCreate booking
ascora_usage_statusmetaUsage status (free-tier meter)
ascora_request_featuremetaRequest a missing feature
ascora_upgrademetaUpgrade to Pro or Pro+
ascora_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per user)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with ascora_upgrade (it returns a Stripe Checkout link). Cancel any time with ascora_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running ascora_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT — see LICENSE. Documentation only; the server is hosted.

來源:servers/ascora/README.md,提交 92e9424

工具

28

ascora_list_customers

List customers

Search Ascora customers (sites and billing customers): id, number, name, contact, email, phone, addresses, on-hold flags, customer type, lead source, billing customer and assigned user. GET /Customers/Customers.

輸入參數pagepage_sizefilter_textlead_sourcephone_numberassigned_usercustomer_typesite_billing_type

ascora_get_customer

Get customer

One Ascora customer by id (GUID from ascora_list_customers), including custom fields. GET /Customers/Customer/{id}.

輸入參數customer_id必填

ascora_list_contacts

List contacts

Search contacts across all customers by name, email or phone. GET /Customers/Contacts.

輸入參數pagepage_sizefilter_textphone_number

ascora_list_customer_contacts

List contacts of a customer

All contacts of one customer, with role and default-contact flag. GET /Customers/GetContactsForCustomer/{customerId}.

輸入參數pagepage_sizecustomer_id必填

ascora_list_supplies

List supplies (price list)

Search the inventory price list: materials and services with part number, description, cost, sell price ex/inc tax, supplier, categories and reorder flags. Use the supply id to add items to quotes. GET /Inventory/Supplies.

輸入參數pagepage_sizefilter_textfavourite_onlycategory_one_idcategory_two_id

ascora_list_kits

List kits

Search kits (bundles of supplies and labour) with part number, description, markup, sell price and pricing method. GET /Inventory/Kits.

輸入參數pagepage_sizefilter_textfavourite_onlycategory_one_idcategory_two_id

ascora_list_categories

List inventory categories

Inventory categories (Category 1 or 2, top-level or sub-categories) used to filter supplies and kits. GET /Inventory/Categories.

輸入參數pagepage_sizefilter_textparent_onlycategory_number

ascora_list_labour_roles

List labour roles

Labour roles with their hourly rate ex tax, ordered by name. Use the role id to add labour to a quote. GET /Quotes/LabourRoles.

無需輸入參數。

ascora_list_quotes

List quotes

Search quotes: number, name, status, date, totals ex/inc tax, pricing method, job type and site/billing customer. Status defaults to OPEN (in progress or sent) when omitted. GET /Quotes/Quotes.

輸入參數pageend_datejob_typepage_sizestart_datefilter_textquote_statusassigned_usercustomer_name

ascora_get_quote

Get quote

One quote by its full number (e.g. Q57): status, dates, totals, pricing method, addresses, job type, customers and custom fields. GET /Quotes/Quote/{quoteNumber}.

輸入參數quote_number必填

ascora_list_jobs

List jobs

Search jobs: number, name, status, totals, pricing method, job type, site/billing customer, secondary status and pipeline phase. Status defaults to OPEN when omitted. GET /Jobs/Jobs.

輸入參數pageend_datejob_typepage_sizejob_statusstart_datefilter_textassigned_usercustomer_nameinclude_child_jobs

ascora_get_job

Get job

One job by its full number (e.g. J112): status, dates, totals, pricing method, job type, customers, secondary status and pipeline phase. A deleted job reads as not found. GET /Jobs/Job/{jobNumber}.

輸入參數job_number必填

ascora_get_job_labour

Get job labour

Labour lines on a job: role, hours, hourly rate, totals, staff member, chargeable and invoiced flags. GET /Jobs/JobLabour/{jobNumber}.

輸入參數job_number必填

ascora_get_job_timesheets

Get job timesheets

Timesheet entries on a job: staff member, start/end, hours, meal break and payroll-sent flag (pay and cost rates are not returned). GET /Jobs/JobTimesheets/{jobNumber}.

輸入參數job_number必填

ascora_list_bookings

List bookings (schedule)

Search the schedule: bookings of jobs, quotes and activities with staff member, start/end, notes, arrival window and the job or quote they belong to. Archived bookings are excluded unless include_archived. GET /Bookings/Bookings.

輸入參數pageusersort_byend_datepage_sizeteam_namejob_numberjob_statusstart_datecustomer_idfilter_textbooking_type另有 6 個

ascora_get_booking

Get booking

One booking by id: type, times (local and UTC), staff member, job/quote/activity, customers, address, notes, arrival window, rates and reminder flags. GET /Bookings/Booking/{bookingId}.

輸入參數booking_id必填

ascora_list_activity_types

List activity types

Activity types that non-job bookings (training, leave-style activities, etc.) can be made with. GET /Bookings/ActivityTypes.

無需輸入參數。

ascora_list_users

List staff users

Staff users of the Ascora company (archived users excluded): id, name, email, mobile, job title, team, scheduler group, licence and access flags. Pay rates are not returned. GET /Users/Users.

輸入參數pagelast_namepage_sizeteam_namefirst_namefilter_textscheduler_group_name

ascora_list_suppliers

List suppliers

Search suppliers by name, supplier number or exact business number (ABN). GET /Suppliers/Suppliers.

輸入參數pagepage_sizesupplier_namebusiness_numbersupplier_number

ascora_list_supplier_invoices

List supplier invoices

Search supplier invoices and credit notes: supplier, dates, tracking number, lines and totals. GET /SupplierInvoices/SupplierInvoices.

輸入參數pagepage_sizesupplier_nametracking_numberinvoice_date_endinvoice_date_startto_be_sent_to_accounting

ascora_create_enquiry

Create enquiry (lead)

WRITE: create a new enquiry (lead) in Ascora. Every call creates another enquiry (not idempotent; Ascora allows 500 enquiries an hour per company), so do not repeat it. Needs at least a name, company, email, phone or mobile. POST /Enquiry.

輸入參數emailphonestatemobilesuburbcountrypostcodelast_namefirst_namedescriptionlead_sourcecompany_name另有 3 個

ascora_create_customer

Create customer

WRITE: create a new customer (site or billing) in Ascora. Always creates a new record (it never updates an existing customer), so search with ascora_list_customers first to avoid duplicates. A customer type or lead source name that does not exist is created. POST /Customers/Customer.

輸入參數emailphonemobilelast_namefirst_namelead_sourcecompany_namestreet_line1street_line2street_statecustom_fieldscustomer_type另有 3 個

ascora_add_note

Add note

WRITE: add a note to an enquiry, job, quote, invoice or customer (the entity must already exist). Notes cannot be edited or removed through this server, and every call adds another note. POST /Notes/Note.

輸入參數content必填entity_id必填entity_type必填created_by_name

ascora_create_quote

Create quote

WRITE: create a new quote (status In Progress; it is NOT sent to the customer) for a site customer, optionally with supplies, kits and labour from the price list. Ids that Ascora cannot find are skipped silently when creating, so check the totals in the reply. Every call creates another quote. POST /Quotes/Quote.

輸入參數kitslaboursuppliesquote_namedescriptionjob_type_namepricing_methodsite_customer_idsite_customer_namebilling_customer_idclient_order_numberpurchase_order_number

ascora_update_quote_status

Update quote status

WRITE: change a quote's status to IN-PROGRESS, SENT-TO-CUSTOMER, LOST or WON. WON converts the quote into a new Job (the same as ascora_convert_quote_to_job; a second WON returns the existing job). Ascora's reference documents only a status change, not an email to the customer. POST /Quotes/UpdateStatus.

輸入參數status必填quote_number必填reason_for_loss

ascora_convert_quote_to_job

Convert quote to job

WRITE: convert a quote into a Job (what Convert to Job does in Ascora): supplies, labour, notes, bookings and attachments carry over and the quote is marked converted. Never forces a new job: a variation quote is added onto its original job, a quote whose job still exists is reconnected to it, and a quote already converted is refused with a message naming the existing job. Specify the parent quote number, not a section. POST /Quotes/ConvertToJob.

輸入參數quote_number必填

ascora_create_job

Create job

WRITE: create a new job for a site customer (it never updates an existing job). Every call creates another job; add work with a quote or in Ascora. The job is not booked and nothing is sent to the customer. POST /Jobs/Job.

輸入參數job_namedescriptionjob_type_namepricing_methodsite_customer_idsite_customer_namebilling_customer_idclient_order_numberpurchase_order_number

ascora_create_booking

Create booking

WRITE: schedule staff on a job or a quote (give exactly one of job_number / quote_number). One booking is created per staff member and the job or quote moves to Booked; the bookings show on the Scheduler and the staff mobile apps, and Ascora's own reminder settings may notify the customer or staff. Repeating the identical request returns the existing booking. By default a clash with another booking or leave refuses the whole request (reject_conflicts). POST /Bookings/Booking.

輸入參數notesusers必填end_timejob_numberstart_time必填time_windowquote_numberduration_minutesreject_conflicts

版本歷史

3
  1. v1.1.4最新Nov 7, 2026
  2. v1.0.2Nov 5, 2026
  3. v1.0.1Nov 5, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

其他 Usefulapi 整合