Pi Agent Platform
v1.2.17 docs · VI Commands

Thêm, xem và gỡ MCP server

piagent-mcp có bề mặt lệnh đầy đủ chứ không chỉ seed preset: add, remove, get, list, enable, disable — trên cả bốn scope.

Hai bề mặt, chọn theo chỗ đang đứng

Trong session Pi thì gõ slash command. Ngoài terminal thì gõ CLI. Cùng một dữ liệu, cùng một cách đọc trạng thái — khác nhau ở chỗ ai chạy.

ViệcTrong sessionTrong terminal
Mở menu/piagent-mcp
Xem toàn bộ server + state/piagent-mcp statuspiagent-mcp list
Chi tiết một server/piagent-mcp get <name>piagent-mcp get <name>
Thiếu gì để chạy được/piagent-mcp doctorpiagent-mcp doctor
Duyệt server của repo/piagent-mcp approve <name>piagent-mcp approve <name>
Bật / tắt/piagent-mcp enable|disable <name>piagent-mcp enable|disable <name>
Thêm, xoá, presetpiagent-mcp add|remove|--preset
Trạng thái kết nối, OAuth/mcp, /mcp-auth
Vì sao slash command chứ không phải gõ CLI trong session

piagent-mcp list giữa session là nhờ model chạy bash, đọc output rồi thuật lại — ba lượt model cho một câu hỏi mà chính process này trả lời được từ file nó đã đọc. Slash command do Pi dispatch thẳng tới handler, không đi qua model: không tốn token, không diễn giải lại, và cùng một câu hỏi luôn ra cùng một câu trả lời.

Thêm server vẫn ở terminal

add mang theo shell quoting, tham chiếu ${VAR} và một command line sau --. Ba thứ đó đã có một bộ parse đúng là chính shell; viết lại nó bên trong slash command chỉ tạo ra bộ parse thứ hai, tệ hơn. Vì vậy ranh giới là: đọc trạng thái thì ở trong session, ghi định nghĩa server thì ở terminal. Gọi /piagent-mcp add sẽ in ra đúng lệnh terminal cần chạy chứ không đoán.

Lệnh

Trong session

Không tham số là menu. Biết rồi thì gõ thẳng — Tab auto-complete cả subcommand lẫn tên server.

/piagent-mcp                 menu
/piagent-mcp status          bảng đầy đủ
/piagent-mcp get sentry
/piagent-mcp doctor
/piagent-mcp approve internal

Thêm server

--url cho server remote, -- rồi command cho server chạy local. Chạy ở terminal.

piagent-mcp add sentry --url https://mcp.sentry.dev/mcp --scope global
piagent-mcp add internal --scope project -- npx -y @acme/internal-mcp

Xem

list cho toàn bộ server nhìn thấy được từ project hiện tại, kèm state. get cho chi tiết một server.

piagent-mcp list
piagent-mcp get sentry

Tắt và xoá

disable giữ nguyên định nghĩa, chỉ ngừng dùng. remove xoá hẳn khỏi scope.

piagent-mcp disable sentry
piagent-mcp enable sentry
piagent-mcp remove sentry --scope global

Preset

Seed một nhóm server đã pin sẵn. --replace đưa các server thuộc preset về baseline.

piagent-mcp --preset core --scope global --replace
piagent-mcp --list

Output nói rõ đã sửa file nào

Bốn layer config cùng được đọc, nên câu hỏi đầu tiên khi có gì đó không đúng luôn là "file nào đang có hiệu lực". add trả lời sẵn:

$ piagent-mcp add internal --scope project -- npx -y @acme/internal-mcp
Added local MCP server internal with command: npx -y @acme/internal-mcp in project scope
File modified: /Users/you/repo/.mcp.json
This scope is part of the repository, so the server is not usable until approved: piagent-mcp approve internal

list hiển thị dạng bảng, cột STATE cho biết server nào dùng được ngay:

NAME             SCOPE    TRANSPORT  TARGET                                  STATE
context7         global   stdio      npx -y @upstash/context7-mcp@3.2.4       ready
chrome-devtools  global   stdio      npx -y chrome-devtools-mcp@1.6.0 ...     ready
github           global   stdio      docker run -i --rm -e GITHUB_PERSON...   needs-env
internal         project  stdio      npx -y @acme/internal-mcp               pending-approval

Server tự thêm và luồng update

Mỗi lần piagent-update chạy, preset được apply lại với --replace. Vòng merge chỉ đi qua đúng những server ID mà preset sở hữu:

Giữ nguyên

Server có ID riêng — my-internal, sentry, bất cứ tên nào không thuộc preset — sống qua mọi lần update.

Bị ghi đè

Sửa tay một server thuộc preset (github, context7…) sẽ bị đưa về baseline ở lần update kế tiếp. Muốn giữ bản riêng thì đặt tên khác.