@burdenoff/mcp-libs 2026.1007.2 → 2026.1007.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -788,6 +788,25 @@ var RETRY_RUN = `
788
788
  }
789
789
  }
790
790
  `;
791
+ var CREATE_CREDENTIAL = `
792
+ mutation CreateCredential($input: CreateConnectionInput!) {
793
+ createConnection(input: $input) {
794
+ id
795
+ name
796
+ description
797
+ status
798
+ providerId
799
+ provider {
800
+ id
801
+ key
802
+ name
803
+ authType
804
+ }
805
+ credentialSource
806
+ createdAt
807
+ }
808
+ }
809
+ `;
791
810
  var AUTHENTICATE_CREDENTIAL_API_KEY = `
792
811
  mutation AuthenticateCredentialApiKey($input: ApiKeyAuthInput!) {
793
812
  authenticateWithApiKey(input: $input) {
@@ -1049,6 +1068,30 @@ function registerCredentialTools(server, ctx, track) {
1049
1068
  return jsonResult(data.getProviders);
1050
1069
  })
1051
1070
  );
1071
+ server.registerTool(
1072
+ track(mcpToolName(ctx.productName, "credentials_create")),
1073
+ {
1074
+ title: "Create Credential",
1075
+ description: "Create a connection against a provider. Secrets go to the vault; pass a reference, never a raw secret in config.",
1076
+ inputSchema: {
1077
+ name: zod.z.string().describe("Connection name"),
1078
+ providerId: zod.z.string().describe('Provider ID or key (e.g. "openai")'),
1079
+ description: zod.z.string().optional().describe("Description"),
1080
+ config: zod.z.unknown().optional().describe("Non-secret provider config as JSON"),
1081
+ context: zod.z.unknown().optional().describe("Context JSON"),
1082
+ vaultId: zod.z.string().optional().describe("Vault to store secret material in"),
1083
+ credentialSecretId: zod.z.string().optional().describe("Existing vault secret reference"),
1084
+ managedSecretName: zod.z.string().optional().describe("Managed secret name")
1085
+ }
1086
+ },
1087
+ async (args) => runTool(ctx, "credentials_create", async () => {
1088
+ const data = await ctx.gql.workspace.request(
1089
+ CREATE_CREDENTIAL,
1090
+ { input: definedInput({ ...args }) }
1091
+ );
1092
+ return jsonResult(data.createConnection);
1093
+ })
1094
+ );
1052
1095
  server.registerTool(
1053
1096
  track(mcpToolName(ctx.productName, "credentials_update")),
1054
1097
  {