github TypeScript re-analysis due

cisco-open/mcptoolkit-contract

github

a CLI to evaluate MCP servers throughout their lifecycle (dump, document, compare, changelog...)

maintainer
cisco-open
licence
Apache-2.0
first seen
2026-06-24
last seen
2026-09-15
releases · 30d
3
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 0 tools
transport stdio · http counts 0 tools · 0 res · 0 prompts permission surface via code analysis

No tools enumerated yet for this server.

skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit be1d7e5 · analyzer v33 · 4d ago

skills & prompt files 4

danger signals1

code evidence vv2.0.0-rc.3 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 59

filesystem 29

  • fs (weak) cisco-open-mcptoolkit-contract-be1d7e5/.github/skills/oss-scaffold/scripts/apply.mjs :12 import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'node:fs';
  • fs (weak) cisco-open-mcptoolkit-contract-be1d7e5/.github/skills/oss-scaffold/scripts/check.mjs :8 import { readFileSync, existsSync } from 'node:fs';
  • fs (weak) cisco-open-mcptoolkit-contract-be1d7e5/.github/skills/oss-scaffold/scripts/lib.mjs :2 import { readFileSync, existsSync } from 'node:fs';
  • fs (weak) cisco-open-mcptoolkit-contract-be1d7e5/.github/skills/oss-scaffold/scripts/staleness.mjs :7 import { readFileSync } from 'node:fs';
  • fs (weak) cisco-open-mcptoolkit-contract-be1d7e5/scripts/sync-badge.mjs :10 import { readFileSync, writeFileSync } from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/breaking.ts :10 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/changelog.ts :10 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/compare.ts :10 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/convert.ts :10 import { readFile, writeFile } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/diff.ts :10 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/document.ts :10 import { readFile, writeFile } from 'fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/dump.ts :10 import { writeFile, readFile } from 'node:fs/promises';
show 17 more
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/rules.ts :13 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/split.ts :10 import { writeFile, mkdir } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/commands/validate.ts :10 import { writeFile, readFile } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/index.ts :7 import { readFileSync } from 'node:fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/catalog-discovery.ts :13 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/catalog-validator.ts :15 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/client.ts :9 import { readFileSync } from 'node:fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/config.ts :9 import { readFile } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/dumper.ts :9 import { readFile } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/oauth/client-registration-storage.ts :5 import { mkdir, readFile, writeFile, unlink } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/oauth/token-storage.ts :5 import { mkdir, readFile, writeFile, unlink } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/renderer.ts :10 import { readFile } from 'fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/rules-engine.ts :10 import * as fs from 'fs';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/splitter.ts :9 import { readFile } from 'node:fs/promises';
  • fs cisco-open-mcptoolkit-contract-be1d7e5/src/lib/validator.ts :9 import { readFile } from 'node:fs/promises';
  • fs (weak) cisco-open-mcptoolkit-contract-be1d7e5/tests/generators/catalog-test-generator.ts :18 import fs from 'fs/promises';
  • fs (weak) cisco-open-mcptoolkit-contract-be1d7e5/tests/unit/compare.test.ts :13 import * as fs from 'fs';

shell / exec 6

  • shell (weak) cisco-open-mcptoolkit-contract-be1d7e5/.github/skills/oss-scaffold/scripts/settings.mjs :13 import { execFileSync } from 'node:child_process';
  • shell (weak) cisco-open-mcptoolkit-contract-be1d7e5/.github/skills/oss-scaffold/scripts/staleness.mjs :9 import { execFileSync } from 'node:child_process';
  • shell cisco-open-mcptoolkit-contract-be1d7e5/src/commands/wizard.ts :11 import { spawn } from 'node:child_process';
  • shell (weak) cisco-open-mcptoolkit-contract-be1d7e5/tests/integration/agents-command.test.ts :10 import { execSync } from 'child_process';
  • shell (weak) cisco-open-mcptoolkit-contract-be1d7e5/tests/integration/protocol-view-command.test.ts :6 import { execFileSync, spawnSync } from 'node:child_process';
  • shell (weak) cisco-open-mcptoolkit-contract-be1d7e5/tests/unit/completion.test.ts :9 import { execSync } from 'child_process';

network 5

  • net cisco-open-mcptoolkit-contract-be1d7e5/src/lib/client.ts :496 const response = await fetch(url, {
  • net cisco-open-mcptoolkit-contract-be1d7e5/src/lib/oauth/discovery.ts :75 const response = await fetch(url, fetchInit);
  • net cisco-open-mcptoolkit-contract-be1d7e5/src/lib/oauth/manager.ts :17 import { createServer, IncomingMessage, ServerResponse } from 'node:http';
  • net cisco-open-mcptoolkit-contract-be1d7e5/src/lib/oauth/registration.ts :215 const response = await fetch(endpoint, {
  • net (weak) cisco-open-mcptoolkit-contract-be1d7e5/tests/unit/oauth-manager.test.ts :6 import { createServer, type Server } from 'node:http';

secrets 1

  • secrets (weak) cisco-open-mcptoolkit-contract-be1d7e5/.github/skills/oss-scaffold/scripts/settings.mjs :63 if (process.env.GH_TOKEN || process.env.GITHUB_TOKEN || process.env.GITHUB_ENTERPRISE_TOKEN) {

install hooks 1

  • prepack cisco-open-mcptoolkit-contract-be1d7e5/package.json :22 npm run clean && npm run build

declared dependencies 24

  • @modelcontextprotocol/client@2.0.0
  • @inquirer/prompts@^8.5.2
  • @mcpdesc/core@0.11.0
  • @mcpdesc/validator@0.12.0
  • ajv@^8.20.0
  • ajv-formats@^3.0.1
  • commander@^15.0.0
  • handlebars@^4.7.9
  • markdown-it@^14.2.0
  • marked@^18.0.5
  • omelette@^0.4.17
  • openid-client@^6.8.4
show 12 more
  • semver@^7.8.5
  • snarkdown@^2.0.0
  • yaml@^2.9.0
  • @jest/globals@^30.4.1
  • @swc/core@^1.15.43
  • @swc/jest@^0.2.39
  • @types/jest@^30.0.0
  • @types/node@^26.0.0
  • @types/omelette@^0.4.5
  • @types/semver@^7.7.1
  • jest@^30.4.2
  • typescript@^6.0.3