Không gian OpenAPI tích hợp AI, ưu tiên cục bộ

API của bạn: từ phát triển cục bộ
đến tài liệu và AI.

Để Codex, Claude Code và Cursor viết mã theo định nghĩa API của bạn. Với Powerduck ưu tiên làm việc cục bộ trên máy tính, hãy tạo tài liệu từ mã nguồn và dùng AI điều phối kiểm thử. Lưu trữ miễn phí tài liệu OpenAPI và máy chủ MCP trên Hub.

commerce-api/openapi.yaml OpenAPI 3.1 · tệp cục bộ
Một hợp đồng OpenAPI
/orders
  post  createOrder
  get   listOrders
/products
  get   listProducts
/customers
  get   listCustomers
Đã chuyển thành máy chủ MCP chạy được · 12 công cụ có thể gọi
Tác nhân lập trình của bạn Cursor · Claude Code · Codex
powerduck · MCP server
powerduck.read_spec() Tìm thấy 12 thao tác
powerduck.start_mock("POST /orders") Máy chủ mock đang chạy ở cổng 4010
powerduck.generate_tests("POST /orders") Đã tạo orders.test.js
powerduck.call_api("POST /orders", {total:49}) 200 OK · đã xác minh theo hợp đồng
powerduck.publish_docs() Đã cập nhật tài liệu tham khảo
Một tệp OpenAPI chuyển thành công cụ được tác nhân của bạn gọi: mock, kiểm thử, gọi API và tài liệu đều được xác minh theo cùng hợp đồng.

Làm việc cục bộ không cần tài khoản. AI từ xa dùng dịch vụ mô hình bạn chọn; lưu trữ trực tuyến cần tài khoản Cloud.

Sửa đặc tả · Gỡ lỗi API · Kiểm thử · Mock · Tài liệu API · Máy chủ MCP

POWERDUCK HUB

Một đặc tả OpenAPI. Phát triển cục bộ. Chia sẻ trực tuyến.

Làm việc với API trong ứng dụng máy tính. Dùng Hub để chia sẻ tài liệu và kết nối công cụ AI với API của bạn.

  1. 01

    Xây dựng và xác minh

    Thiết kế, gỡ lỗi và kiểm thử API trong Powerduck.

  2. 02

    Xuất bản từ OpenAPI

    Biến đặc tả thành tài liệu được lưu trữ và điểm cuối MCP.

  3. 03

    Chia sẻ và kết nối

    Chia sẻ liên kết tài liệu, kết nối ứng dụng khách MCP và chọn có đưa dự án vào danh sách công khai hay không.

Lưu trữ miễn phí trong giới hạn gói. API nghiệp vụ vẫn chạy trên backend của bạn.

Vì sao chọn Powerduck

Một tệp cục bộ thay cho nhiều công cụ API rời rạc.

Một tệp OpenAPI YAML trong kho mã phục vụ thiết kế, gỡ lỗi, kiểm thử, mock, tài liệu và MCP. Tác nhân lập trình cũng dùng chính tệp đó.

Một tệp cho mọi khả năng

Thiết kế, gỡ lỗi, kiểm thử, mock, tạo tài liệu và cung cấp MCP từ cùng đặc tả OpenAPI, để mọi thứ không lệch nhau.

Cách khác Tệp bộ sưu tập, tài liệu, mock và kiểm thử tách biệt
Powerduck Một YAML điều khiển mọi công cụ và tác nhân

Mỗi phản hồi được xác minh theo hợp đồng

Phản hồi không chỉ được hiển thị mà còn đối chiếu với đặc tả OpenAPI, giúp phát hiện ngay sai kiểu hoặc đường dẫn.

Cách khác Gửi yêu cầu và hiển thị phản hồi 200
Powerduck Đánh dấu sai lệch đặc tả ngay khi nhận phản hồi

Ưu tiên cục bộ, không cần tài khoản, sẵn sàng cho tác nhân

Tệp ở lại trên máy và hoạt động không cần tài khoản hay tải lên. Codex, Claude Code và Cursor đọc cùng đặc tả với bạn.

Cách khác Cần tài khoản đám mây và tải lên trước khi bắt đầu
Powerduck Chạy cục bộ; tác nhân đọc cùng tệp
~/commerce-api/openapi.yaml OpenAPI 3.1.0 3 vấn đề chưa lưu
142 /users/{id}:
143 get:
144 operationId: getUser
145 summary: Retrieve a user
146 tags: [Users]
147 parameters:
148 - $ref: '#/components/parameters/UserId'
149 responses:
150 '200':
151 description: The requested user
152 content:
153 application/json:
154 schema:
155 $ref: '#/components/schemas/User'
156 '404': # description is required
157 contents:
158 application/json:
159 schema:
160 $ref: '#/components/schemas/Erorr'
161 delete:
162 summary: Delete a user
Vấn đề 2 lỗi · 1 cảnh báo Đã xác thực theo biến thể 3.1
156:9 contents is not a valid Response Object key. Did you mean content? oas3-schema
160:24 Unresolved $ref — schemas/Erorr does not exist. ref-resolution
162:7 Operation has no operationId. It will be skipped when generating MCP tools. operation-operationId
Dòng 156, cột 9 YAML UTF-8 Dấu cách: 2 3.1.0
Bộ sưu tập tạo từ openapi.yaml Nhập Postman Đã bật kiểm tra hợp đồng
GET ▾
{{baseUrl}}/users/{{userId}}?include=profile
Môi trường thử nghiệm ▾
Tham số1 Xác thựcbearer Header3 Nội dung Tập lệnh Cài đặt
# GET has no requestBody in the specification — body disabled
# Path parameter id resolved from environment → userId = usr_8Kd2Xa
200 OK 148 ms 1.2 KB Hợp đồng: 1 điểm không khớp
Nội dung Header9 Cookie Hợp đồng1 Dòng thời gian
{
  "id": "usr_8Kd2Xa",
  "email": "ada@example.com",
  "created": 1757030400,
  "profile": {
    "name": "Ada L.",
    "locale": "en-GB"
  },
  "scope": "users:read orders:read"
}
Contract mismatch — response differs from the specification scope is present in the response but is not declared on components/schemas/User. Add the property to the schema or remove it from the handler.
mcp://localhost:7433 đang chạy stdio + HTTP

Tạo từ openapi.yaml

6 công cụ 7 tài nguyên 1 bị suy giảm Tạo lại khi lưu

Every operation with an operationId becomes a tool. Arguments come from parameters and requestBody. Nothing is hand-written.

POST /auth/login → operationId → loginUser
loginUser

Exchange credentials for a bearer token.

email : string password : string
GET /users/{id} → operationId → getUser
getUser

Retrieve a single user by identifier.

id : string include? : string
POST /orders → operationId → createOrder
createOrder

Create an order for the authenticated customer.

items : array currency : string
POST /orders/{id}/refund → operationId → refundOrder
refundOrder

Refund an order in full or in part.

id : string amount? : integer
14:02:11 watch openapi.yaml changed (line 144)
14:02:11 build parsed 3.1.0 · 11 operations · 14 schemas
14:02:11 build 6 công cụ, 7 resources · 1 skipped (no operationId)
14:02:12 serve listening on stdio and http://localhost:7433
14:02:31 call getUser { id: "usr_8Kd2Xa" } → 200 in 148 ms
docs.example.dev/reference/users/get Xuất tĩnh Đồng bộ với đặc tả

Retrieve a user

GET /v1/users/{id}

Returns the user object for a valid identifier. If the user has been deleted, an Error object is returned with status 404.

Tham số đường dẫn
id string Bắt buộc
The identifier of the user, prefixed with usr_.
Tham số truy vấn
include string
Expand a related object.

XEM TRONG QUY TRÌNH THỰC TẾ

Biến việc quen thuộc thành quy trình dựa trên hợp đồng.

Chọn tác vụ bên dưới. Powerduck chạy từ tệp OpenAPI trên máy bạn, gồm môi trường, kiểm thử và mock, không cần tài khoản hay tải lên.

Làm việc cục bộ vẫn đầy đủ tính năng.

Bắt đầu không gian API cục bộ mà không cần tài khoản hay tải lên. Dùng yêu cầu, xác thực, môi trường và khẳng định kiểm thử của bạn. Chọn Cloud khi muốn xuất bản trực tuyến.

  • Nhập cURL / Postman / OpenAPI
  • Xác thực và môi trường
  • Tập lệnh và khẳng định kiểm thử
  • Bộ sưu tập và kiểm thử kịch bản
  • Máy chủ mock cục bộ
  • Gỡ lỗi 7 giao thức

Làm việc cục bộ không cần tài khoản. AI từ xa dùng dịch vụ mô hình bạn chọn; lưu trữ trực tuyến cần tài khoản Cloud.

Vẫn đọc mã nguồn để biết tài liệu API có đúng không?

Tạo tài liệu từ dự án.

Định nghĩa API có thể xem xét và liên kết tài liệu cục bộ.

Xem thiết lập và yêu cầu

Đã đưa đặc tả cho AI mà vẫn nhận lại trường và đường dẫn khác?

Triển khai theo hợp đồng API thực.

Triển khai theo hợp đồng, kiểm tra bằng phản hồi thực.

Xem thiết lập và yêu cầu

Lặp lại cùng luồng nghiệp vụ bằng tay sau mỗi thay đổi API?

Chạy toàn bộ kịch bản nghiệp vụ.

Kết quả từng bước và khẳng định kiểm thử bị lỗi, không chỉ một tập lệnh được tạo ra.

Xem thiết lập và yêu cầu

Phải đổi công cụ chỉ vì điểm cuối tiếp theo dùng giao thức khác?

Kiểm tra bảy giao thức tại một nơi.

Điều khiển thủ công khi cần xem chính xác điều gì đã xảy ra.

Xem thiết lập và yêu cầu

Lần nào cần AI hỗ trợ cũng phải chép yêu cầu và phản hồi vào chat?

Điều tra bằng ngữ cảnh yêu cầu thực.

Chẩn đoán dựa trên kết quả yêu cầu, cùng thay đổi bạn có thể xem xét.

Xem thiết lập và yêu cầu

Duy trì hạ tầng riêng chỉ để chia sẻ tài liệu API và MCP?

Xuất bản tài liệu và MCP từ một API.

Tài liệu được lưu trữ và URL MCP mà không cần tự vận hành hạ tầng.

Xem thiết lập và yêu cầu

BẮT ĐẦU TRÊN MÁY CỦA BẠN

Tải xuống. Làm việc trong môi trường của bạn.

Powerduck là không gian API trên máy tính. Mở tệp cục bộ, gửi yêu cầu đầu tiên và kết nối tác nhân lập trình khi sẵn sàng. Không cần tài khoản để bắt đầu.

KHÔNG GIAN LÀM VIỆC CHÍNH

Bàn làm việc API của bạn.

Tệp cục bộ, quét mã và gỡ lỗi giao thức gốc đều có ở đây. Kết nối mô hình AI bạn chọn khi cần hỗ trợ thiết kế, điều tra hoặc kiểm thử.

  1. 1 Tải ứng dụng và thử ví dụ cục bộ — không cần tài khoản hay khóa mô hình.
  2. 2 Mở tệp OpenAPI hoặc quét kho mã hiện có.
  3. 3 Kết nối tác nhân lập trình, sửa mã và xác minh backend thực theo hợp đồng.
Tải ứng dụng máy tính

macOS 12+ · Windows 10+ · Linux

MUỐN XEM TRƯỚC?

Khám phá nhanh trong trình duyệt.

Demo web dùng mô hình đám mây chung và cần đăng nhập. Để làm việc cục bộ không cần tài khoản, hãy tải ứng dụng máy tính.

Mở ứng dụng web

Xác minh hợp đồng

Lỗi hợp đồng thực tế, rồi bản sửa đã xác minh

Ứng dụng khách API thông thường gửi yêu cầu và hiển thị phản hồi. Powerduck còn kiểm tra từng phản hồi theo hợp đồng OpenAPI, phát hiện sai lệch ngay khi xuất hiện.

Xem ví dụ chạy được
~/commerce-api — response check OpenAPI 3.1
Hợp đồng yêu cầu
total:
  type: number
Backend trả về chuỗi
{
  "total": "49.00"
}
/total phải là số — phản hồi không đạt hợp đồng
Trả về số
{
  "total": 49
}
Phản hồi khớp hợp đồng

Trình sửa đặc tả OpenAPI

Trình sửa đặc tả OpenAPI

Cây cấu trúc dựa trên nội dung thực của đặc tả, không đoán từ thụt lề. Duyệt đường dẫn và thành phần theo cây, rồi sửa lỗi ngay tại vị trí phát sinh.

  • Xác thực theo lược đồ. Kiểm tra theo đúng biến thể 3.0, 3.1 hoặc 3.2 mà tệp khai báo.
  • Điều hướng tham chiếu $ref. Đi tới định nghĩa, xem nơi sử dụng và nhận gợi ý sửa tham chiếu gõ sai.
  • Sửa trực tiếp tại nguồn. Kho mã của bạn vẫn là nguồn chuẩn.
  • Chẩn đoán kèm tên quy tắc. Lỗi CI và thông báo trong trình sửa dùng cùng thuật ngữ.
openapi.yaml 3 vấn đề
▾ info
▾ paths
 /users
 /users/{id}
 /orders
▾ components
 schemas
 responses
142 /users/{id}:
143 get:
144 operationId: getUser
145 responses:
156 contents:
160 $ref: Erorr
Vấn đề · 2 lỗi · 1 cảnh báo
156:9 contents is not a valid Response Object key
160:24 Unresolved $ref. Closest match: Error
Gỡ lỗi API Đã bật kiểm tra hợp đồng
▾ Users
 GET listUsers
 GET getUser
▾ Orders
 POST createOrder
GET {{baseUrl}}/users/{{userId}} Gửi
Tham số Xác thực Nội dung Header
{
  "id": "usr_8Kd2Xa",
  "email": "ada@example.com",
  "scope": "users:read"
}
Contract mismatch — "scope" is not declared on User.

Gỡ lỗi API

Gỡ lỗi API theo đặc tả

Trình tạo yêu cầu quen thuộc với nhà phát triển, bổ sung khả năng xác minh phản hồi theo hợp đồng.

  • Bộ sưu tập từ đường dẫn và thẻ. Không cần nhập dữ liệu hay đồng bộ lại thủ công.
  • Kiểm tra hợp đồng cho từng phản hồi. Phát hiện thuộc tính chưa khai báo, trường bị thiếu và kiểu không khớp ngay trong phản hồi.
  • Môi trường và biến. Tái sử dụng cấu hình phát triển và staging hiện có.
  • Xác thực từ securitySchemes. Cấu hình Bearer, khóa API và OAuth bắt đầu từ đặc tả.

Trình tạo máy chủ MCP

Tạo máy chủ MCP từ OpenAPI

Đặc tả của bạn đã chứa thông tin định nghĩa công cụ. Powerduck chuyển nó thành máy chủ MCP chạy được và chỉ rõ trường OpenAPI nào tạo nên từng công cụ.

  • Nguồn gốc rõ ràng. Mỗi công cụ đều truy ngược được về thao tác, operationId và lược đồ.
  • Hiển thị giới hạn và mục bị bỏ qua. Siêu dữ liệu thiếu được hiển thị rõ, thay vì âm thầm tạo ra công cụ không đầy đủ.
  • Tạo lại khi lưu. Sửa đặc tả là công cụ cập nhật, không cần bước dựng riêng.
  • Truyền tải cục bộ. Chạy qua stdio hoặc HTTP cho tác nhân và quy trình cục bộ.
mcp://localhost:7433 đang chạy
Tạo từ openapi.yaml 6 công cụ 7 tài nguyên
GET /users/{id} → operationId
getUser
id: string
POST /orders → operationId
createOrder
items: array
POST /auth/login
loginUser
email, password
DELETE /users/{id}
đã bỏ qua
Thiếu operationId
14:02 build 6 tools, 7 resources
14:02 serve listening on :7433
14:03 call getUser → 200
Tài liệu tham chiếu API Xuất tĩnh
Users
Tổng quan
Retrieve a user
List users
Update user

Retrieve a user

GET /v1/users/{id}
Returns the user object for a valid identifier.
Tham số đường dẫn
id · string · required
Giá trị trả về
User · object
curl /users/{id}

{
  "id": "usr_...",
  "email": "ada@..."
}

Trình tạo tài liệu API

Tài liệu API từ cùng một hợp đồng

Tạo tài liệu tham khảo trực tiếp từ mô hình OpenAPI, xuất thành tệp tĩnh và lưu trữ ở nơi bạn muốn.

  • Bảng tham số từ lược đồ. Thuộc tính bắt buộc, giá trị enum và mô tả luôn đồng bộ.
  • Ví dụ bằng nhiều ngôn ngữ. Tạo ví dụ cURL, Node, Python và Go từ các thao tác.
  • Phản hồi từ hợp đồng thực. Phản hồi thành công và lỗi được tạo từ cùng các đối tượng mà trình gỡ lỗi kiểm tra.
  • Xuất tĩnh. Không có phụ thuộc lúc chạy, không bị khóa vào nền tảng tài liệu.

Một nguồn chuẩn duy nhất

Một tệp OpenAPI cục bộ.
Mọi khả năng, cùng AI.

Mở openapi.yaml hoặc openapi.json cục bộ và Powerduck biến hợp đồng sẵn có thành không gian API hoàn chỉnh. Không cần nhập, chuyển đổi, bộ sưu tập song song hay bản sao trên đám mây. Mô tả kết quả bằng ngôn ngữ tự nhiên, trợ lý tích hợp sẽ thực hiện qua các bước có thể xem xét. Cùng tệp đó kết nối qua MCP với tác nhân lập trình AI.

MỞ CỤC BỘ
{ }
openapi.yaml
hoặc openapi.json

Tệp vẫn ở trong kho mã của bạn.

01 Trình sửa đặc tả

Sửa, duyệt và xác thực hợp đồng thực.

02 Trình gỡ lỗi API

Gửi yêu cầu tạo từ cùng các thao tác.

03 Máy chủ MCP

Chuyển thao tác thành công cụ cho tác nhân.

04 Tài liệu API

Xuất bản tài liệu từ cùng một nguồn.

Powerduck

Hơn một ứng dụng khách API.
Hơn một trình xem đặc tả.
Nơi xây dựng API cùng AI.

Không gian làm việc cục bộ có AI, được xây dựng quanh chính tệp OpenAPI.

KHÔNG CẦN ĐÁM MÂYKhông cần tải đặc tả lên để làm việc cục bộ.
KHÔNG ĐỒNG BỘ THỦ CÔNGKhông có tài liệu riêng phải giữ đồng bộ với hợp đồng.
KHÔNG CẦN BẢN SAOYAML hoặc JSON hiện có chính là không gian làm việc.

Công việc cục bộ, dịch vụ từ xa và lựa chọn của bạn

Tệp cục bộ không cần tài khoản. AI từ xa gửi ngữ cảnh liên quan đến nhà cung cấp bạn đã cấu hình; xuất bản lên Cloud tải nội dung bạn chọn lên. Thống kê sử dụng tùy chọn được tắt mặc định. Xem Chính sách quyền riêng tư để biết dữ liệu và cách kiểm soát.

Chính sách quyền riêng tư

Làm việc cục bộ không cần mua Cloud. Gói miễn phí cho phép dùng hai đặc tả; phần thưởng chia sẻ được duyệt có thể tăng hạn mức. Giấy phép máy tính bỏ giới hạn số đặc tả. Nhà cung cấp mô hình tính phí sử dụng khóa riêng của bạn; tín dụng mô hình được lưu trữ và dịch vụ Cloud được tính riêng.

Chọn bước tiếp theo.

So sánh sản phẩm và giá →

Câu hỏi thường gặp

Những điều nhà phát triển muốn biết trước

Thông tin thực tế về tệp cục bộ, phiên bản OpenAPI, tạo MCP và giấy phép.

Powerduck có tải đặc tả OpenAPI của tôi lên đâu không?

Tệp cục bộ không cần tài khoản. AI từ xa gửi ngữ cảnh liên quan đến nhà cung cấp bạn đã cấu hình; xuất bản lên Cloud tải nội dung bạn chọn lên. Thống kê sử dụng tùy chọn được tắt mặc định. Xem Chính sách quyền riêng tư để biết dữ liệu và cách kiểm soát.

Hỗ trợ những phiên bản OpenAPI nào?

OpenAPI 3.0, 3.1 và 3.2. Powerduck nhận biết phiên bản được khai báo và xác thực theo đúng biến thể, thay vì chỉ dùng tập quy tắc chung tối thiểu.

Máy chủ MCP được tạo như thế nào?

Thao tác có operationId trở thành công cụ MCP. Đối số được tạo từ tham số và lược đồ requestBody. Lược đồ thành phần có thể được cung cấp dưới dạng tài nguyên. Máy chủ được tạo sẽ cập nhật mỗi khi đặc tả thay đổi.

Giấy phép máy tính có phải thuê bao không?

Không. Powerduck Desktop là giấy phép vĩnh viễn mua một lần, gồm các bản cập nhật trong cùng phiên bản chính. Nâng cấp lên phiên bản chính sau này là tùy chọn.

Tôi có thể tiếp tục dùng bộ sưu tập Postman không?

Có. Bạn vẫn có thể dùng các bộ sưu tập và môi trường hiện tại. Powerduck lấy đặc tả OpenAPI làm hợp đồng chuẩn và giúp tìm những chỗ yêu cầu lệch khỏi hợp đồng.

Có dùng được trong CI không?

Có. Cùng bộ máy xác thực và tạo mã được cung cấp qua @powerduck/openapi-cli — công cụ dòng lệnh sẵn sàng cho CI, chạy trong pull request và pipeline tự động. Công cụ hỗ trợ kiểm thử hàng loạt trên 6 giao thức (HTTP, SSE, WebSocket, gRPC, MCP, GraphQL), tùy chỉnh mức đồng thời và báo cáo tương thích JUnit để tích hợp CI.

Khám phá openapi-cli →