关于 Me MCP Server
面向个人用户的 Dart MCP 服务,供 AI 客户端读取个人资料和简历信息。它将资料作为资源提供,并可依据配置的求职偏好生成提示词。
主要功能
- 01简历文本与 PDF 链接资源
- 02LinkedIn、GitHub 和网站链接
- 03获取网站 HTML 内容
- 04基于个人资料的求职提示词
- 05YAML 个人信息与求职偏好配置
适用场景
- 01根据薪资和地点偏好生成求职指引
- 02向客户端提供简历和个人资料链接
- 03获取个人网站内容以供分析
MCP 相关
将简历和个人资料作为 MCP 资源公开,并提供 JobSearch 提示词。支持通过 HTTP 使用 SSE 传输,也支持 MCP 客户端使用 stdio 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Me MCP Server
一个用于了解和与您互动的 MCP(模型上下文协议)服务。
功能
此 MCP 服务提供以下功能:
提示词
- JobSearch - 根据您的个人资料,以及指定的薪资范围、地点和公司类型偏好,生成量身定制的求职说明。
资源
- 简历文本 - 访问完整的简历文本(
candidate-info://resume) - 简历 URL - 获取简历 PDF 的 URL(
candidate-info://resume-url) - LinkedIn 个人资料 URL - 访问您的 LinkedIn 个人资料(
candidate-info://linkedin-url) - GitHub 个人资料 URL - 访问您的 GitHub 个人资料(
candidate-info://github-url) - 网站 URL - 获取您的个人网站 URL(
candidate-info://website-url) - 网站内容 - 获取并分析您网站的 HTML 内容(
candidate-info://website-contents)
运行服务
使用 Docker
使用 Docker Compose 是运行此服务最简单的方式:
docker-compose up -d
这将在端口 3000 上启动服务。
传输选项
此 MCP 服务支持两种不同的传输机制:
SSE(服务器发送事件)传输
SSE 传输允许服务通过 HTTP 与支持服务器发送事件的客户端通信。这适用于基于 Web 的客户端,或任何能够建立 HTTP 连接的客户端。
使用 SSE 传输运行服务:
dart bin/sse_server.dart
SSE 服务将在配置的主机和端口上启动(默认值:0.0.0.0:3000)。
Stdio 传输
Stdio 传输使用标准输入/输出流进行通信。这非常适合与 Claude Desktop 等桌面客户端集成,这些客户端会将 MCP 服务作为子进程启动。
使用 Stdio 传输运行服务:
dart bin/stdio_server.dart
配置 Claude Desktop
要在 Claude Desktop 中使用此 MCP 服务,请将以下内容添加到 Claude 配置中:
{
"mcpServers": {
"me_mcp": {
"command": "dart",
"args": [
"path/to/bin/stdio_server.dart"
]
}
}
}
或者,您可以将服务编译为独立可执行文件:
dart compile exe bin/stdio_server.dart -o ./mcp_server
然后配置 Claude Desktop 使用编译后的版本:
{
"mcpServers": {
"me_mcp": {
"command": "path/to/mcp_server"
}
}
}
配置
此服务采用混合配置方式:
- 服务设置 - 使用环境变量配置
- 个人信息 - 使用
me.yaml文件配置
环境变量
与服务相关的设置通过环境变量配置:
| 变量 | 描述 | 默认值 |
|---|---|---|
| HOST | 绑定的主机地址 | 0.0.0.0 |
| PORT | 监听端口 | 3000 |
| ENVIRONMENT | 环境(development、production) | development |
YAML 配置
个人信息和求职偏好通过 me.yaml 文件配置。
初始化配置
创建默认配置文件:
dart bin/me_init.dart [path]
这将生成一个包含默认值的 me.yaml 文件(或在指定路径生成),您可以对其进行编辑。
配置示例
# Personal information
name: Jake Gaylor
resume_url: https://example.com/resume.pdf
website_url: https://jakegaylor.com
linkedin_url: https://linkedin.com/in/jakegaylor
github_url: https://github.com/jhgaylor
# Optional content (can be loaded from URLs above if not specified)
resume_text: |
Jake Gaylor
Software Engineer
Experience:
- Example Company (2020-Present)
Senior Software Engineer
Skills:
- Dart, JavaScript, TypeScript
- Cloud Infrastructure
website_text: "" # Will be fetched from website_url if empty
# Job search preferences
job_search:
min_salary: 150000
max_salary: 250000
location: Remote
company_type: Startup
industry: Technology
description: "Looking for senior engineering roles with focus on cloud infrastructure"
YAML 配置选项
| 部分 | 选项 | 描述 | 默认值 |
|---|---|---|---|
| - | name | 您的个人资料/候选人姓名 | Jane Smith |
| - | resume_url | 简历的 URL | https://example.com/resume.pdf |
| - | linkedin_url | LinkedIn 个人资料的 URL | https://linkedin.com/in/example |
| - | github_url | GitHub 个人资料的 URL | https://github.com/example |
| - | website_url | 个人网站的 URL | https://example.com |
| - | resume_text | 简历的完整文本内容 | An empty resume. |
| job_search | min_salary | 求职的最低薪资 | 100000 |
| job_search | max_salary | 求职的最高薪资 | 500000 |
| job_search | location | 首选求职地点 | Remote |
| job_search | company_type | 首选公司类型 | Startup |
| job_search | industry | 首选行业 | Technology |
| job_search | description | 其他求职详情 | "" |
类型安全配置(面向开发者)
YAML 配置会解析为强类型的 Dart 对象:
import 'package:me_mcp_server/me_mcp_server.dart';
// Create a configuration programmatically
final config = MeConfig(
name: 'Jane Smith',
resumeUrl: 'https://example.com/resume.pdf',
jobSearch: JobSearchConfig(
minSalary: 150000,
maxSalary: 250000,
location: 'Remote',
),
);
// Convert to YAML
final yamlString = configToYaml(config);
本地运行
要在本地运行服务:
- 确保已安装 Dart SDK 3.7.2 或更高版本
- 安装依赖项:
dart pub get - 在根目录中创建
me.yaml文件并填入配置dart bin/me_init.dart - 根据需要设置环境变量
- 使用首选传输方式运行服务:
- SSE:
dart bin/sse_server.dart - Stdio:
dart bin/stdio_server.dart
- SSE:
开发
构建 Docker 镜像
docker build -t jhgaylor/me-mcp-server:local .
运行 Docker 镜像
docker run -p 3000:3000 \
-v $(pwd)/me.yaml:/app/me.yaml \
-e PORT=3000 \
-e ENVIRONMENT=production \
jhgaylor/me-mcp-server:local
Docker 配置
使用 Docker 时,你可以:
-
挂载
me.yaml文件:-v $(pwd)/me.yaml:/app/me.yaml -
设置环境变量:
-e HOST=0.0.0.0 -e PORT=3000 -e ENVIRONMENT=production -
使用 docker-compose.yml:
services: mcp-server: volumes: - ./me.yaml:/app/me.yaml environment: - HOST=0.0.0.0 - PORT=3000 - ENVIRONMENT=production
部署示例
部署到自定义域名
你可以将此 MCP 服务部署到自己的域名。以下是一个部署示例,服务运行在 mcp.jakegaylor.com:
- GitHub 仓库:jhgaylor/jakegaylor-com-mcp-server
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。