@taiga-ai/mcp-server 0.36.0-rc.892 → 0.36.0
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 +118 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -24687,6 +24687,19 @@ const PRODUCT_DOCUMENT_DISPLAY_NAMES = {
|
|
|
24687
24687
|
const PRODUCT_DOCUMENT_ORIGINS = ["plan", "reality"];
|
|
24688
24688
|
/** The forges a repository link can name: `FORGE_PROVIDERS`, under the name links have always used. */
|
|
24689
24689
|
const VCS_PROVIDERS = FORGE_PROVIDERS;
|
|
24690
|
+
Object.fromEntries(Object.entries({
|
|
24691
|
+
specification: "specification",
|
|
24692
|
+
"user-flows": "user_flow",
|
|
24693
|
+
architecture: "architecture",
|
|
24694
|
+
"tech-decisions": "technology_decisions",
|
|
24695
|
+
"data-flow": "data_flow",
|
|
24696
|
+
"threat-model": "threat_model",
|
|
24697
|
+
dpia: "privacy_assessment",
|
|
24698
|
+
"risk-register": "risk_register",
|
|
24699
|
+
"service-blueprint": "service_blueprint",
|
|
24700
|
+
"ui-direction": "ui_direction",
|
|
24701
|
+
"codebase-snapshot": "codebase_snapshot"
|
|
24702
|
+
}).map(([slug, apiType]) => [apiType, slug]));
|
|
24690
24703
|
//#endregion
|
|
24691
24704
|
//#region ../../packages/types/dist/route-key.js
|
|
24692
24705
|
/**
|
|
@@ -25478,6 +25491,7 @@ discriminatedUnion("kind", [
|
|
|
25478
25491
|
})).max(20),
|
|
25479
25492
|
moreFailed: number$1().int().min(0).optional(),
|
|
25480
25493
|
observedAt: optionalMoment,
|
|
25494
|
+
repository: string$2().min(1).max(255).optional(),
|
|
25481
25495
|
stepId: optionalUuid
|
|
25482
25496
|
}),
|
|
25483
25497
|
object({
|
|
@@ -26070,6 +26084,40 @@ object({
|
|
|
26070
26084
|
...outcomes === void 0 ? {} : { outcomes }
|
|
26071
26085
|
}));
|
|
26072
26086
|
//#endregion
|
|
26087
|
+
//#region ../../packages/types/dist/registries.js
|
|
26088
|
+
/**
|
|
26089
|
+
* The package ecosystems a registry can serve: every ecosystem the coding
|
|
26090
|
+
* agent builds (its skills and its image), keyed by the install tooling that
|
|
26091
|
+
* reads the credential. `maven` is a Maven repository, and Maven builds get
|
|
26092
|
+
* its credential (PRO-2916); Gradle builds name theirs in their own build
|
|
26093
|
+
* scripts and get none yet (PRO-2928).
|
|
26094
|
+
*/
|
|
26095
|
+
const REGISTRY_ECOSYSTEMS = [
|
|
26096
|
+
"npm",
|
|
26097
|
+
"terraform",
|
|
26098
|
+
"pypi",
|
|
26099
|
+
"nuget",
|
|
26100
|
+
"go",
|
|
26101
|
+
"cargo",
|
|
26102
|
+
"maven",
|
|
26103
|
+
"rubygems",
|
|
26104
|
+
"composer"
|
|
26105
|
+
];
|
|
26106
|
+
const REGISTRY_VENDORS = [
|
|
26107
|
+
"npmjs",
|
|
26108
|
+
"github",
|
|
26109
|
+
"gcp_artifact",
|
|
26110
|
+
"generic",
|
|
26111
|
+
"hcp_terraform",
|
|
26112
|
+
"scalr",
|
|
26113
|
+
"azure_artifacts",
|
|
26114
|
+
"jfrog",
|
|
26115
|
+
"git_host",
|
|
26116
|
+
"aws_codeartifact"
|
|
26117
|
+
];
|
|
26118
|
+
/** An IAM role ARN, as the CodeArtifact credential takes it. */
|
|
26119
|
+
const AWS_ROLE_ARN_PATTERN = /^arn:aws:iam::\d{12}:role\/[\w+=,.@/-]{1,512}$/;
|
|
26120
|
+
//#endregion
|
|
26073
26121
|
//#region ../../packages/types/dist/environments.js
|
|
26074
26122
|
const ENVIRONMENT_TYPES = [
|
|
26075
26123
|
"development",
|
|
@@ -27261,7 +27309,76 @@ object({
|
|
|
27261
27309
|
/** A factory document type, its legacy name read as the current one. */
|
|
27262
27310
|
const factoryDocumentType = _enum([...FACTORY_DOCUMENT_TYPES, LEGACY_FACTORY_INSTRUCTIONS_TYPE]).transform((type) => type === "team_instructions" ? FACTORY_INSTRUCTIONS_TYPE : type);
|
|
27263
27311
|
strictObject({ type: factoryDocumentType }), strictObject({ type: factoryDocumentType });
|
|
27264
|
-
|
|
27312
|
+
/**
|
|
27313
|
+
* A registry scope: an npm scope ("@acme") or a Go module path prefix
|
|
27314
|
+
* ("github.com/acme"), as `POST /registries` takes one (PRO-3670). Which
|
|
27315
|
+
* ecosystem takes which is the service's rule.
|
|
27316
|
+
*/
|
|
27317
|
+
const namedSegments = (value) => value.split("/").every((seg) => seg !== "" && seg !== "." && seg !== "..");
|
|
27318
|
+
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");
|
|
27319
|
+
/** The package a registry's check fetches, in the union of the ecosystems' grammars. */
|
|
27320
|
+
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");
|
|
27321
|
+
/** KMS direct-encrypt takes 4096 bytes; the raw secret stays well under. */
|
|
27322
|
+
const REGISTRY_CREDENTIAL_MAX_BYTES = 3500;
|
|
27323
|
+
/** A registry's write-only credential: exactly one of a token, a GCP key or an AWS role, as the route takes it. */
|
|
27324
|
+
const registryCredential = strictObject({
|
|
27325
|
+
token: string$2().min(1).max(REGISTRY_CREDENTIAL_MAX_BYTES).optional(),
|
|
27326
|
+
username: string$2().min(1).max(256).regex(/^[^:\s]+$/, "Username must not contain a colon or whitespace").optional(),
|
|
27327
|
+
credentialsJson: string$2().min(2).max(REGISTRY_CREDENTIAL_MAX_BYTES).optional(),
|
|
27328
|
+
awsRoleArn: string$2().max(600).regex(AWS_ROLE_ARN_PATTERN, "Not an IAM role ARN").optional()
|
|
27329
|
+
}).refine((c) => [
|
|
27330
|
+
c.token,
|
|
27331
|
+
c.credentialsJson,
|
|
27332
|
+
c.awsRoleArn
|
|
27333
|
+
].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)" });
|
|
27334
|
+
/** An instant as an ISO string, which the service reads as a date. */
|
|
27335
|
+
const isoInstant = string$2().datetime({ offset: true });
|
|
27336
|
+
object({
|
|
27337
|
+
status: _enum([
|
|
27338
|
+
"unvalidated",
|
|
27339
|
+
"valid",
|
|
27340
|
+
"auth_failed",
|
|
27341
|
+
"unreachable"
|
|
27342
|
+
]),
|
|
27343
|
+
lastValidatedAt: string$2(),
|
|
27344
|
+
detail: string$2().nullable()
|
|
27345
|
+
});
|
|
27346
|
+
strictObject({
|
|
27347
|
+
displayName: string$2().min(1).max(255).optional(),
|
|
27348
|
+
registryUrl: string$2().url().max(512).optional(),
|
|
27349
|
+
scopes: array(registryScope).max(50).optional(),
|
|
27350
|
+
expiresAt: isoInstant.nullable().optional(),
|
|
27351
|
+
credential: registryCredential.optional(),
|
|
27352
|
+
testPackage: registryTestPackage.nullable().optional()
|
|
27353
|
+
});
|
|
27354
|
+
object({
|
|
27355
|
+
outcome: _enum([
|
|
27356
|
+
"uninstalled",
|
|
27357
|
+
"left_in_use",
|
|
27358
|
+
"uninstall_failed"
|
|
27359
|
+
]),
|
|
27360
|
+
manageUrl: string$2().nullable()
|
|
27361
|
+
});
|
|
27362
|
+
strictObject({
|
|
27363
|
+
displayName: string$2().min(1).max(255),
|
|
27364
|
+
ecosystem: _enum(REGISTRY_ECOSYSTEMS).optional(),
|
|
27365
|
+
vendor: _enum(REGISTRY_VENDORS),
|
|
27366
|
+
registryUrl: string$2().url().max(512),
|
|
27367
|
+
scopes: array(registryScope).max(50).optional(),
|
|
27368
|
+
expiresAt: isoInstant.nullable().optional(),
|
|
27369
|
+
credential: registryCredential,
|
|
27370
|
+
testPackage: registryTestPackage.optional()
|
|
27371
|
+
}), strictObject({ hostId: uuid.optional() }), object({ installUrl: string$2().url() }), strictObject({
|
|
27372
|
+
subdomain: string$2().min(1).max(39).optional(),
|
|
27373
|
+
serverUrl: string$2().min(1).max(2048).optional(),
|
|
27374
|
+
caBundlePem: string$2().max(65536).optional(),
|
|
27375
|
+
orgLogin: string$2().min(1).max(39),
|
|
27376
|
+
displayName: string$2().max(255).optional()
|
|
27377
|
+
}), object({
|
|
27378
|
+
manifest: record(string$2(), unknown$1()),
|
|
27379
|
+
postUrl: string$2().url(),
|
|
27380
|
+
state: string$2()
|
|
27381
|
+
}), 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({
|
|
27265
27382
|
name: string$2().min(1).max(50),
|
|
27266
27383
|
action: _enum(["accept", "decline"])
|
|
27267
27384
|
}), object({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ai/mcp-server",
|
|
3
|
-
"version": "0.36.0
|
|
3
|
+
"version": "0.36.0",
|
|
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",
|