github JavaScript analyzed 1cf51ec

igapyon/mikuproject-mcp

github

Local stdio MCP server adapter for mikuproject, exposing workflow tools, resources, prompts, diagnostics, and bundled runtimes to MCP clients.

maintainer
igapyon
licence
Apache-2.0
first seen
2026-08-09
last seen
2026-08-09
releases · 30d
0
short id

Drift inferred · capture-to-capture

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

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

tools

  • mikuproject_ai_detect_kind
  • mikuproject_ai_export_bundle
  • mikuproject_ai_export_phase_detail
  • mikuproject_ai_export_project_overview
  • mikuproject_ai_export_task_edit
  • mikuproject_ai_spec
  • mikuproject_ai_validate_patch
  • mikuproject_export_workbook_json
  • mikuproject_export_xlsx
  • mikuproject_export_xml
  • mikuproject_import_xlsx
  • mikuproject_report_all
  • mikuproject_report_daily_svg
  • mikuproject_report_mermaid
  • mikuproject_report_monthly_calendar_svg
  • mikuproject_report_wbs_markdown
  • mikuproject_report_wbs_xlsx
  • mikuproject_report_weekly_svg
  • mikuproject_state_apply_patch
  • mikuproject_state_diff
  • mikuproject_state_from_draft
  • mikuproject_state_summarize
  • mikuproject_version
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 1cf51ec · analyzer v33 · 3w ago

danger signals1

code evidence vv0.12.0 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 152

filesystem 14

  • fs (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/scripts/prepare-package-assets.mjs :1 import { cpSync, mkdirSync, rmSync } from "node:fs";
  • fs (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/scripts/verify-package-surface.mjs :3 import { mkdirSync, mkdtempSync } from "node:fs";
  • fs igapyon-mikuproject-mcp-1cf51ec/packages/node/src/contract/contractPaths.ts :1 import { existsSync } from "node:fs";
  • fs igapyon-mikuproject-mcp-1cf51ec/packages/node/src/contract/loadJson.ts :1 import { readFileSync } from "node:fs";
  • fs igapyon-mikuproject-mcp-1cf51ec/packages/node/src/http.ts :3 import { mkdtempSync, rmSync } from "node:fs";
  • fs igapyon-mikuproject-mcp-1cf51ec/packages/node/src/resources/registerResources.ts :1 import { existsSync, readFileSync } from "node:fs";
  • fs igapyon-mikuproject-mcp-1cf51ec/packages/node/src/runtime/runtimeConfig.ts :1 import { existsSync, readdirSync } from "node:fs";
  • fs (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/src/test/httpE2e.test.ts :3 import { existsSync, mkdtempSync, writeFileSync } from "node:fs";
  • fs (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/src/test/runtimeOperation.test.ts :2 import { mkdirSync, mkdtempSync, writeFileSync } from "node:fs";
  • fs (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/src/test/serverSmoke.test.ts :2 import { mkdirSync, mkdtempSync, readFileSync, writeFileSync } from "node:fs";
  • fs (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/src/test/stdioE2e.test.ts :2 import { mkdtempSync, writeFileSync } from "node:fs";
  • fs igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :3 import { writeFileSync } from "node:fs";
show 2 more
  • fs igapyon-mikuproject-mcp-1cf51ec/packages/node/src/workspace/workspace.ts :2 import { mkdirSync } from "node:fs";
  • fs igapyon-mikuproject-mcp-1cf51ec/runtime/mikuproject-node/mikuproject-0.12.0.mjs :3 import fs from "node:fs";

shell / exec 3

  • shell (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/scripts/verify-package-surface.mjs :6 import { spawnSync } from "node:child_process";
  • shell igapyon-mikuproject-mcp-1cf51ec/packages/node/src/runtime/runtimeOperation.ts :1 import { spawn } from "node:child_process";
  • shell (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/src/test/httpE2e.test.ts :2 import { spawn, type ChildProcessWithoutNullStreams } from "node:child_process";

network 2

  • net igapyon-mikuproject-mcp-1cf51ec/packages/node/src/http.ts :2 import { createServer, type IncomingMessage, type OutgoingHttpHeader, type OutgoingHttpHeaders, type ServerResponse } from "node:http";
  • net (weak) igapyon-mikuproject-mcp-1cf51ec/packages/node/src/test/httpE2e.test.ts :224 const response = await fetch(endpoint, {

tool registrations 23

  • mikuproject_version igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :19
  • mikuproject_ai_spec igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :45
  • mikuproject_ai_detect_kind igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :79
  • mikuproject_state_from_draft igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :114
  • mikuproject_ai_export_project_overview igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :168
  • mikuproject_ai_export_bundle igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :222
  • mikuproject_ai_export_task_edit igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :276
  • mikuproject_ai_export_phase_detail igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :333
  • mikuproject_ai_validate_patch igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :399
  • mikuproject_state_apply_patch igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :443
  • mikuproject_state_diff igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :506
  • mikuproject_state_summarize igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :541
show 11 more
  • mikuproject_export_workbook_json igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :576
  • mikuproject_export_xml igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :630
  • mikuproject_export_xlsx igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :684
  • mikuproject_import_xlsx igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :738
  • mikuproject_report_wbs_xlsx igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :792
  • mikuproject_report_daily_svg igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :846
  • mikuproject_report_weekly_svg igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :900
  • mikuproject_report_monthly_calendar_svg igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :954
  • mikuproject_report_all igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :1008
  • mikuproject_report_wbs_markdown igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :1062
  • mikuproject_report_mermaid igapyon-mikuproject-mcp-1cf51ec/packages/node/src/tools/registerTools.ts :1116

install hooks 1

  • prepack igapyon-mikuproject-mcp-1cf51ec/packages/node/package.json :35 npm run build && node scripts/prepare-package-assets.mjs

declared dependencies 2

  • jp.igapyon:miku-ms-office-core@*
  • org.junit.jupiter:junit-jupiter@*

obfuscation 1

  • dynamic require()/import() igapyon-mikuproject-mcp-1cf51ec/packages/node/scripts/verify-package-surface.mjs :47 const runtimeConfigModule = await import(`file://${join(packageRoot, "dist/runtime/runtimeConfig.js")}`);