프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

Itamos MCP Tools

제작자: Itamos-technologia버전 1.1.0i★ –i클라우드에서 실행
레지스트리 이름io.github.itamos-technologia/itamos-mcp-tools

설치

개요

제작자가 쓴 설명(영어 원문)

Code-map tools for AI agents: see a repo's structure first, then edit only what matters.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 클라우드에서 실행
  • 전송 방식: Streamable HTTP
  • 카테고리: 여행, 지도 및 날씨

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

  • 기본 점검: 3개 중 3개 통과
  • 제작자의 서버에서 실행돼요. 내가 요청한 내용은 제작자의 서버를 거쳐요.
  • 레지스트리에 입력해야 할 키가 나와 있지 않아요.

필요한 것

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

웹, 데스크톱, 모바일의 Claude에서 쓸 수 있어요:

  1. Settings → Connectors 열기
  2. Add custom connector 누르기
  3. 아래 주소를 붙여 넣고 Add 누르기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Add2https://…3
https://mcp.itamos-technologia.com/mcp

터미널에서 이 명령어를 실행하세요

claude mcp add --transport http itamos-tools https://mcp.itamos-technologia.com/mcp

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "itamos-tools": {
      "url": "https://mcp.itamos-technologia.com/mcp"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "itamos-tools": {
      "type": "http",
      "url": "https://mcp.itamos-technologia.com/mcp"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요:

  1. 웹에서 ChatGPT 열기 → Settings → Connectors (Apps)
  2. Create 또는 Add 누르기(일부 요금제는 먼저 Advanced에서 Developer mode를 켜야 해요)
  3. 아래 주소를 붙여 넣고 이름을 정한 뒤 저장하기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Create2https://…3
https://mcp.itamos-technologia.com/mcp

메뉴 이름은 요금제나 시기에 따라 조금 다를 수 있어요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

서버가 도구 목록을 보여 주기 전에 로그인을 요구해요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 9일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 Itamos-technologia 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • ✓ 통과

    엔드포인트 응답

    311ms 만에 응답(HTTP 401)

  • ✓ 통과

    OAuth로 로그인

    OAuth 로그인을 지원한다고 밝혀서, AI 앱이 로그인 화면으로 안내해 줘요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    아직 점검하지 않았어요. 엔드포인트를 점검할 때 도구 목록을 읽어요

여행, 지도 및 날씨 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 1736개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 1736개 중 50%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 1736개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

Itamos MCP Tools, 안전한가요?

해당하는 기본 점검 3개 중 3개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.1.0)은 30일 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: ViaFrei, Viajante, Canli Validation

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:↓ 주간 다운로드i★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

ViaFrei

The German Real-Time Mobility Context Platform for AI: traffic, trains, charging, parking, weather.

제작자: mavrovde초기오늘 업데이트

클라우드에서 실행✓ viafrei.de

Viajante

Flight and hotel search for the terminal, Python, and AI assistants.

제작자: felipebasurto초기↓ 1.5천/주오늘 업데이트

내 컴퓨터에서 실행

Canli Validation

Deflated Sharpe and PBO checks. A verdict is not admission to anything and is not a forecast.

제작자: arhancanli성장 중↓ 1.1천/주오늘 업데이트

컴퓨터 또는 클라우드

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

Itamos MCP Tools

Built in Greece, for the world.

Free and open source under AGPL-3.0. Commercial licences for closed-source use.


The problem

Every LLM coding assistant faces the same wall: codebases are too large to fit in context. The standard response is to dump files — grep for something promising, cat it, hope for the best. At 50k files this breaks. At 240k files it never worked.

We built four tools that give an LLM structured perception of a codebase instead of raw file access, plus a sandboxed git to bring code in. The result is a model that navigates code the way a senior engineer does — starting from the architecture, narrowing to the module, reading only the segment it needs. One call takes it from the project straight to the lines it needs, and every save is checked before it lands.

Read the full paper: docs/PAPER.md: how each tool works, why it was designed that way, and how the hosted sandbox runs, with diagrams.


Tools

ToolWhat it does
read_fileThe single entry point. With no path it lists your projects; a project name shows its structure with coordinates (no code); a coordinate opens a file map or one segment in a single call. Edits one segment at a time, and every save is verified automatically.
master_architectThe engine behind read_file. Indexes the codebase into a graph (files, imports, databases, servers) and keeps it in step with every save. In the sandbox it is not called directly: read_file does it.
write_fileCreates new files only and never overwrites; edits go through read_file. Every new file belongs to a project the agent names: an existing one, or a new name to start one. Nothing is placed automatically.
gitThe original Itamos git tool, sandboxed for security: clone (remote URLs only, depth=1), status, commit. A clone is scanned into a project as soon as it finishes. Everything stays inside the session workspace; push is not available.
web_skeletonLLM-first web perception. 97% token reduction vs raw HTML. Actions: search, skeleton, read, click.

At least 97% fewer tokens than the usual shell workflow (grep, cat, run_cmd), measured against the best case where the model fixes the bug in one attempt. Real sessions save more, because the failed attempts common with raw shell access aren't counted.


How it works

Session model

Every client gets an isolated workspace. No shared state, no cross-session leakage. Workspaces are wiped after 10 minutes of inactivity.

Navigation: project → file → segment
read_file()                                            → your projects

read_file(path="itsdangerous") → the structure: folders and files with coordinates, no code read_file(path="itsdangerous", segment="d.a.f") → the map of signer.py, one line per segment read_file(path="itsdangerous", segment="d.a.f.31.17") → the code of verify_signature, nothing else

Coordinates: letters are location (folders and files share one sequence per folder), numbers are what is inside a file. d.a.f.31.17 reads as src → itsdangerous → signer.py → segment 31.17. A folder that has never been scanned is scanned on first read; a cloned repository is scanned as soon as the clone finishes.

Nothing is dumped: a structure or file map over ~3,000 tokens returns an overview and asks for a search term instead. search works on both: file and folder names in a project, segment names in a file. trace=true shows what a file connects to, or a project's data flow.

Segments

Files are parsed into named segments. A 5000-line file might have 40 segments; its map is one line per segment, with classes listing their methods. The model reads the map, picks the segment it needs, reads that segment. Total context used is roughly 120 lines instead of 5000.

Editing and verification

One edit at a time, and only on segments the model has read since the last change, so it can never change code it has not looked at. Saving verifies the file first:

LevelChecksOn failure
L1Syntax: tree-sitter plus the language's own checker (py_compile, node --check, php -l, bash -n, gofmt, C/C++ in project context, config parsers)Not saved; the error names the line
L2Config files through their service's checker (nginx -t, sshd -t, visudo, systemd-analyze). Linters run tooConfig failure: not saved. Linter findings are only reported
L3Connections: every local import resolves to a project file (Python and JavaScript/TypeScript: any other import must be an installed package, for Python in the project's venv when it has one); SQL is checked against the live database schemaSaved, with what is incomplete and how to see it, so a project's first files can import files that don't exist yet

L3 checks the content being saved, not an older index, and every save re-indexes the file in every supported language, so the map never lags behind the disk.

web_skeleton token reduction

Raw HTML of a modern web page runs 50,000 to 200,000 tokens. web_skeleton output is 500 to 3,000 tokens. The model reads the skeleton, picks the section id it needs, reads that section only.


Benchmarks

Verified in live use with Claude Opus 5.5 and Claude Sonnet. Any MCP-capable model can use the tools.

Don't take our word for it. Test the tools free in the hosted sandbox with your own model and your own repository, then post your results in Discussions → Benchmarks: model, task, tokens, time.

Found a bug? Open an issue with the steps to reproduce it. Every report makes the tools better.


Connecting

The sandbox server speaks standard MCP over HTTP POST with SSE support.

Compatible with any MCP client. Used in practice through Claude.ai and through direct API integration (our benchmark harness).

Try it in Claude (free live alpha): copy https://mcp.itamos-technologia.com/mcp, open Claude's connector settings, click Add custom connector, paste the address and click Add. A page opens with one button, Create my sandbox: no account, no email. Switch it on in a chat (+ → Connectors) and ask, for example, *"Go to bbc.com/news and tell me the top stories."* In other MCP clients, add the same address as a remote MCP server. Sandboxes are deleted after 10 minutes of inactivity, so don't use them for sensitive data.


Self-hosting

Requirements
  • Linux with ZFS (required). Every sandbox is its own ZFS dataset with a hard size limit (quota) and compression, so no user can fill the disk for everyone else. The server checks this at startup and refuses to start without it.
  • Node.js 20 or newer, plus build tools for the native modules (Debian/Ubuntu: apt install build-essential python3).
  • git for the git tool, and Chrome or Chromium for web_skeleton.
Install
git clone https://github.com/itamos-technologia/itamos-mcp-tools.git

cd itamos-mcp-tools npm install

One npm install sets up everything, including the tools folder.

On Ubuntu 26.04 you can install the package from Releases instead: sudo apt install ./itamos-mcp-tools_1.1.0_all.deb. It sets up a service user, a systemd service, settings in /etc/itamos-mcp-tools/env and the command itamos-mcp-create-slots, then tells you the next two steps.

Extra language parsers

Besides the standard tree-sitter grammars (installed by npm install), read_file and the segmenter use extra parsers from the grammars/ folder:

FilesParserFalls back to
.cu .cuh .hiptree-sitter-cuda-plusstock tree-sitter-cuda, then C++
.metaltree-sitter-metal-plustree-sitter-metal, then C++
.cpp .cc .hpp, C++ .htree-sitter-cpp-plusstock tree-sitter-cpp
.m .mm, .h with @interfacetree-sitter-objcC / C++

The "plus" parsers are the stock grammar plus extra C++ rules, checked to give the identical tree wherever the stock grammar already parses. A parser that is missing or fails to load is skipped, never fatal.

  • Linux x64: nothing to do. The parsers ship prebuilt in grammars/tree-sitter-*/prebuilds/linux-x64/ (Node-API, any Node 18+, glibc 2.14+), and npm install sets up the rest.
  • Other platforms (macOS, Windows, ARM): compile each parser once. This needs Python and a C/C++ compiler:
  cd grammars/tree-sitter-cuda-plus && npx node-gyp rebuild   # same for tree-sitter-cpp-plus, -metal-plus, -metal
  • Drop-in: every grammars/tree-sitter-* folder is a self-contained package. Copy one in and the sandbox finds it by name, with no install or symlink. To keep the grammars somewhere else, set SANDBOX_GRAMMARS_DIR.
  • Regenerating (only after changing the rules in grammars/plus/): grammars/plus/build_plus.sh generates with tree-sitter-cli 0.25.10 (ABI 15), compiles, and publishes into the matching tree-sitter-* folder. Its header shows the arguments.
Create the sandbox slots
sudo scripts/create-slots.sh tank/sandboxes 500 2G $USER

This creates slot_001 to slot_500 under the ZFS dataset tank/sandboxes (use your own pool name), each with a 2 GB quota and lz4 compression, owned by the user the server runs as. It is safe to run again.

Start
SANDBOX_ROOT=/tank/sandboxes SANDBOX_TOTAL_SLOTS=500 npm start

From the same machine, add http://localhost:4200/mcp as a connector in your MCP client. Local connections are identified by IP address and need no sign-in.

Going public

Firewall port 4200 and put an HTTPS reverse proxy (for example nginx) in front of it that sets X-Forwarded-For and X-Forwarded-Proto. Requests that arrive through the proxy use the anonymous one-click sign-in, so users on shared addresses (such as claude.ai) each get their own sandbox. Direct connections to port 4200 skip the sign-in, which is why the port must not be reachable from outside.

Text models (optional)

read_file and web_skeleton give untitled paragraphs and page sections a short title (5 to 10 words) from a small summarizer model, so the agent can tell parts apart without reading them. Without a summarizer everything still works; those parts are then named by their first line.

Any OpenAI-compatible chat endpoint works, set with ITAMOS_SUMMARIZER_URL (default http://127.0.0.1:8090): a single llama-server, Ollama, or the included router in front of several GPUs. The whole paragraph is always sent, never cut.

The hosted sandbox runs Gemma 4 E4B (Q4_0) as summarizer and EmbeddingGemma 300M as embedder on three GPUs (one 16 GB MI50 and two 8 GB V340 dies), each summarizer started like this:

llama-server -m gemma-4-E4B-it-Q4_0.gguf -ngl 99 --port 8190 \

-np 64 -c 524288 --kv-unified -fa on --cache-type-k q4_0 --cache-type-v q4_0 -rea off

  • --kv-unified: one shared KV pool, so each request uses only the tokens it needs.
  • --cache-type-k q4_0 --cache-type-v q4_0 (needs -fa on): a 4-bit KV cache, about 4.5 KB per token for this model.
  • -c is the pool in tokens: 524,288 on the MI50, 262,144 on each V340 die (with 32 slots).

The router (router/llm-router.js, service itamos-llm-router) listens on 8090 (summarizer) and 8091 (embedder). Before sending a request it counts its tokens with the backend's own tokenizer, sends it to a GPU whose pool has room (preferring faster GPUs by weight), and makes it wait in line when none has. A GPU that fails is skipped for 15 seconds and the request is retried on another. Configure it with ROUTES (in the package: /etc/itamos-mcp-tools/router.env); GET /router/status shows each GPU's pool, reserved

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기