mcp server

에이전트가 사이트를 다 썼습니다. 배포까지 맡기세요.

harvis.dev는 원격 MCP 서버입니다. 한 번만 연결하면 AI 클라이언트에 deploy_site 도구가 생겨서, 파일 한 폴더를 그대로 올리고 접속 가능한 주소를 돌려줍니다 — 계정도, API 키도, 설치할 것도 없습니다.

mcp란

AI 클라이언트와 서비스 사이의 표준 플러그

Model Context Protocol은 어시스턴트에게 실행할 수 있는 동작 목록을 건네주기 위한 열린 표준입니다. 에이전트는 이미 파일을 갖고 있고 무엇을 원하는지도 압니다. 없는 것은 대화 밖에서 움직일 방법뿐입니다. MCP 서버가 바로 그것을 줍니다 — 이름이 붙은 도구 목록이고, 각 도구는 모델이 언제 손을 뻗을지 알 만큼 설명돼 있습니다. harvis.dev가 공개하는 도구는 정확히 하나, 웹사이트를 게시하는 도구입니다.

  • 서버는 한 번만 연결

    클라이언트 설정 파일에 URL 한 줄, 또는 터미널에서 명령 하나. 그다음부터는 모든 대화에서 계속 연결돼 있습니다.

  • 모델에게 보이는 건 API가 아니라 도구

    기억할 엔드포인트도, 조립할 curl도, 붙여넣을 키도 없습니다. deploy_site가 무엇을 하는지 읽고, 게시가 필요한 순간에 호출합니다.

  • 대화를 벗어날 일이 없습니다

    랜딩 페이지를 요청하면 같은 답변 안에서 접속 주소가 돌아옵니다. 내보내기도, 업로드 단계도, 중간의 빌드 파이프라인도 없습니다.

연결

URL 하나, 어떤 MCP 클라이언트든

Streamable HTTP, 인증 없음. 원격 MCP를 지원하는 클라이언트는 이 주소를 그대로 씁니다. Claude Desktop처럼 stdio만 쓰는 클라이언트는 mcp-remote로 다리를 놓습니다. 쓰는 것을 고르고 블록을 복사하세요.

서버 url
https://harvis.dev/api/mcp
terminal
$ claude mcp add --transport http harvis https://harvis.dev/api/mcp
deploy_siteworks with any MCP client

Test it from a terminal

Not sure the address is reachable from where you are? The MCP Inspector asks the server what tools it has, over the same transport a client uses — nothing to install, and no account. If deploy_site comes back, the server is fine and anything still broken is in your client's config.

terminal
$ npx -y @modelcontextprotocol/inspector --cli https://harvis.dev/api/mcp --transport http --method tools/list
what comes back
{
  "tools": [
    {
      "name": "deploy_site",
      "description": "Publish a static website to harvis.dev and get a live public URL back instantly...",
      "inputSchema": {
        "type": "object",
        "properties": { "files": { ... }, "name": { ... }, "subdomain": { ... } },
        "required": ["files"]
      }
    }
  ]
}

Rather install from a directory? harvis is listed on Glama's MCP registry, pointing at the same server URL.

이 도구

도구는 하나, 하는 일도 하나

deploy_site는 사이트에 필요한 모든 파일을 받아 게시합니다. 경로는 사이트 루트 기준이고 슬래시를 씁니다. index.html을 꼭 포함하세요. 텍스트는 그대로, 이미지 같은 바이너리는 base64로 보냅니다.

필드타입설명
filesarray · 필수사이트의 모든 파일: 경로, 내용, 그리고 text 또는 base64 인코딩. 최대 500개 파일, 합계 50 MB.
namestring대시보드에 보이는 읽기 좋은 사이트 이름. 웹 주소는 어느 쪽이든 생성됩니다.
deployTokenstring사이트의 비공개 토큰으로, 그 사이트를 만든 배포가 돌려줍니다. 이 토큰을 넘기면 새 사이트를 만들지 않고 해당 사이트를 그 자리에서 갱신합니다.
subdomainstring갱신할 사이트의 주소. 선택 사항이며 deployToken과 함께일 때만 받습니다 — 혼자서는 아무것도 증명하지 못하므로 갱신을 승인할 수 없습니다.
돌아오는 것

공개 링크 하나, 비공개 링크 하나

도구는 모델이 읽어 주는 텍스트를 돌려줍니다. 접속 URL은 공개이고 바로 공유할 수 있습니다. 소유권 링크는 비공개입니다. 열어서 무료로 로그인하면 사이트가 계정에 붙고, 거기서 수정하거나 삭제할 수 있습니다. 그전까지 사이트는 익명이고, 소유되지 않은 사이트는 마지막 배포 24시간 뒤에 회수됩니다 — 그러니 링크는 그날 안에 여세요. 잃어버리면 되찾을 수 없습니다.

Site deployed successfully.
Live site: https://happy-panda-482.harvis.page
Claim link (private): https://harvis.dev/claim/xxxxxxxx-...
Subdomain: happy-panda-482
Deploy token (private): xxxxxxxx-xxxx-...
Files hosted: 7
업데이트

같은 사이트를 바꾸려면 다시 배포하세요

배포할 때마다 비공개 deployToken도 함께 돌아옵니다. 다음 호출에 그 토큰을 넘기면 같은 사이트가 주소를 유지한 채 그 자리에서 교체됩니다 — 소유권을 가져오기 전에도, 후에도 됩니다. 토큰을 빼면 새 주소에 새 사이트가 생기는데, 덮어쓰기보다 비교하고 싶은 두 번째 초안에는 그쪽이 맞습니다.

faq

질문

설정을 붙여넣기 전에 사람들이 묻는 것들.

계정이 필요한가요?

아니요. MCP 서버는 자격 증명을 전혀 받지 않고, 여기를 통한 배포는 익명입니다 — 그래서 소유권 링크가 돌아옵니다. 가입은 무료이며, 사이트를 24시간 넘게 두거나 나중에 관리하고 싶을 때만 필요합니다.

제 에이전트가 이걸로 다른 일도 할 수 있나요?

아니요. deploy_site는 서버가 여는 유일한 도구이고, 건네받은 파일을 게시하는 일 외에는 아무것도 하지 않습니다. 계정을 읽지도, 누군가의 사이트를 나열하지도, 무언가를 삭제하지도 못합니다. harvis.dev의 나머지는 모두 HTTP API의 계정 키 뒤에 있고, 이 서버는 그쪽을 건드리지 않습니다.

제 클라이언트가 원격 MCP 서버를 지원하지 않습니다.

그렇다면 stdio로 말하는 것이고, mcp-remote가 둘 사이를 이어 줍니다 — 위의 Claude Desktop과 Zed 블록이 정확히 그것입니다. 컴퓨터에 Node.js만 있으면 되고, 첫 실행 때 npx가 브리지를 받아 옵니다.

무엇을 호스팅할 수 있나요?

정적 파일입니다: HTML, CSS, JavaScript, 이미지, 폰트 등 브라우저가 가져올 수 있는 모든 것. 서버 쪽 코드는 실행되지 않습니다. 폼은 예외입니다 — 폼에 harvis-form 속성을 붙이면 제출 내용이 백엔드 없이 대시보드로 들어옵니다.

MCP 클라이언트 없이도 쓸 수 있나요?

네. 명령을 실행할 수 있는 에이전트는 npx harvis로 게시하고, HTTP 요청만 가능한 에이전트는 키 없이 /api/upload로 파일을 POST하면 됩니다. 두 방법 모두 /llms.txt에 적혀 있습니다 — 이 일에 쓸 도구가 없는 어시스턴트에게 건네줄 페이지입니다.

에이전트가 없나요?

같은 배포가 터미널에서도, 브라우저에서도, 스크립트에서도 일어납니다 — MCP 서버는 들어오는 문 하나일 뿐, 유일한 문은 아닙니다.

HTTP API 보기