Itcons.app

io.github.itcons-app由 GitHub 帳號 itcons-app 發布v0.5.1更新於 Oct 25, 2026

Connect AI assistants to Itcons.app work orders, reports, projects, users, and resources.

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

概覽

AI 產生的概覽

將 AI 助理連接到 Itcons.app 業務營運工作區,用來搜尋工單與工作日報、列出各類目錄並建立記錄。

可以做什麼
檢查連線並列出營運目錄:狀態、使用者、資源、客戶、專案、工單類型與工作日報範本。搜尋工單、列出待處理工單,以及依日期或查詢當天的工作日報。在帳號有權限時建立客戶、專案、使用者與工單。另有僅含工作日報工具的窄範圍設定。
適用情境
適合以外勤與辦公室流程在 Itcons.app 中運作的團隊,讓助理查詢工單、日報、專案、客戶或使用者,或在不切換應用的情況下新增記錄。
執行需求
可使用含 OAuth 登入的遠端託管端點,或在本地以 Node.js 透過 stdio 執行 npm 套件。本地模式需要 ITCONS_DOMAIN,以及 ITCONS_USERNAME 與 ITCONS_PASSWORD,或既有的 ITCONS_TOKEN;ITCONS_TIMEZONE 為選用。遠端託管需要公開 HTTPS 位址與 OAuth 用戶端設定。
安裝前請注意
建立類工具會在 Itcons.app 工作區寫入真實記錄,只應使用允許修改的帳號。伺服器會處理 Itcons.app 憑證與 bearer 權杖,請勿寫入會提交到儲存庫的檔案。內建遠端 OAuth 實作將授權碼與權杖保存在記憶體中,除非替換儲存方式,否則建議只執行單一程序。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Itcons.app,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

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

交給代理程式安裝

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

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

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

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "itcons-app": {
      "type": "http",
      "url": "https://mcp.itcons.app/mcp"
    }
  }
}

README

Itcons.app MCP Server

Model Context Protocol server for connecting AI assistants to Itcons.app.

Itcons.app is a business operations platform for managing work reports, work orders, projects, clients, users, and related operational resources. It is designed to help teams digitize field and office workflows around daily reports, assignments, task tracking, and service execution.

This package can run in two modes:

  • Local stdio mode for clients such as Codex, Claude Desktop, and other local MCP hosts.
  • Remote HTTP mode for hosted MCP clients such as ChatGPT Apps or other clients that require a public HTTPS MCP endpoint.

With this MCP server, an assistant can query Itcons.app data, search work reports and work orders, list operational catalogs such as statuses, users, resources, projects, and clients, and create supported Itcons.app records when the configured user has permission to do so.

Features

  • Authenticate with POST /api/login_check.
  • Use Bearer authentication for Itcons.app API calls.
  • Resolve the API base URL from ITCONS_DOMAIN.
  • List statuses, users, resources, clients, projects, work order types, and work report models.
  • Search work reports and work orders.
  • Create clients, projects, users, and work orders.

Webhooks are intentionally not included in this MCP server. The remote HTTP mode is for MCP client traffic, not inbound Itcons.app webhook delivery.

Installation

From npm:

bash
npm install -g @itcons-app/mcp

From this repository:

bash
npm installnpm run check

If Node was installed with Homebrew and node/npm are not in your PATH, use:

bash
/opt/homebrew/opt/node/bin/npm install/opt/homebrew/opt/node/bin/npm run check

Configuration

The local stdio server reads Itcons.app credentials from environment variables.

bash
ITCONS_DOMAIN=demo[email protected]ITCONS_PASSWORD=change-meITCONS_TIMEZONE=Europe/Madrid

For https://demo.itcons.app, set:

bash
ITCONS_DOMAIN=demo

You may use an existing Bearer token instead of username/password:

bash
ITCONS_DOMAIN=demoITCONS_TOKEN=ey...

ITCONS_API_BASE_URL is optional. If omitted, the server uses:

text
https://ITCONS_DOMAIN.itcons.app/api

MCP Client Example

Example configuration using a globally installed package:

json
{  "mcpServers": {    "itcons-app": {      "command": "itcons-app-mcp",      "env": {        "ITCONS_DOMAIN": "demo",        "ITCONS_USERNAME": "[email protected]",        "ITCONS_PASSWORD": "change-me",        "ITCONS_TIMEZONE": "Europe/Madrid"      }    }  }}

Remote HTTP Server

Start the remote MCP server:

bash
PORT=3000 \HOST=127.0.0.1 \ITCONS_MCP_PUBLIC_URL=https://mcp.example.com \ITCONS_OAUTH_CLIENT_ID=itcons-app-chatgpt \ITCONS_OAUTH_CLIENT_SECRET=change-me \npm run start:http

The remote server exposes:

  • MCP Streamable HTTP endpoint: https://mcp.example.com/mcp
  • Reports-only MCP endpoint for public ChatGPT apps: https://mcp.example.com/reports-mcp
  • SSE-compatible endpoint: https://mcp.example.com/sse
  • OAuth authorize URL: https://mcp.example.com/oauth/authorize
  • OAuth token URL: https://mcp.example.com/oauth/token
  • OAuth dynamic client registration URL: https://mcp.example.com/oauth/register
  • Health check: https://mcp.example.com/health

For ChatGPT's "Create app" screen, use the public MCP URL:

text
https://mcp.example.com/mcp

For a narrow public app focused only on work reports, use:

text
https://mcp.example.com/reports-mcp

If a client specifically asks for an SSE URL, use:

text
https://mcp.example.com/sse

When the user connects the app, the OAuth login page asks for their Itcons.app email and password. If ITCONS_DOMAIN_LOOKUP_URL is configured, the page tries to detect the Itcons.app domain from the email; otherwise the user can type the domain manually. The server validates those credentials with Itcons.app and stores an in-memory session token for subsequent MCP calls.

Example configuration using a local checkout:

json
{  "mcpServers": {    "itcons-app": {      "command": "node",      "args": [        "/absolute/path/to/itcons-app-mcp/src/index.js"      ],      "env": {        "ITCONS_DOMAIN": "demo",        "ITCONS_USERNAME": "[email protected]",        "ITCONS_PASSWORD": "change-me",        "ITCONS_TIMEZONE": "Europe/Madrid"      }    }  }}

Tools

Read-only tools:

  • itcons_check_connection
  • itcons_list_workorder_types
  • itcons_list_work_report_models
  • itcons_list_projects
  • itcons_list_clients
  • itcons_list_statuses
  • itcons_list_users
  • itcons_list_resources
  • itcons_search_workorders
  • itcons_list_pending_workorders
  • itcons_search_work_reports
  • itcons_list_work_reports_by_date
  • itcons_list_today_work_reports

Create tools:

  • itcons_create_workorder
  • itcons_create_user
  • itcons_create_project
  • itcons_create_client

Reports-only profile tools exposed by /reports-mcp:

  • itcons_check_connection
  • itcons_list_work_report_models
  • itcons_search_work_reports
  • itcons_list_work_reports_by_date
  • itcons_list_today_work_reports

Tool annotations:

  • Read-only tools set readOnlyHint: true, destructiveHint: false, and openWorldHint: false because they only read private Itcons.app data.
  • Create tools set readOnlyHint: false, destructiveHint: false, and openWorldHint: false because they create records only inside a private Itcons.app workspace and do not publish to public internet surfaces.

Environment Variables

VariableRequiredDescription
ITCONS_DOMAINYesInstallation subdomain. For https://demo.itcons.app, use demo.
ITCONS_USERNAMEYes, unless ITCONS_TOKEN is setItcons.app username or email.
ITCONS_PASSWORDYes, unless ITCONS_TOKEN is setItcons.app password.
ITCONS_TOKENNoExisting Bearer token. If set, login is skipped.
ITCONS_API_BASE_URLNoAlternative API base URL.
ITCONS_TIMEZONENoTime zone used by itcons_list_today_work_reports. Defaults to Europe/Madrid.
PORTNoHTTP server port. Defaults to 3000.
HOSTNoHTTP server bind host. Defaults to 127.0.0.1.
ITCONS_MCP_PUBLIC_URLYes for remote modePublic HTTPS origin, for example https://mcp.example.com.
ITCONS_MCP_PATHNoRemote MCP endpoint path. Defaults to /mcp.
ITCONS_MCP_SSE_PATHNoSSE-compatible endpoint path. Defaults to /sse.
ITCONS_MCP_ALLOWED_HOSTSRecommended for remote modeComma-separated allowed Host headers, for example mcp.example.com.
ITCONS_OAUTH_CLIENT_IDNoOAuth client ID expected by the remote server. Defaults to itcons-app-chatgpt.
ITCONS_OAUTH_CLIENT_SECRETRecommended for remote modeOAuth client secret expected by the remote server.
ITCONS_OAUTH_CLIENTS_FILERecommended for public appsJSON file used to persist dynamically registered OAuth clients.
ITCONS_DOMAIN_LOOKUP_URLNoEndpoint used to detect the Itcons.app domain from an email. Defaults to https://auto.itcons.app/webhook/my-domain.
ITCONS_HTTP_AUTH_DISABLEDNoSet to 1 only for local HTTP smoke tests. Disables remote MCP bearer auth.

Notes

  • Work order pending status is 4.
  • itcons_search_workorders fetches /workorders and applies filters locally.
  • itcons_list_work_reports_by_date filters on the date field returned by /2.0/partes.
  • itcons_create_workorder sends status: 4 and isArchived: 0.
  • itcons_create_user sends an array payload to /2.0/users, matching the current API.
  • itcons_create_client sends an array payload to /clients and returns the first array item when applicable.

Development

Run syntax checks:

bash
npm run check

Run a local MCP discovery smoke test:

bash
npm run smoke

Run a local HTTP MCP smoke test:

bash
npm run smoke:http

Run a live read-only HTTP smoke test against Itcons.app:

bash
ITCONS_DOMAIN=demo \[email protected] \ITCONS_PASSWORD=change-me \npm run smoke:http:live

Run a live OAuth smoke test that simulates a ChatGPT-style connection:

bash
ITCONS_DOMAIN=demo \[email protected] \ITCONS_PASSWORD=change-me \npm run smoke:oauth:live

Run a live read-only smoke test against Itcons.app:

bash
ITCONS_DOMAIN=demo \[email protected] \ITCONS_PASSWORD=change-me \npm run smoke:live

Publish the public npm package:

bash
npm publish --access public

Security

Do not commit .env files or real credentials. The package excludes .env, node_modules, and debug logs from npm publication.

Create tools perform real writes in Itcons.app. Use them only with credentials and installations where the MCP client is allowed to make changes.

The built-in remote OAuth implementation stores authorization codes and access tokens in memory. Use a single Node.js process for the first deployment, or replace the in-memory maps with persistent storage such as Redis before running multiple replicas.

來源:README.md,提交 bd0a780

工具

0
該伺服器需要登入,因此 SourceWeft 無法在沒有帳號的情況下讀取其工具,也未收錄。已連接帳號所能看到的內容可能因帳號及其權限而異。

版本歷史

1
  1. v0.5.1最新Sep 16, 2026

評分

已滿足適用檢查項的 85%

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

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分