Lokalny projekt MCP oparty o Node.js, Express i @modelcontextprotocol/sdk.
Repozytorium zawiera dwa serwery MCP:
server.js— podstawowy read-only MCP dla plików wC:\Work\mcp.server_tools.js— modularny MCP tools profile z narzędziami FS, index, science, connector-safe code tools i connector-safe registry control-plane.
Projekt jest lokalnym runtime MCP z kontrolowanym deploy/rollback. Dokumentacja canonical znajduje się w docs/.
Repozytorium GitHub:
https://github.com/BlackStar1979/mcp
- Node.js 18 lub nowszy
- npm
- Windows, z katalogiem roboczym
C:\Work\mcp
Część narzędzi z core/science_tools.js uruchamia helpery Python przez komendę python.
Wymagane pakiety Python:
astropy— dlafits_infoh5py— dlahdf5_info
table_profile używa wyłącznie standard library Pythona.
Szczegóły operacyjne:
docs/PYTHON_RUNTIME_REQUIREMENTS.md
npm installnpm startDomyślny punkt wejścia:
server_tools.js
Alternatywnie bezpośrednio:
node C:\Work\mcp\server_tools.jsnode server.jsRead-only MCP działa lokalnie i ogranicza zakres do:
C:\Work\mcp
npm testTesty sprawdzają między innymi:
- konfigurację ścieżek runtime,
- blokady zapisu w katalogach chronionych,
- przekierowanie importów do modułów w
core, - brak startup dependency od legacy
core/code_tools.js, - minimalny kontrakt descriptorów MCP,
- bazowy result-shape helperów MCP,
- registry safe layer,
- deploy / rollback / perf scripts.
Zmiany operacyjne powinny przechodzić przez manifest i skrypty:
.\deploy.ps1 -Mode Prepare -Manifest <manifest>
.\deploy.ps1 -Mode Execute -Manifest <manifest>Rollback:
.\rollback.ps1 -DeploymentId <deployment_id>Nie należy kopiować zmian bezpośrednio do runtime z pominięciem deploy/rollback.
.
├── core/ # moduły wewnętrzne modularnego MCP i helpery Python
├── docs/ # dokumentacja canonical/current/reference/history
├── tests/ # testy node:test
├── .mcp_warzone/ # lokalny staging zmian, nie source-of-truth repo
├── .mcp_deploy/ # manifesty i recordy deploy
├── .mcp_deploy_backup/ # backupy deploy
├── server.js # read-only MCP
├── server_tools.js # modularny MCP tools profile
├── deploy.ps1
├── rollback.ps1
├── perf.ps1
├── package.json
└── package-lock.json
Uwaga: wcześniejszy katalog science_py/ nie jest aktywną strukturą runtime. Helpery Python znajdują się obecnie w core/.
Dokumentacja projektowa jest w katalogu:
docs/
Czytanie zacznij od:
docs/README.md
docs/CURRENT_STATE.md
docs/AUDIT_2026-05-03_DEEP.md
docs/OPENAI_MCP_CONFORMANCE_2026-05-03.md
docs/DOCS_CATALOG.md
Repozytorium nie powinno zawierać:
node_modules/,.mcp_audit/,.mcp_audit.log,.mcp_backups/,.mcp_index/,.mcp_trash/,.mcp_warzone/,.mcp_deploy_backup/,- logów, cache i środowisk wirtualnych.
Reguły wykluczeń są zapisane w .gitignore.
Audit i performance logging są aktywne w lokalnym runtime operatorskim:
core/audit.jscore/perf.jsperf.ps1.mcp_audit.log.mcp_perf.log.mcp_perf_on
Artefakty .mcp_audit* i .mcp_perf* są lokalnymi źródłami dowodowymi, ale nie są canonical documentation ani częścią publikowanego repozytorium.
Serwer wykonuje operacje na lokalnym systemie plików, dlatego powinien być uruchamiany wyłącznie w zaufanym środowisku.
server_tools.js używa autoryzacji przez MCP_TOKEN. Token może być przekazywany przez query string albo bearer header zgodnie z aktualnym flow lokalnego connectora. Token w URL jest ryzykiem operacyjnym i powinien być chroniony przed ujawnieniem.
Licencja nie została jeszcze wybrana. Do czasu dodania pliku LICENSE projekt należy traktować jako kod bez udzielonej publicznej licencji.