ITM Platform

io.github.itmplatform由 GitHub 帳號 itmplatform 發布v1.0.22更新於 Oct 27, 2026

Connect AI assistants to ITM Platform projects, tasks, budgets, risks, and team workload.

已驗證Streamable HTTP可網頁執行效率與工作流資料與分析

概覽

AI 產生的概覽

將 AI 助理連接到 ITM Platform,可搜尋專案、任務、預算、風險與團隊工作量,並建立或更新專案資料。

可以做什麼
  • 搜尋並讀取專案、服務、任務、使用者與參考資料
  • 檢視預算、採購、收入、風險、問題、進度與工時投入
  • 建立和更新專案、服務、任務、活動、風險與問題
  • 回報任務與專案進度、登記工時、設定預計工時
  • 批次更新任務或活動狀態,並彙總組合資料
  • 執行經驗證的 DataMart 查詢,並使用唯讀資源與引導式提示範本
適用情境
適合組織在 ITM Platform 管理專案、希望助理回答組合層面的問題、檢視預算與風險曝險,或以自身權限執行批次專案更新的情境。
執行需求
可使用託管的遠端端點並以 OAuth 登入,或以 npx 執行本機 npm 套件;後者需要 Node.js 20 以上版本,以及環境變數 ITM_API_URL、ITM_COMPANY 和 ITM_API_KEY(在 ITM Platform 中產生的 API 金鑰)。需要已授權的 ITM Platform 帳號,Team Member 授權會被封鎖。
安裝前請注意
寫入類工具會建立和修改專案、任務、風險、問題與工時紀錄,批次更新每次最多可變更 100 筆;專案進度填寫 100% 會自動結案。API 金鑰工作階段擁有產生該金鑰之使用者的全部權限。專案資料會傳送給你選擇的 AI 用戶端,適用該供應商的資料處理政策。

安裝

在 SourceWeft 中

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

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

交給代理程式安裝

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

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

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

其他 MCP 客戶端

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

{
  "mcpServers": {
    "itm-platform": {
      "type": "http",
      "url": "https://api.itmplatform.com/v2/_/mcp/"
    }
  }
}

README

ITM Platform MCP Server

Connect ITM Platform to AI assistants through the Model Context Protocol. The ITM Platform MCP server lets MCP-compatible clients search projects, inspect budgets, summarize portfolio health, create tasks, log risks and issues, and update project details using your ITM Platform permissions.

It works with Claude, VS Code, Cursor, OpenAI Codex, Windsurf, JetBrains AI Assistant, and any other client that supports MCP.

Quick Start

Hosted connection with OAuth

Use the hosted server if your AI client supports remote MCP servers. There is nothing to install: add the URL, sign in with your ITM Platform account, and approve the requested access.

bash
claude mcp add --scope user --transport http itm-platform https://api.itmplatform.com/v2/_/mcp/

For other MCP clients, use this remote URL:

text
https://api.itmplatform.com/v2/_/mcp/

OAuth is the recommended setup for most users because your AI client never sees your ITM Platform password or API key.

After adding the server, open your AI client, type /mcp where slash commands are supported, select itm-platform, and complete the ITM Platform OAuth login when prompted.

Local connection with an API key

Use the npm package if you prefer to run the server locally, work behind a firewall, or need to connect to a self-hosted ITM Platform instance.

bash
npx @itm-platform/mcp-server

Your MCP client must pass these environment variables to the server:

VariableValue
ITM_API_URLhttps://api.itmplatform.com
ITM_COMPANYYour company/account slug
ITM_API_KEYYour personal API key from ITM Platform

Example stdio configuration:

json
{  "mcpServers": {    "itm-platform": {      "command": "npx",      "args": ["@itm-platform/mcp-server"],      "env": {        "ITM_API_URL": "https://api.itmplatform.com",        "ITM_COMPANY": "{your-account}",        "ITM_API_KEY": "your-api-key"      }    }  }}

To create an API key, log in to ITM Platform, open My Profile, and generate a key from the API Key section.

After configuring the local server, restart your AI client and use /mcp or the client's MCP server list to confirm itm-platform is connected.

What Can an Agent Do?

From simple lookups to fully automated cross-system workflows, MCP unlocks progressively more powerful use cases.

Quick lookup -- Ask a question, get an answer:

"What risks are open across my portfolio?"

Multi-step analysis -- The agent chains multiple tools and synthesizes results:

"Review every project ending this quarter. Flag any with budget overruns, open high-impact risks, or task completion below 60%."

Automated bulk actions -- The agent reads, decides, and writes across projects:

"For every project still in Planning status with a start date in the past, update the status to Execution and create a kick-off checklist task assigned to the project manager."

Scheduled intelligence -- An agent runs on a schedule with no human prompt, pulling overdue tasks every Monday and posting a summary to Slack grouped by project manager.

Cross-system orchestration -- Combine ITM Platform's MCP with other MCP servers (GitHub, Slack, Google Calendar, email). When a developer merges a PR, an agent finds the matching ITM Platform task, marks it complete, and if the project hits 100%, drafts a closure summary and emails the program manager.

The MCP server authenticates as you, calls ITM Platform APIs, and returns only the data your ITM Platform account is allowed to access.

Capabilities

The server exposes 47 MCP tools, 6 resources, and 4 prompt templates.

Read Tools

ToolWhat it does
search_projectsFind projects by name, status, type, or date range
get_projectRetrieve project details with subcomponent counts and optional budget
search_servicesFind services by name, status, type, or date range
get_serviceRetrieve service details with subcomponent counts and optional budget
list_project_tasksList tasks for a project with pagination
get_taskRetrieve full detail of a single task
search_tasksSearch tasks across all projects by name, status, assignee, kind, or date range
get_project_budgetGet budget, actuals, revenue, cost, and margin information
get_project_purchasesList purchase orders for a project with pagination
get_project_revenuesList revenue items for a project with pagination
get_project_risksList project risks with pagination
get_project_issuesList project issues with pagination
get_riskRetrieve full detail of a single risk, including mitigation and contingency plans
get_issueRetrieve full detail of a single issue, including resolution and impact fields
list_task_progressList the progress (follow-up) history for a task
get_task_effortGet a task's effort breakdown per team member and per professional category; doubles as the task team list
get_project_progressGet project progress report: expected, baseline, and actual curves; optionally the full project Seguimiento entries
list_service_activitiesList activities for a service with pagination
get_service_purchasesList purchase orders for a service with pagination
get_service_revenuesList revenue items for a service with pagination
aggregate_portfolioGroup and summarize portfolio data
query_datamartRun validated DataMart queries for advanced analysis
search_usersFind users and team members; returns IsNonLoginUser so non-login users (empty EmailAddress) can be addressed by UserId
get_userRetrieve user details
get_reference_dataRetrieve statuses, types, priorities, and other reference lists
get_custom_fieldsRetrieve the account's custom field definitions for projects, tasks, risks, issues, services, activities, purchases, or revenues
get_custom_field_optionsRetrieve the selectable options of a dropdown custom field

Write Tools

ToolWhat it does
create_projectCreate a project (Waterfall or Kanban); the project starts with the account default status and the creating user as project manager
create_taskAdd a task, milestone (KindId 1), or summary task (KindId 2); ParentId builds Gantt hierarchy on Waterfall projects; TaskManagers/TaskMembers assign users by username or numeric UserId (the id is the only option for non-login users)
update_taskUpdate task fields such as status, dates, kind, and parent; TaskManagers/TaskMembers add assignees by username or numeric UserId (add-only, never removes)
create_task_progressReport progress on a task (percentage, assessment, notes) with full side effects
update_task_progressUpdate an existing task progress entry
update_task_effortSet the estimated (planned) hours of a task per assigned user; accepted effort and billing data are preserved
log_time_entryLog actual worked hours on a task for one user and date; adds to or replaces the day's total, echoing previous and new totals
create_project_progressCreate a project-level progress (Seguimiento) entry: percentage, assessment, and status description; 100% auto-closes the project
update_project_progressUpdate an existing project progress entry
create_riskLog a project risk
update_riskUpdate risk fields such as status, probability, impact, level, and mitigation or contingency plans
create_issueLog a project issue with a required issue type and status
update_issueUpdate issue fields such as status, type, and resolution
update_projectUpdate project fields such as name, status, dates, and priority
create_serviceCreate a service; it starts with the account default status
update_serviceUpdate service fields such as name, status, dates, and priority
create_activityAdd an activity to a service (activities form a flat list)
update_activityUpdate activity fields such as status and dates
bulk_update_task_statusApply one status to up to 100 tasks of a project in a single call
bulk_update_activity_statusApply one status to up to 100 activities of a service in a single call

Write operations confirm the saved state from the ITM Platform REST API. DataMart-backed search results may take up to 60 seconds to reflect recent writes. Validation failures include the actionable message returned by REST instead of only the HTTP status.

Data source routing

Reads come from DataMart whenever DataMart holds the data (quota-free, portfolio-wide); REST is reserved for data DataMart lacks, single-item authoritative reads (get_task), write readbacks, and reference data. Writes always go to REST. When DataMart gains a dataset, the matching GET tools must migrate to DataMart. Full rule and current routing map: zz_Specifications/progress-history-reads-from-datamart.md.

When the account defines custom fields, each session is enriched with per-account context: the server lists the DataMart customFields keys actually in use in the MCP initialize instructions and in the query_datamart tool description, so agents can read and filter custom field values without prior discovery.

Resources and Prompts

Resources give AI clients read-only context such as DataMart schemas and project calendars. Prompt templates provide guided workflows for common analysis tasks:

PromptWhat it helps with
/project_statusSummarize health, tasks, risks, issues, and budget for one project
/portfolio_overviewAnalyze portfolio status, methodology, budget, and delivery patterns
/team_workloadReview assignments and workload patterns
/risk_analysisAssess risk exposure, issues, and budget impact

Authentication and Permissions

The MCP server uses the same identity and permission model as ITM Platform.

Connection methodAuthenticationBest for
Hosted HTTPOAuth 2.1 with PKCEMost users and managed AI clients
Local stdioITM Platform API keyLocal execution, firewalled networks, self-hosted environments

OAuth sessions use scopes:

ScopeAllows
mcp:readRead-only tools such as search, get, list, aggregate, and query
mcp:writeRead tools plus create and update tools

API key sessions use the full permissions of the ITM Platform user who generated the key.

License access:

LicenseMCP access
Company AdminFull read and write access
Full UserFull read and write access
Project ManagerRead and write access scoped to managed projects
Team MemberBlocked

Your AI assistant does not receive your ITM Platform password or API key. Project data is returned to the AI client you choose, so the AI provider's data-handling policy applies to any data it processes.

Client Setup

Use the public docs for client-specific setup:

For any MCP-compatible client, the two connection values are:

MethodValue
Remote URLhttps://api.itmplatform.com/v2/_/mcp/
Local commandnpx @itm-platform/mcp-server

After adding either connection, open the client's MCP command or server list. In clients that support slash commands, type /mcp, select itm-platform, and authenticate when prompted.

Self-Hosting

For a local stdio server, configure ITM_API_URL, ITM_COMPANY, and either ITM_API_KEY or ITM_TOKEN.

For an HTTP server with OAuth, configure:

VariableDescription
ITM_API_URLITM Platform API gateway URL
PORTHTTP listen port
ITM_AUTH_URLOAuth authorization server URL used for token exchange
ITM_AUTH_PUBLIC_URLPublic OAuth URL advertised to AI clients
MCP_SERVER_URLPublic MCP server URL used as the OAuth audience
LOG_LEVELOptional Pino log level: debug, info, warn, or error
ITM_AUDIT_ENABLEDEnables server-side audit logging when set to true
ITM_UI_URLOptional ITM Platform UI base URL (e.g. https://app.itmplatform.com); when set, create_project returns a uiUrl deep link to the created project

When deployed behind a reverse proxy, ITM_AUTH_URL can point to a server-to-server address while ITM_AUTH_PUBLIC_URL must be reachable by AI clients.

Development

Requirements:

  • Node.js 20 or later
  • npm

Install dependencies, run tests, and build:

bash
npm installnpm testnpm run build

Run the HTTP development server:

bash
cp .env.sample .envnpm run dev

The package entry point is dist/server.js; the npm executable is mcp-server.

Troubleshooting

If tools do not appear in your AI client, confirm that the server configuration is in the correct file for that client, restart the client, and check that npx @itm-platform/mcp-server runs successfully for local setups.

If authentication fails, regenerate your API key or reconnect the OAuth server so your client receives a fresh token.

OAuth sessions automatically retry once on a downstream 401 by re-exchanging the OAuth bearer token for a fresh session token. This handles cases where the session token is invalidated externally (e.g. by a concurrent browser login). If 401 errors persist, the OAuth bearer token itself has likely expired and the AI client needs to re-authenticate.

If a write succeeds but a later search shows old data, wait up to 60 seconds. Writes are confirmed from the REST API immediately, while DataMart search indexes update asynchronously.

More Help

來源:README.md,提交 ee0316a

工具

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

版本歷史

2
  1. v1.0.22最新Sep 29, 2026
  2. v1.0.3Sep 16, 2026

評分

已滿足適用檢查項的 85%

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

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

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

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