MCP Anthropic 서버( mcp-anthropic
)
Anthropic의 실험적 프롬프트 엔지니어링 API와 상호 작용할 수 있는 도구를 제공하는 MCP(모델 컨텍스트 프로토콜) 서버입니다.
특징
다음 도구를 제공합니다.
generate_prompt
: 작업 설명을 기반으로 프롬프트를 생성합니다.improve_prompt
: 피드백을 기반으로 기존 프롬프트를 개선합니다.templatize_prompt
: 구체적인 프롬프트 예를 재사용 가능한 템플릿으로 변환합니다.
설정
- 저장소를 복제합니다(해당되는 경우)
- 프로젝트 디렉토리로 이동합니다.지엑스피1
- 종속성 설치:
- API 키 구성:
- 프로젝트 루트(
./mcp-anthropic/.env
)에 .env
파일을 만듭니다. - Anthropic API 키를
.env
파일에 추가하세요.ANTHROPIC_KEY=your_anthropic_api_key_here
- 이 파일이 버전 제어에 커밋되지 않도록 하세요(이 파일은
.gitignore
로 덮여야 함). - LibreChat 통합에 대한 참고 사항: LibreChat 내에서 이 서버를 자식 프로세스로 설정하고 실행하는 방법에 대한 구체적인 지침(API 키 처리 포함)은
documentation.md
파일을 참조하세요.
서버 실행
- TypeScript 코드를 작성합니다.
- 서버를 시작합니다:서버가 시작되고 MCP 연결을 수신합니다. 서버가 시작되었고 어떤 도구가 등록되었는지 알려주는 출력이 표시됩니다.
도구 문서
generate_prompt
작업 설명을 기반으로 프롬프트를 생성합니다.
입력 스키마:
{
"type": "object",
"properties": {
"task": {
"type": "string",
"description": "A description of the task the prompt should be designed for (e.g., \"a chef for a meal prep planning service\")."
},
"target_model": {
"type": "string",
"description": "The target Anthropic model identifier (e.g., \"claude-3-opus-20240229\")."
}
},
"required": ["task", "target_model"]
}
improve_prompt
피드백을 기반으로 기존 프롬프트를 개선합니다.
입력 스키마:
{
"type": "object",
"properties": {
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"role": { "type": "string", "description": "Role (e.g., 'user', 'assistant')." },
"content": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": { "type": "string", "description": "Content type (e.g., 'text')." },
"text": { "type": "string", "description": "Text content." }
},
"required": ["type", "text"]
},
"description": "Content blocks."
}
},
"required": ["role", "content"]
},
"description": "The sequence of messages representing the prompt conversation."
},
"system": {
"type": "string",
"description": "(Optional) A system prompt to guide the model."
},
"feedback": {
"type": "string",
"description": "Specific feedback on how to improve the prompt (e.g., \"Make it more detailed\")."
},
"target_model": {
"type": "string",
"description": "The target Anthropic model identifier (e.g., \"claude-3-opus-20240229\")."
}
},
"required": ["messages", "feedback", "target_model"]
}
templatize_prompt
구체적인 프롬프트 예를 재사용 가능한 템플릿으로 변환합니다.
입력 스키마:
{
"type": "object",
"properties": {
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"role": { "type": "string", "description": "Role (e.g., 'user', 'assistant')." },
"content": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": { "type": "string", "description": "Content type (e.g., 'text')." },
"text": { "type": "string", "description": "Text content." }
},
"required": ["type", "text"]
},
"description": "Content blocks."
}
},
"required": ["role", "content"]
},
"description": "The sequence of messages representing the prompt conversation example."
},
"system": {
"type": "string",
"description": "(Optional) A system prompt associated with the example."
}
},
"required": ["messages"]
}