Euthynos
Official에이전트가 파일을 읽으면 그 파일이 의존하는 것은 볼 수 있습니다. 하지만 그 파일에 의존하는 것은 볼 수 없습니다. 내부에서 들어오는 엣지는 보이지 않으므로, 에이전트는 더 많은 파일을 읽어 보상하며, 이는 컨텍스트를 소모하고 여전히 호출자를 놓칩니다. Euthynos는 AST, 임포트 그래프, git 히스토리에서 이러한 질문에 답합니다. LLM 호출 제로, 쿼리 경로에 네트워크 없음.
증거를 제공합니다. 변경이 안전하다고 인증하지는 않습니다.
설치
전역 설치. -g가 중요합니다. 이 플래그가 euthynos 명령을 PATH에 추가하여 MCP 클라이언트가 서버를 시작할 수 있게 합니다.
npm install -g euthynos연결 전에 설치가 되었는지 확인하세요:
euthynos --help그런 다음 에이전트에 등록하세요:
claude mcp add euthynos -- euthynos mcp또는 MCP 클라이언트 설정에서:
{ "mcpServers": { "euthynos": { "command": "euthynos", "args": ["mcp"] } } }Node.js 18+ 필요. Windows, macOS, Linux에서 작동합니다.
거의 항상 로컬 설치로 인한 문제입니다. npm install euthynos를 -g 없이 실행하면 바이너리가 ./node_modules/.bin/에 설치되어 PATH에 없으므로 MCP 클라이언트가 실행할 것이 없습니다. 다음으로 확인하세요:
npm ls -g euthynos --depth=0(empty)가 출력되면 -g로 다시 설치하세요. 실수로 로컬 복사본을 정리하려면 명령을 실행한 디렉토리에서 생성된 node_modules 폴더와 package.json을 삭제하세요.
전역 설치가 되었는데도 여전히 찾을 수 없다면, npm 전역 bin 디렉토리가 PATH에 없는 것입니다. npm config get prefix로 위치를 확인하세요. 또는 클라이언트가 바이너리를 직접 가리키도록 하세요:
{ "mcpServers": { "euthynos": { "command": "C:\\full\\path\\to\\euthynos.cmd", "args": ["mcp"] } } }Related MCP server: codemap
답변하는 질문별 23개 도구
그룹 | 도구 | 제공 내용 |
이것에 의존하는 것은? |
| 깊이와 신뢰도를 포함한 전이적 호출자, 모듈 수준 의존성 엣지, 두 함수 간 최단 호출 경로. |
이 변경이 도달하는 것은? |
| 편집 전 폭발 반경; 편집 후 이동한 심볼, diff가 넘은 모듈 경계, diff가 다루지 않은 것. |
정확히 이만큼 읽기 |
| 전체 파일 대신 정확한 소스 스팬. |
낯선 저장소에서 방향 잡기 |
| 모듈 맵, 구조적 메트릭, 약한 경계 위치. |
다시 작성하기 전에 |
| 세 번째 복사본을 추가하기 전 근접 중복 탐지, 경로 레이블이 붙은 테스트 발견. |
모든 답변은 자신의 범위를 명시합니다. 부정적 답변은 아무것도 존재하지 않는다는 암시 대신 검토되지 않은 것을 말합니다.
측정되었으며, 주장되지 않음
M2는 사전 등록된 벤치마크입니다. 작업, 유효성 규칙, 답변 키는 어떤 세션이 실행되기 전 커밋으로 고정되었고, 회수율은 최종 답변만으로 블라인드 수동 채점되었으며, 유효하지 않은 세션은 유효한 세션과 함께 공개됩니다. 동일한 모델, 동일한 저장소, 동일한 프롬프트 — 하나는 Euthynos를 장착하고, 하나는 없이.
전체 측정에 도달한 세 가지 작업에서:
작업 | 팔 | 새 토큰 | 고정 키 대비 회수율 | 거짓 양성 |
이것을 호출하는 것은 | 기준선 | 70,878 | 12 / 12 | 1 |
Euthynos | 49,476 | 12 / 12 | 0 | |
이 로직이 중복되었는가 | 기준선 | 33,429 | 15 / 15 | 0 |
Euthynos | 29,120 | 15 / 15 | 0 | |
이 변경이 도달하는 것은 | 기준선 | 56,481 | 15 / 15 | 0 |
Euthynos | 39,242 | 15 / 15 | 0 |
두 팔 모두에서 회수율은 동일하고 완벽했습니다 — 각각 42개 중 42개 — 반면 Euthynos 팔은 13–31% 적은 새 토큰을 사용했습니다. 에이전트는 더 적게 읽고 동일한 답변에 도달했습니다. 그럴듯한 잘못된 호출자를 유도하도록 설계된 사전 등록된 함정은 두 팔 모두에서 발동하지 않았습니다.
이것이 말하지 않는 것. 46회 시도된 세션 중 21회가 유효했으며, 외부 속도 제한 장벽이 그중 14회를 차지했습니다. 가이드 편집 및 방향 잡기 작업은 측정되지 않았으며 이에 대한 숫자는 암시되지 않습니다. 하나의 하네스, 하나의 저장소. 이는 절약된 작업이며, 답변 품질이 개선된 것이 아닙니다. 그리고 우리는 더 큰 숫자보다 이 문장을 공개하는 것을 선호합니다.
지연 시간 수치는 공개되지 않습니다. 내부적으로 유효한 두 측정값이 일치하지 않았고, 이를 해결할 통제된 실험을 완료할 수 없었으므로, 둘 다 공개하지 않고 하네스를 제공합니다. — docs/PROVENANCE.md에 이유가 있습니다.
로컬 우선
쿼리 경로에서 아무것도 업로드되지 않습니다. MCP 서버는 네트워크 호출과 LLM 호출을 전혀 하지 않습니다. 커밋되지 않은 편집을 포함하여 작업 트리를 읽습니다.
읽기 전용. 소스를 수정하지 않습니다.
경로 샌드박스. 서버는 시작 시 제공 가능한 루트를 고정합니다. 그 외부의 경로는 거부됩니다. 심볼릭 링크는 따라가지 않습니다.
디스크에 하나의 디렉토리: 저장소 루트의
.euthynos/로, 콘텐츠 주소 인덱스와 로컬 메타데이터 전용 텔레메트리 로그를 보관합니다. 자체.gitignore와 함께 생성되며, 삭제하면 재스캔만 필요합니다.EUTHYNOS_NO_INDEX=1및EUTHYNOS_NO_TELEMETRY=1로 옵트아웃 가능합니다.하나의 예외, 옵트인 및 CLI 전용:
euthynos scan --ai는 후보 중복 스니펫을 Anthropic API에 보내 결과를 확인합니다.ANTHROPIC_API_KEY가 필요하며, 기본적으로 꺼져 있고, MCP 서버의 일부가 아닙니다.
규모 — 주장할 것과 주장하지 않을 것
Euthynos는 대략 10,000개 파일까지 검증되었습니다. 약 1,500개 미만에서는 편안합니다. 10,000개 이상에서는 검증되지 않았으며 작동한다고 가정해서는 안 됩니다.
~10,000개 파일은 검증된 범위의 상한선이지 보장이 아닙니다.
상한에서의 제약 조건은 지연 시간이 아니라 메모리입니다. 구문 분석된 코퍼스는 메모리에 유지됩니다. 10,000개 파일 저장소는 편집 루프 동안 프로세스 RSS가 약 0.6GB에서 ~1.1GB로 증가합니다. 선형 외삽하면 — 측정이 아닌 추정 — 기본 Node 힙은 약 25,000–35,000개 파일 어딘가에서 소진될 가능성이 높습니다. 따라서 코드의 60,000개 파일 탐지 상한은 도달 가능한 한계가 아닙니다.
정확한 지연 시간 수치는 V1에서 공개되지 않습니다. 더 큰 크기에 대해 내부적으로 일관된 두 측정값이 일치하지 않으며, 어느 것을 신뢰할지 결정할 통제된 실험을 완료할 수 없었습니다. 신뢰할 수 없는 숫자를 공개하는 대신, 아무것도 공개하지 않고 하네스를 제공하여 자신의 머신에서 측정할 수 있도록 합니다:
node scripts/measurement/gen-scale-repos.mjs
node --expose-gc scripts/measurement/measure-latency.mjs --reps=20이유는 docs/PROVENANCE.md에 있습니다. 범위와 성능에 영향을 미치는 요소는 docs/SUPPORTED-SCALE.md에 있습니다.
설치 전에 알아야 할 다른 한계:
디스패치는 동기식입니다. 한 번에 하나의 도구 호출, 그리고 첫 번째 콜드 스캔은 전체 기간 동안 큐를 차단합니다 — 몇 초에서 저장소 크기에 따라 증가합니다. 호출별 타임아웃은 없습니다. MCP 클라이언트는 첫 번째 호출을 견딜 수 있는 타임아웃을 제공해야 합니다.
인덱스 읽기는 무료가 아니며 규모에 따라 변하지 않습니다.
find_symbol,read_function,find_references는 실제 시간이 소요되며 저장소 크기에 따라 증가합니다. 이 파일의 이전 버전에서는 모든 규모에서 1밀리초 미만으로 유지된다고 주장했지만, 그 수치는 인수 거부 오류 경로였지 읽기가 아니었습니다. docs/BENCHMARK-INTEGRITY-AUDIT.md 참조.편집 루프는 웜 호출보다 몇 배 더 비쌉니다. 변경된 파일을 다시 구문 분석해야 하기 때문입니다. 어느 것을 측정했는지 명시하지 않은 수치는 많은 정보를 제공하지 않습니다.
콜드 빌드 시간은 머신 및 스토리지 환경에 따라 다릅니다. 인덱스 구축은 I/O 바운드입니다.
지금까지의 모든 측정은 TypeScript에서 이루어졌습니다. 다른 언어는 다를 수 있습니다.
언어
3가지 전략을 통해 16개 언어 구문 분석. TypeScript 컴파일러 API를 통한 TypeScript, JavaScript, Vue SFC; tree-sitter WASM을 통한 Python, Go, Java, Ruby, Rust, PHP, C, C++, C#, Dart, Kotlin, Swift; 결정적 라인 파서를 통한 COBOL.
모든 문법은 순수 WASM으로 실행됩니다 — 네이티브 바인딩 없음, 플랫폼 일치 프리빌드 없음, 컴파일러 툴체인 없음. 호출 그래프 해상도 품질은 TypeScript에서 가장 강력합니다.
Euthynos가 주장하지 않는 것
정적 분석기입니다. 임포트, 선언, 호출 엣지를 봅니다. 리플렉션, 동적 디스패치, 런타임 코드 생성, 문자열로 빌드된 심볼 이름, 동적 임포트, 프레임워크 와이어링을 보지 않습니다 — 그리고 절대 그렇지 않은 척하지 않습니다.
다음 문구는 출력에서 금지되며, 금지는 테스트로 강제됩니다:
is safe·safe to …·no other consumers·all references·unused·fully tested·no impact· 안전성의 수학적 증명에 대한 모든 주장
callers_of가 아무것도 반환하지 않는다는 것은 정적 그래프가 호출자를 찾지 못했다는 뜻이지, 아무것도 이것을 호출하지 않는다는 뜻이 아닙니다. 모듈 간 이름이 모호하면 추측 대신 간선이 없음을 생성하므로, 답은 하한이며 해결되지 않은 호출의 개수가 함께 출력됩니다.
주장을 직접 확인하세요
여기서는 어떤 숫자도 맹목적으로 믿으라고 요구하지 않습니다:
내용 | 위치 |
실행 전에 사전 등록된 토큰/재현율 벤치마크 | |
수정 없이 게시된 결과 | |
자체 게시된 수치가 잘못된 부분과 그 이유 | |
자체 머신에서 지연 시간 측정 |
|
여기서 검증 가능한 것과 불가능한 것 — 지연 시간 수치가 연기된 이유 포함 |
마지막 항목은 공개의 우연이 아닙니다. 두 개의 벤치마크 하네스가 인수 검증 오류를 마치 측정값인 것처럼 시간을 측정하고 있었고, 한 게시된 주장은 세 자릿수만큼 틀렸습니다. 감사 문서는 무엇이 고장 났는지, 무엇이 무효화되었는지, 무엇이 재측정되었는지, 그리고 무엇이 여전히 뒷받침되지 않는지 기록합니다.
게시되지 않은 것: M2 정답 키와 전체 세션 원장. 이에 대한 모든 진술은 이 저장소에서 검증되지 않았으며, 그렇지 않다고 암시하기보다는 그렇게 말하는 것이 낫습니다.
Euthynos for Teams
◈ Euthynos for Teams
동일한 엔진이 풀 리퀘스트와 main 사이에 위치합니다.
아직 일반적으로 사용할 수 없습니다. 오늘 로그인할 수 있는 공개 인스턴스는 없습니다. 이 섹션은 존재하고 실행되는 소프트웨어를 설명합니다 — 지금 당장 주목할 가치가 있는지 결정할 수 있도록 — 지금 당장 구매할 수 있는 제품이 아닙니다. euthynos.dev에서 얼리 액세스 목록에 가입하세요 →
GitHub App을 통해 저장소를 연결하세요. 모든 푸시와 풀 리퀘스트는 이 저장소의 엔진에 의해 서버 측에서 스캔되며, 결과는 실제로 결정이 내려지는 곳에 도착합니다.
◈ 규칙으로 작성된 병합 정책
다섯 가지 규칙 유형, 각각 warn 또는 block:
규칙 | 임계값 |
| 0–100 |
| 0–100 |
| 0–100 |
| 1–20, integer |
| exact |
경계는 서버 측에서 적용됩니다. 양식은 편의를 위한 것입니다; 검증기가 아닙니다.
◈ 스캔별 의존성 그래프
모든 스캔은 대화형 그래프 아티팩트를 생성합니다 — 모듈, 가져오기 간선, 그리고 깔끔하게 절단할 수 없는 사이클.
네 가지 축과 중복성에 대해 점수 매김:
depth · seams · locality · leverage
각각 대역으로 보고됩니다 — Strong, Stable, Drifting, At Risk — 대역이 의미 있는 부분이기 때문입니다.
◈ 모든 PR에 대한 체크 실행
판결은 이를 생성한 규칙에 대해 기록되므로, "왜 차단되었는가"에 대한 답이 분위기가 아닙니다.
경고 상태는 스캔 간에 유지됩니다: new · ongoing · resolved · archived-until-worse · regressed.
◈ 감사자가 읽을 수 있는 증거
날짜 범위를 내보내면 당시의 규칙 세트, 해당 기간의 모든 병합 판결, 각 재정의와 그 행위자 및 서면 사유, 모듈별 소유권 범위를 얻을 수 있습니다.
읽는 데 계정이 필요하지 않습니다.
◈ git 기록에서의 지식 위험. 모듈별 소유권 비율과 버스 팩터 — 따라서 *"가장 취약한 모듈을 정확히 한 사람만 이해한다"*는 것은 그 사람이 떠날 때 알게 되는 것이 아니라 대시보드가 알려주는 것입니다.
여기서도 LLM 호출이 없습니다. 동일한 diff는 매번 동일한 판결을 생성합니다. 샘플링되는 것이 없으므로 환각할 것도 없고 프롬프트 인젝션할 것도 없습니다. 동일한 브랜치를 두 번 푸시하면 동일한 리뷰를 두 번 받습니다.
이 저장소의 CLI는 무료, 로컬 및 Apache-2.0으로 유지됩니다 — 이는 약속이지 평가판이 아닙니다. 플랫폼에 전화하지 않으며 플랫폼은 절대 사용자 머신에 접촉하지 않습니다.
열릴 때 원하시나요?
→ euthynos.dev에서 얼리 액세스 목록에 가입하세요
로컬 CLI는 영원히 무료 · 신용카드 불필요 · 이 저장소의 모든 것을 사용하는 데 계정 불필요
CLI
MCP 서버가 주요 인터페이스이지만, CLI는 독립적으로 작동합니다:
euthynos scan [path] architecture scan — six metrics, module table
euthynos graph [path] build the call graph; --impact/--callers/--path
euthynos dashboard [path] self-contained interactive HTML, zero runtime deps
euthynos index [path] inspect or rebuild the local index
euthynos mcp start the MCP stdio servereuthynos --help는 전체 플래그 세트와 빌드 스탬프를 출력합니다.
Documentation
docs/ARCHITECTURE.md · docs/SUPPORTED-SCALE.md · docs/SECURITY.md · docs/CONTRIBUTING.md · docs/TRADEMARK.md · docs/PROVENANCE.md · CHANGELOG.md
Security
취약점은 공개 이슈가 아닌 GitHub Security Advisories를 통해 비공개로 보고해 주세요. 범위 및 기대 사항: docs/SECURITY.md.
라이선스
Apache License 2.0 — LICENSE 및 NOTICE를 참조하세요.
Copyright © 2026 Tonil Kumar.
라이선스는 코드를 대상으로 합니다. 이름은 대상이 아닙니다: "Euthynos"는 Tonil Kumar의 미등록 상표로 주장됩니다 — 등록 신청이 이루어지거나 승인되지 않았습니다. docs/TRADEMARK.md를 참조하세요.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityAmaintenanceProvides local codebase intelligence as an MCP server, enabling AI agents to query dependencies, assess change impact, and produce tamper-evident change evidence packets.508Apache 2.0
- Alicense-qualityAmaintenanceMCP server for local-first code intelligence, providing structural code graph, semantic search, and impact analysis to AI agents.1MIT
- Alicense-qualityAmaintenanceLocal-first MCP server that scans a repository once and answers architecture questions from an evidence-backed graph, enabling dependency analysis, impact analysis, and codebase exploration without re-reading the source tree.MIT
- Alicense-qualityAmaintenanceLocal repository intelligence MCP server that builds a reusable graph of code structure for AI coding agents, providing 34 network-free tools for understanding, searching, and analyzing repositories without data leaving the machine.59MIT
Related MCP Connectors
Hosted MCP server for structured code review passes on human- and AI-written code. Free tier.
An MCP server that gives your AI access to the source code and docs of all public github repos
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/euthynos-org/euthynos'
If you have feedback or need assistance with the MCP directory API, please join our Discord server