Narajangteo Searcher — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Narajangteo Searcher (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
조달청 나라장터 IT 입찰공고를 검색하고, 마감된 공고의 개찰결과(전체 투찰자 명단) 까지 분석하는 도구입니다. 더블클릭으로 쓰는 독립 실행 앱과, Claude에 붙여 대화로 쓰는 MCP 서버 두 가지로 제공됩니다.
조달청 나라장터 입찰공고정보서비스(공공데이터포털 데이터번호 15129394, BidPublicInfoService)를 이용해 IT 소기업이 입찰공고를 빠르게 찾고, 참여 여부를 판단하고, 수주 가능성 높은 공공 IT 사업을 선별하도록 돕습니다. 단순 API 래퍼가 아니라 검색 → IT 필터링 → 적합도 점수 → 검토 메모까지 수행합니다.
받은 `narajangteo-searcher.exe` 를 더블클릭하면 끝입니다. 설치 불필요 · Node.js 불필요.
http://localhost:7777).앱을 실행(또는 위에서 받은 EXE 더블클릭)하면 브라우저가 열립니다. 그다음:
%가 없는 Decoding 키(원본) 면 그대로, %가 포함된 Encoding 키 면 체크박스를 선택하세요.전체 투찰자 명단(순위·사업자등록번호·업체명·투찰금액·투찰률·비고)이 펼쳐짐 + CSV 내려받기
💡 인증키는 한 번만 입력하면 이 PC의 %APPDATA%\g2b-it-bid\config.json 에만 저장됩니다. 개찰결과(전체 투찰자 명단) 조회는 인증키가 없어도 동작합니다. (개찰결과 데이터 출처 참고)npm install
npm run build:exe # 단일 EXE 빌드 → dist-exe/나라장터-IT입찰공고-검색기.exe (약 88MB, Node 내장)
# (배포 시 Releases 에는 narajangteo-searcher.exe 이름으로 업로드)EXE 없이 폴더에서 바로 실행하려면(Node 20.19+ 필요):
npm install && npm run build && npm run app검색·필터·점수·검토메모를 Claude(Desktop/Code)가 대화로 처리합니다.
⚠️ 읽기 전용입니다. 공고 탐색·분석·검토 메모 작성까지만 수행하며, 투찰 / 계약 체결 / 전자서명 / 로그인 대행 / 투찰 자동화는 구현하지 않습니다.
npm install
npm run build요구사항: Node.js 20.19 이상.
.env.example 을 복사해 .env 를 만들고 키 입력 (코드에 하드코딩 금지):NARAJANGTEO_SERVICE_KEY=여기에_발급받은_인증키_입력
# Decoding 키(원본, % 없음)면 false, Encoding 키(% 포함)면 true. 미지정 시 % 포함 여부로 자동 판별.
NARAJANGTEO_SERVICE_KEY_IS_ENCODED=false
# G2B_API_PROTOCOL=https💡 이중 인코딩 주의: 본 서버는serviceKey를 자동으로 1회만 인코딩합니다.%가 포함된 Encoding 키 를 넣었다면NARAJANGTEO_SERVICE_KEY_IS_ENCODED=true,%가 없는 Decoding 키(원본) 를 넣었다면false로 설정하세요.
인증키가 없으면 도구 실행 시 명확한 한국어 오류를 반환합니다(빌드/도구목록은 키 없이도 동작).
🧾 개찰결과의 전체 투찰자 명단은 나라장터 화면 데이터로 가져오며 인증키가 필요 없습니다. 공식 OpenAPI(낙찰정보서비스 15129397)는 공고당 개찰 1순위(낙찰예정자) 1개사만 제공하므로, get_bid_opening_result 와 앱의 "개찰결과 분석" 탭은 나라장터 통합검색 상세화면이 쓰는 내부 엔드포인트를 재현해 투찰자 전원(2·3순위 포함)을 로그인 없이 가져옵니다.>
⚠️ 이는 공식 OpenAPI가 아니라 나라장터 내부 호출 재현입니다(상용 입찰정보 서비스들과 동일 방식). 나라장터 개편 시 식별값이 바뀌면 깨질 수 있어(수정 용이) 쿠키·결과를 캐시하며 과도한 반복 호출은 피합니다. 폴백용 공식 OpenAPI(낙찰예정자)를 쓰려면 낙찰정보서비스 활용신청이 별도로 필요합니다(같은 인증키).
%APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"g2b-it-bid": {
"command": "node",
"args": ["C:/path/to/narajangteo-searcher/build/index.js"],
"env": {
"NARAJANGTEO_SERVICE_KEY": "사용자_인증키",
"NARAJANGTEO_SERVICE_KEY_IS_ENCODED": "true"
}
}
}
}~/Library/Application Support/Claude/claude_desktop_config.json (mac) 또는 해당 설정 파일에 위와 동일한 형식으로 등록하되 args 경로만 /path/to/narajangteo-searcher/build/index.js 로 바꿉니다.
claude mcp add g2b-it-bid -- node /path/to/narajangteo-searcher/build/index.js(환경변수는 셸 또는 .env 로 주입)
| 도구 | 설명 |
|---|---|
search_it_bids | IT 관련 입찰공고 검색 (기간/지역/예산/키워드 필터 + 추천순) |
get_bid_detail | 특정 공고 통합 상세조회 (기초금액·면허제한·참가지역·변경이력 포함) |
get_bid_opening_result | 개찰결과 조회 — 마감·개찰 완료된 공고의 투찰 업체 전원(순위·사업자등록번호·업체명·대표자명·투찰금액·투찰률·비고·투찰일시)을 나라장터에서 조회. 실패 시 공식 OpenAPI(낙찰예정자)로 자동 폴백 |
recommend_bids_for_small_it_company | IT 소기업 적합도 점수 추천 + 분류 |
create_bid_review_memo | 대표 의사결정용 9섹션 입찰 검토 메모 작성 |
find_deadline_urgent_bids | 마감 임박(기본 72h) IT 공고 탐색 |
watch_keywords | 키워드별 최근 공고 감시 + 중복 제거 |
call_raw_operation | 25개 오퍼레이션 원시 호출 (검증/확장) |
config.json)로만 주입하며 코드/저장소에 포함하지 않습니다(.env 는 .gitignore 대상).get_bid_detail / create_bid_review_memo 는 공고 1건당 보조 오퍼레이션까지 호출하므로(최대 4~5콜)트래픽 소모가 큽니다. 과도한 반복 호출은 피하세요.
npm run dev # tsx로 소스 직접 실행
npm test # 단위 테스트 (scoring, normalizer) — 인증키 불필요
npm run build # 빌드
npx @modelcontextprotocol/inspector node build/index.js # 키 없이 도구 목록 확인~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.