@mseep/apisix-mcp
Version:
[](https://smithery.ai/server/@api7/apisix-mcp)
18 lines (17 loc) • 821 B
JavaScript
import { CreateServiceSchema, UpdateServiceSchema } from "../schemas/service.js";
import makeAdminAPIRequest from "../utils/adminAPI.js";
const setupServiceTools = (server) => {
server.tool("create_service", "Create a service", CreateServiceSchema.shape, async (args) => {
const serviceId = args.id;
if (!serviceId) {
return await makeAdminAPIRequest(`/services`, "POST", args.service);
}
else {
return await makeAdminAPIRequest(`/services/${serviceId}`, "PUT", args.service);
}
});
server.tool("update_service", "Update specific attributes of an existing service", UpdateServiceSchema.shape, async (args) => {
return await makeAdminAPIRequest(`/services/${args.id}`, "PATCH", args.service);
});
};
export default setupServiceTools;