@taiga-ai/mcp-server 0.36.0-dev.897 → 0.36.0-dev.899
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.
- package/dist/index.js +104 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -26071,6 +26071,40 @@ object({
|
|
|
26071
26071
|
...outcomes === void 0 ? {} : { outcomes }
|
|
26072
26072
|
}));
|
|
26073
26073
|
//#endregion
|
|
26074
|
+
//#region ../../packages/types/dist/registries.js
|
|
26075
|
+
/**
|
|
26076
|
+
* The package ecosystems a registry can serve: every ecosystem the coding
|
|
26077
|
+
* agent builds (its skills and its image), keyed by the install tooling that
|
|
26078
|
+
* reads the credential. `maven` is a Maven repository, and Maven builds get
|
|
26079
|
+
* its credential (PRO-2916); Gradle builds name theirs in their own build
|
|
26080
|
+
* scripts and get none yet (PRO-2928).
|
|
26081
|
+
*/
|
|
26082
|
+
const REGISTRY_ECOSYSTEMS = [
|
|
26083
|
+
"npm",
|
|
26084
|
+
"terraform",
|
|
26085
|
+
"pypi",
|
|
26086
|
+
"nuget",
|
|
26087
|
+
"go",
|
|
26088
|
+
"cargo",
|
|
26089
|
+
"maven",
|
|
26090
|
+
"rubygems",
|
|
26091
|
+
"composer"
|
|
26092
|
+
];
|
|
26093
|
+
const REGISTRY_VENDORS = [
|
|
26094
|
+
"npmjs",
|
|
26095
|
+
"github",
|
|
26096
|
+
"gcp_artifact",
|
|
26097
|
+
"generic",
|
|
26098
|
+
"hcp_terraform",
|
|
26099
|
+
"scalr",
|
|
26100
|
+
"azure_artifacts",
|
|
26101
|
+
"jfrog",
|
|
26102
|
+
"git_host",
|
|
26103
|
+
"aws_codeartifact"
|
|
26104
|
+
];
|
|
26105
|
+
/** An IAM role ARN, as the CodeArtifact credential takes it. */
|
|
26106
|
+
const AWS_ROLE_ARN_PATTERN = /^arn:aws:iam::\d{12}:role\/[\w+=,.@/-]{1,512}$/;
|
|
26107
|
+
//#endregion
|
|
26074
26108
|
//#region ../../packages/types/dist/environments.js
|
|
26075
26109
|
const ENVIRONMENT_TYPES = [
|
|
26076
26110
|
"development",
|
|
@@ -27262,7 +27296,76 @@ object({
|
|
|
27262
27296
|
/** A factory document type, its legacy name read as the current one. */
|
|
27263
27297
|
const factoryDocumentType = _enum([...FACTORY_DOCUMENT_TYPES, LEGACY_FACTORY_INSTRUCTIONS_TYPE]).transform((type) => type === "team_instructions" ? FACTORY_INSTRUCTIONS_TYPE : type);
|
|
27264
27298
|
strictObject({ type: factoryDocumentType }), strictObject({ type: factoryDocumentType });
|
|
27265
|
-
|
|
27299
|
+
/**
|
|
27300
|
+
* A registry scope: an npm scope ("@acme") or a Go module path prefix
|
|
27301
|
+
* ("github.com/acme"), as `POST /registries` takes one (PRO-3670). Which
|
|
27302
|
+
* ecosystem takes which is the service's rule.
|
|
27303
|
+
*/
|
|
27304
|
+
const namedSegments = (value) => value.split("/").every((seg) => seg !== "" && seg !== "." && seg !== "..");
|
|
27305
|
+
const registryScope = string$2().regex(/^@?[A-Za-z0-9][A-Za-z0-9._~/-]*$/, "Not a valid scope").max(214).refine(namedSegments, "Not a valid scope");
|
|
27306
|
+
/** The package a registry's check fetches, in the union of the ecosystems' grammars. */
|
|
27307
|
+
const registryTestPackage = string$2().min(1).max(214).regex(/^@?[A-Za-z0-9_][A-Za-z0-9._~/:-]*$/, "Must be a valid package name").refine(namedSegments, "Must be a valid package name");
|
|
27308
|
+
/** KMS direct-encrypt takes 4096 bytes; the raw secret stays well under. */
|
|
27309
|
+
const REGISTRY_CREDENTIAL_MAX_BYTES = 3500;
|
|
27310
|
+
/** A registry's write-only credential: exactly one of a token, a GCP key or an AWS role, as the route takes it. */
|
|
27311
|
+
const registryCredential = strictObject({
|
|
27312
|
+
token: string$2().min(1).max(REGISTRY_CREDENTIAL_MAX_BYTES).optional(),
|
|
27313
|
+
username: string$2().min(1).max(256).regex(/^[^:\s]+$/, "Username must not contain a colon or whitespace").optional(),
|
|
27314
|
+
credentialsJson: string$2().min(2).max(REGISTRY_CREDENTIAL_MAX_BYTES).optional(),
|
|
27315
|
+
awsRoleArn: string$2().max(600).regex(AWS_ROLE_ARN_PATTERN, "Not an IAM role ARN").optional()
|
|
27316
|
+
}).refine((c) => [
|
|
27317
|
+
c.token,
|
|
27318
|
+
c.credentialsJson,
|
|
27319
|
+
c.awsRoleArn
|
|
27320
|
+
].filter((v) => v != null).length === 1, { message: "Provide exactly one of token, credentialsJson or awsRoleArn" }).refine((c) => c.username == null || c.token != null, { message: "A username goes with a token" }).refine((c) => new TextEncoder().encode(JSON.stringify(c)).length <= 4e3, { message: "Credential is too large to encrypt (must be under 4 KB once JSON-encoded)" });
|
|
27321
|
+
/** An instant as an ISO string, which the service reads as a date. */
|
|
27322
|
+
const isoInstant = string$2().datetime({ offset: true });
|
|
27323
|
+
object({
|
|
27324
|
+
status: _enum([
|
|
27325
|
+
"unvalidated",
|
|
27326
|
+
"valid",
|
|
27327
|
+
"auth_failed",
|
|
27328
|
+
"unreachable"
|
|
27329
|
+
]),
|
|
27330
|
+
lastValidatedAt: string$2(),
|
|
27331
|
+
detail: string$2().nullable()
|
|
27332
|
+
});
|
|
27333
|
+
strictObject({
|
|
27334
|
+
displayName: string$2().min(1).max(255).optional(),
|
|
27335
|
+
registryUrl: string$2().url().max(512).optional(),
|
|
27336
|
+
scopes: array(registryScope).max(50).optional(),
|
|
27337
|
+
expiresAt: isoInstant.nullable().optional(),
|
|
27338
|
+
credential: registryCredential.optional(),
|
|
27339
|
+
testPackage: registryTestPackage.nullable().optional()
|
|
27340
|
+
});
|
|
27341
|
+
object({
|
|
27342
|
+
outcome: _enum([
|
|
27343
|
+
"uninstalled",
|
|
27344
|
+
"left_in_use",
|
|
27345
|
+
"uninstall_failed"
|
|
27346
|
+
]),
|
|
27347
|
+
manageUrl: string$2().nullable()
|
|
27348
|
+
});
|
|
27349
|
+
strictObject({
|
|
27350
|
+
displayName: string$2().min(1).max(255),
|
|
27351
|
+
ecosystem: _enum(REGISTRY_ECOSYSTEMS).optional(),
|
|
27352
|
+
vendor: _enum(REGISTRY_VENDORS),
|
|
27353
|
+
registryUrl: string$2().url().max(512),
|
|
27354
|
+
scopes: array(registryScope).max(50).optional(),
|
|
27355
|
+
expiresAt: isoInstant.nullable().optional(),
|
|
27356
|
+
credential: registryCredential,
|
|
27357
|
+
testPackage: registryTestPackage.optional()
|
|
27358
|
+
}), strictObject({ hostId: uuid.optional() }), object({ installUrl: string$2().url() }), strictObject({
|
|
27359
|
+
subdomain: string$2().min(1).max(39).optional(),
|
|
27360
|
+
serverUrl: string$2().min(1).max(2048).optional(),
|
|
27361
|
+
caBundlePem: string$2().max(65536).optional(),
|
|
27362
|
+
orgLogin: string$2().min(1).max(39),
|
|
27363
|
+
displayName: string$2().max(255).optional()
|
|
27364
|
+
}), object({
|
|
27365
|
+
manifest: record(string$2(), unknown$1()),
|
|
27366
|
+
postUrl: string$2().url(),
|
|
27367
|
+
state: string$2()
|
|
27368
|
+
}), strictObject({ type: _enum(TENANT_DOCUMENT_TYPES) }), strictObject({ type: _enum(TENANT_DOCUMENT_TYPES).refine((type) => type !== "design_standards", { message: "The design standards draft is not made through sync" }) }), strictObject({
|
|
27266
27369
|
name: string$2().min(1).max(50),
|
|
27267
27370
|
action: _enum(["accept", "decline"])
|
|
27268
27371
|
}), object({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ai/mcp-server",
|
|
3
|
-
"version": "0.36.0-dev.
|
|
3
|
+
"version": "0.36.0-dev.899",
|
|
4
4
|
"description": "Taiga for AI coding assistants: read products, policies, initiatives and runs, and operate the line, over MCP",
|
|
5
5
|
"mcpName": "ga.tai/mcp-server",
|
|
6
6
|
"license": "UNLICENSED",
|