AJEMS MCP Connector
OfficialAJEMS MCP 커넥터
Claude와 ChatGPT가 누구도 AJEMS에 로그인하지 않고도 AJEMS 워크스페이스에 대한 질문에 답하고 — 선택적으로 앱, 폼, 레코드를 생성할 수 있게 해줍니다.
하나의 배포로 모든 테넌트를 지원합니다. 사용자는 조직 이름과 AJEMS 비밀 키로 로그인합니다.
파일
파일 | 역할 |
| 구성, 인증, HTTP 전송, 상태 확인, 종료 |
| AI가 호출할 수 있는 모든 도구 |
| AJEMS API와 통신하는 유일한 모듈 |
| Claude와 ChatGPT가 요구하는 OAuth 핸드셰이크 |
| 테넌트별 캐싱 및 업스트림 동시성 제한 |
| 작은 공유 헬퍼 |
| 11단계 종단 간 검사기 |
| 라이브 워크스페이스 없이 테스트하기 위한 샘플 데이터가 있는 가짜 AJEMS |
Related MCP server: Synapse
빠른 시작
npm install
cp .env.example .env # set PUBLIC_URL and AJEMS_HOST_TEMPLATE
npm start실제 워크스페이스로 검증:
node diagnose.js https://mcp.ajems.com <organisation> <secret-key>또는 AJEMS 없이 시도:
npm run mock # terminal 1
# set AJEMS_HOST_TEMPLATE=http://localhost:9090/{org}/json_builder
npm start # terminal 2
node diagnose.js http://localhost:8080 testco test-secret-keynginx, TLS, pm2 및 튜닝에 대해서는 DEPLOY.md를 참조하세요.
도구
기본적으로 읽기 전용입니다. 네 가지 쓰기 도구에 대해 ALLOW_WRITES=true를 설정하세요.
도구 | 용도 |
| 검색 — 읽기/쓰기 플래그가 있는 모든 앱과 폼 |
| 필드 키, 사람이 읽는 라벨, 유형, 드롭다운 옵션 |
| 필터, 날짜 범위, 필드 선택이 있는 레코드 |
| count / sum / avg / min / max, 선택적으로 그룹화 |
| 새 앱 |
| 새 폼; 필드 키 자동 생성 |
| 하나 또는 여러 레코드, 제한된 동시성으로 삽입 |
| 기존 레코드의 필드 변경 |
| 폼과 레코드 전반의 키워드 검색 (ChatGPT) |
| 검색 결과 하나의 전체 세부 정보 (ChatGPT) |
aggregate_responses는 서버에서 계산합니다. 이것이 없으면 "도시별 합계"는 수천 개의 행을 모델의 컨텍스트로 가져와 손으로 세어야 합니다 — 느리고, 비싸고, 일정 규모를 넘어서면 틀립니다.
search와 fetch가 존재하는 이유는 Developer Mode 밖에서 ChatGPT는 이 두 이름의 도구만 호출하고 나머지는 모두 무시하기 때문입니다.
질문이 답변되는 방식
Claude가 *"7월 항목이 도시별로 몇 개인가?"*라고 묻습니다:
list_apps_and_forms→ 폼을 찾습니다describe_form→date_1750943312417이 날짜 필드이고dropdown_1750943301432가 도시를 담고 있음을 알게 됩니다날짜 범위와
group_by로aggregate_responses→ 세 개의 숫자를 돌려받습니다평이한 영어로 답을 작성합니다
필드 키는 자동 생성되므로(date_1750943312417) 2단계는 선택 사항이 아닙니다. 도구 설명이 모델에게 이를 알려주고, 모델이 스스로 호출을 연결합니다.
테넌트 격리
테넌트는 세션에서 오며, 베어러 토큰에서 서버 측에서 확인됩니다
어떤 도구 스키마에도
tenant,org또는url매개변수가 없습니다 — 모델이 변경하도록 유도될 수 있는 것이 없습니다ajems.js는 아웃바운드 요청을 발행하는 유일한 모듈이며, 해당 테넌트의 기본 URL에만 요청합니다캐시 키는 테넌트 및 비밀 키의 해시로 네임스페이스가 지정되므로, 테넌트는 서로의 캐시 항목을 읽을 수 없고 회전된 키는 자동으로 만료됩니다
조직 이름은 서브도메인에 안전한 문자로 축소되므로,
evil.com/x같은 항목이 서버를 다른 곳으로 리디렉션할 수 없습니다모든 도구 호출은 테넌트와 사용자와 함께 JSON으로 기록됩니다
도구를 추가할 때 두 번째 항목을 다시 확인하세요.
테스트
목(mock)에 대해 46개의 검사가 통과합니다: 인증, 10개 도구 전체, 필터, 날짜 범위, created_at 폴백, 그룹화된 집계, 대량 삽입, 쓰기 후 캐시 무효화, 오류 메시지, 테넌트 격리, 20명의 동시 사용자, 속도 제한.
This server cannot be deployed
Maintenance
Related MCP Connectors
- mcpOAuthcom.formester
Give AI agents access to form submissions — read, search, update, and process file attachments.
- OpenOakOAuthorg.openoak
Secure AI access to OpenOak tasks, notes, and Kanban boards.
Read, write and run Odoo actions from any AI app, as each user, with approval rules per colleague.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Jurisly workspaces for tasks like drafting invoices, finding hearing dates, and editing documents through natural language.Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables LLM clients to securely read and write Frappe/ERPNext data under a real user's permissions, with audited calls and granular access control.1AGPL 3.0
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to connect to a Flow Master workspace and perform project, task, ticket, board, relationship, tag, and comment operations under the user's own account and permissions.3 npmISC
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to securely connect to a vybeflow tenant for multi-channel messaging operations such as reading inbox tickets, looking up contacts, checking campaign progress, and sending messages under scoped permissions.MIT