使用说明
如何在Claude Desktop中使用Python实现自动化(使用MCP)
本报告展示了如何在Python中构建一个最小模型上下文协议(MCP)服务器,并使用 uv,并将其连接到克劳德桌面或克劳德代码。我们将使用一个实际示例:按需获取任何YouTube视频的文字记录,以便您可以对其进行总结并决定是否值得观看。
为什么选择MCP?它非常适合您希望从IDE或桌面助理立即触发的开发人员端自动化,无需部署或UI。非常适合个人工作流程;不针对生产应用程序。
先决条件
- Python 3.12+
- 紫外线(见 https://docs.astral.sh/uv/)
- 克劳德桌面或克劳德代码
将以下所有绝对路径替换为您自己的路径,例如: <ABSOLUTE_PATH_TO_THIS_DIR>.
项目布局
mcp/servers/youtube/
server.py # MCP entrypoint with tools
src/
__init__.py
service.py # YouTubeTranscriptService wrapper
utils.py # helpers (extract_video_id)
pyproject.toml # deps for this server when using uv
README.md # this guide
步骤:1添加uv脚本头以简化运行
在最顶端 server.py,添加脚本元数据 uv run server.py 自动解决所有问题:
# /// script
# requires-python = ">=3.12"
# dependencies = [
# "mcp[cli]>=1.12.3",
# "pydantic>=2.11.7",
# "python-dotenv>=1.1.1",
# "requests>=2.32.4",
# "youtube-transcript-api>=1.2.2",
# ]
# ///
这让 uv 创建一个隔离的环境,只安装此脚本所需的内容。
步骤2:创建服务器
创建您的 server.py,实现任何逻辑并注册您的工具。使用 stdio 无需部署即可轻松使用本地服务器。
步骤3:在本地运行开发服务器
从该目录:
mcp dev server.py
使用MCP检查器工具测试服务器。连接>工具>列表工具>get_transcript>插入URL>运行工具。
步骤4:代理支持(可选)
成绩单服务支持 网上共享 如果您设置了这些环境变量,则可以使用代理(否则它将使用直接连接):
WEBSHARE_USERNAME=<your_username>
WEBSHARE_PASSWORD=<your_password>
步骤5:从克劳德桌面连接
转到克劳德桌面>设置>开发人员>编辑配置>编辑§Claude_Desktop_Config.json `并添加:
{
"mcpServers": {
"YouTube": {
"command": "uv",
"args": [
"--directory",
"<ABSOLUTE_PATH_TO_THIS_DIR>",
"run",
"server.py"
]
}
}
}
重新启动克劳德桌面。你应该看到这样的工具 get_transcript 可用。
步骤6:从Claude Code(CLI)连接
从任何地方:
claude mcp add --transport stdio YouTube -- \
uv --directory <ABSOLUTE_PATH_TO_THIS_DIR> run server.py
然后列出工具:
claude mcp tools YouTube
典型的工作流程(为什么这很有用)
- 一个新视频掉下来,你没有时间看。
- 在Claude Desktop或Code中,调用
get_transcript使用URL。 - 将成绩单粘贴到您的模型中,以便快速总结。
- 决定它是否值得一看——所有这些都不需要打开浏览器选项卡。
这种模式可以推广到无数“小而有效”的开发自动化。
Cmds(Mac):
- brew安装uv
- 紫外线真空
- source.ven/bin/activate
- uv pip安装-r要求.txt
- uv运行服务器.py或mcp开发服务器.py
- 要安装claude代码CLI:
npm install -g @anthropic-ai/claude-code - 设置Anthropic API密钥:
claude config set api_key <your-api-key> - 要添加MCP服务器,请执行以下操作:
claude mcp add --transport stdio YouTube -- \
uv --directory <ABSOLUTE_PATH_TO_THIS_DIR> run server.py
- 要查看claude中的所有MCP:
claude mcp list
- 使用cmd启动新的claude会话:
claude,并询问任何与youtube摘要相关的问题,例如:总结视频并放入md文件