Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Read-only Exeris context for AI agents: ADRs, SDK contract, build output, kernel diagnostics.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
EXERIS_PROJECT_ROOT, EXERIS_DOCS_ROOT필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"ai-bridge": {
"command": "npx",
"args": [
"-y",
"@exeris/ai-bridge"
],
"env": {
"EXERIS_PROJECT_ROOT": "your-value",
"EXERIS_DOCS_ROOT": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add ai-bridge --env EXERIS_PROJECT_ROOT=your-value --env EXERIS_DOCS_ROOT=your-value -- npx -y @exeris/ai-bridge실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"ai-bridge": {
"command": "npx",
"args": [
"-y",
"@exeris/ai-bridge"
],
"env": {
"EXERIS_PROJECT_ROOT": "your-value",
"EXERIS_DOCS_ROOT": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"ai-bridge": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@exeris/ai-bridge"
],
"env": {
"EXERIS_PROJECT_ROOT": "your-value",
"EXERIS_DOCS_ROOT": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
EXERIS_PROJECT_ROOT envEXERIS_DOCS_ROOT env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 exeris-systems 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.8.0)은 16일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, 御府和田玉 在售作品查询
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Live in-stock Hetian jade from Yufu, Shanghai: prices, monthly price guide, book a viewing.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Model Context Protocol server that gives AI agents the context of an Exeris application: what
your build emitted, the SDK's authoring contract, the ADR registry, and a running kernel.
Every tool is a read. The bridge never writes to your project, never calls a model API, and runs as a separate process from the Java kernel. It is built for developers writing an application on Exeris, and works without a checkout of the ecosystem: the reference data it needs ships inside the package.
Run the server inside your project, so it finds your pom.xml.
Claude Code
claude mcp add exeris -- npx -y @exeris/ai-bridge
Claude Desktop: install exeris-ai-bridge- .mcpb from the GitHub Releases. Desktop does not start the server inside a project, so set Project root in the extension's settings to use the build-* and caps-* tools.
Any other MCP client (Cursor, VS Code, Copilot): the command is npx -y @exeris/ai-bridge over stdio.
{
"mcpServers": { "exeris": { "command": "npx", "args": ["-y", "@exeris/ai-bridge"] } } }
The server is also listed in the MCP Registry as io.github.exeris-systems/ai-bridge.
kernel-* only: JDK 25 or newer, and eu.exeris:exeris-kernel-diagnostics-cli in your local Maven repository, which a build of an Exeris application puts there.build-preview_generation only: for java, JDK 25 or newer and eu.exeris:exeris-codegen-cli, at the tooling version your project pins, in your local Maven repository; for ts, @exeris/codegen-ts in your project's own node_modules.~/.m2 and never downloads.Tool names are family-tool. All 34 are listed in every session; a family whose dependency is missing answers with a structured family_unavailable result naming the reason and the remedy.
| Family | Answers | Tools |
|---|---|---|
build-* | What your last build emitted, which files codegen owns, what a build diagnostic means, the build files for a new application, what the generator would write now, and whether your discovery briefs are ready; toolingSkew says whether your project pins a different tooling release than the bundled generator catalogue | build-list_domains, build-get_domain_metadata, build-explain_artefacts, build-get_detach_state, build-explain_diagnostic, build-get_starter, build-preview_generation, build-validate_brief |
caps-* | The capability composition your build validated | caps-list_capabilities, caps-describe_composition |
sdk-* | The SDK's annotations, deprecations, scoping rules and AST schema; whether your project pins a different SDK | sdk-list_annotations, sdk-describe_annotation, sdk-list_deprecations, sdk-get_scoping_rules, sdk-get_ast_schema |
docs-* | The Exeris ADRs, the high-level architecture, the whitepaper and the decision templates | docs-list_adrs, docs-get_adr, docs-search, docs-get_hla, docs-get_whitepaper, docs-get_template, docs-list_repos, docs-list_repo_docs, docs-get_repo_doc |
kernel-* | A running kernel's providers, bootstrap DAG, subsystems and JVM ergonomics | kernel-list_providers, kernel-get_bootstrap_dag, kernel-describe_subsystem, kernel-get_jvm_ergonomics |
lsp-* | @ExerisDomain types and actions from the Studio language server, and a preview of a source edit as a diff | lsp-list_domains, lsp-describe_domain, lsp-list_actions, lsp-preview_mutation |
bridge-* | The server itself: version, bundled data, and why a family is unavailable | bridge-version, bridge-health |
docs-list_repos, docs-list_repo_docs and docs-get_repo_doc need a checkout of the Exeris repositories; the other docs-* tools answer from a checkout when there is one, and otherwise from a registry snapshot bundled in the package. lsp-* needs a locally built exeris-platform-lsp, which publishes no runnable jar yet.
The registry tier of docs-* is also available as MCP resources, all text/markdown, listed in every session. A read goes through the same checkout-or-snapshot resolution and public-scope policy as the tools.
| URI | Content | ||
|---|---|---|---|
exeris://docs/adr-index | The ADR registry index | ||
exeris://docs/adr/{NNN} | One ADR by its three-digit number; a record from a repository that is not served publicly names its owning repository and GitHub URL | ||
exeris://docs/hla | The high-level architecture | ||
exeris://docs/whitepaper | The B2B technical whitepaper | ||
| `exeris://docs/template/{ADR\ | RFC\ | RESEARCH}` | A decision-doc template |
exeris://sdk/brief-schema | The JSON Schema of a discovery brief (ADR-106), application/schema+json; static, served from the bundled data with no project or ecosystem root, and listed only when the bundle carries it |
exeris://docs/adr-index can be subscribed to (resources/subscribe): from an exeris-docs checkout the server sends notifications/resources/updated once per burst of changes to the file, including a replacement by rename; from the bundled snapshot the content cannot change, so the subscription is accepted and never fires. Any other URI, exeris://sdk/brief-schema included, is rejected as invalid params.
A URI outside this set, or an ADR number that is not three digits, is rejected as invalid params. An ADR that is not in the registry or has no servable content answers with the MCP resource-not-found error (-32002); docs being unavailable answers with an internal error whose data is the family_unavailable reason and remedy.
Nine stateless prompt templates, listed in every session on every transport. A prompt returns messages built from its template and the arguments you give it: the bridge keeps no state, runs no loop and calls no model or tool. Where a step needs a tool, the prompt tells the agent to call it. Context is embedded as resource messages (the exeris://docs/* resources) or as bundled SDK data; where it cannot be embedded, the prompt says which resource to read instead. Arguments are strings, at most 256 characters, except diff (65,536 characters), output (64,000) and area (64, lowercase letters, digits and hyphens).
| Prompt | Arguments | Pre-loads | Needs a local server |
|---|---|---|---|
review-three-tier-violations | diff? | HLA, ADR-006, ADR-024, the drift-patterns policy, the cap-tier Wall rule | no |
draft-adr | title? | ADR template, registry index | no |
route-this-task | task | the ecosystem's routing rules, from an ecosystem checkout only | no |
wall-audit | target? | ADR-006 | no |
author-domain | entity, area? | SDK scoping rules, AST schema | build-validate_brief, lsp-* and build-* steps |
discover-requirements | area, summary? | nothing; the contract is the exeris://sdk/brief-schema resource; ends in build-validate_brief | the validation step |
explain-my-build | none | nothing; calls build-explain_artefacts, build-get_detach_state | yes |
diagnose-build-failure | output | SDK deprecation list | the build-explain_diagnostic step |
migrate-sdk-version | targetVersion? | SDK deprecation list | no |
route-this-task without an ecosystem checkout answers that routing needs one and names a remedy. An unknown prompt, an unknown argument, a missing required argument or one over its bound is rejected as invalid params.
Nothing needs setting for an application. Every variable is optional, and none can stop the server from booting.
| Variable | Default | Purpose |
|---|---|---|
EXERIS_PROJECT_ROOT | nearest pom.xml above the working directory | The project build-*, caps-* and sdk-* report on |
EXERIS_MAVEN_REPO | in ~/.m2/settings.xml, then ~/.m2/repository | Where published jars are looked up |
EXERIS_KERNEL_VERSION | newest release in the local repository | The diagnostics CLI version to launch |
EXERIS_KERNEL_COMMAND / EXERIS_KERNEL_JAR | resolved from the local repository | Launch the kernel diagnostics CLI explicitly |
EXERIS_LSP_COMMAND / EXERIS_LSP_JAR | none | Launch exeris-platform-lsp |
EXERIS_LSP_WORKSPACE | the working directory | The workspace the language server indexes |
EXERIS_DOCS_ROOT | a sibling exeris-docs checkout if present, else the bundled snapshot | The exeris-docs checkout to read |
EXERIS_BRIDGE_MODE | app | contributor for work on Exeris itself: source checkouts win over published jars |
How each variable resolves, the launch ladder for the Java children, and the bundled reference data are described in the configuration reference.
Call bridge-health. It reports every family's state, with the reason and the remedy for each one that is unavailable, without starting any child process. bridge-version reports the build and the upstream releases its bundled data came from. The server also writes a one-line summary (mode=… docs=… lsp=… kernel=… build=… caps=… sdk=…) to stderr, which MCP clients show in their logs.
The package follows semver. Until 1.0, a minor release may change a tool's output shape; the release notes list every change a client may notice. At 1.0 the tool names and input schemas are frozen.
The next release targets exeris-kernel 0.12.0, exeris-sdk 0.13.2 and exeris-tooling 0.10.0, all on Maven Central.
Apache-2.0