Token导航 LogoToken导航TokenDH.com
MCP learn py logo
运维云端stdio官方级别未说明来源级核验

MCP learn py

MCP Server

一个全面的模型上下文协议(MCP)服务器,具有动态工具注册功能,提供高级社交媒体自动化和数学计算能力。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude数学计算Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Winston-Tao

提供方

Winston-Tao

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv venv

详细介绍

MCP 学习服务器

一个具备动态工具注册功能的全面模型上下文协议(MCP)服务器,具有先进的社交媒体自动化和数学计算能力。

🎯 项目概述

这个项目展示了采用动态工具注册系统的现代MCP(可能是指某种中间件或计算平台)服务器架构。它支持多个工具提供商,提供可配置的工具管理功能,并且兼具计算工具和社会媒体自动化能力。

🏗️ 建筑学

采用简洁、可扩展的架构构建,特点包括:

  • 动态工具注册表运行时工具的注册与管理
  • 工具提供商按功能模块化组织工具
  • 配置管理基于JSON的工具配置,支持热重载
  • HTTP传输支持JSON-RPC的生产就绪HTTP服务器
  • 错误处理全面的错误处理,配备重试机制

核心组件

  • src/core/tool_registry.py - 中央工具管理系统
  • src/core/tool_providers.py - 工具提供商的实现
  • src/config/tools_config.py - 配置管理
  • src/http_server.py - HTTP传输服务器
  • src/config/tools.json - 工具配置文件

🚀 功能特点

可用工具(2类共13个工具)

计算器工具(4个工具)

  • 计算执行数学计算
  • 求解二次方程解二次方程 ax² + bx + c = 0
  • 单位转换器在不同单位之间进行转换
  • 统计计算器计算统计指标

小红书工具(9款工具)

  • 检查登录状态检查小红书登录状态
  • 获取登录二维码获取用于认证的登录二维码
  • 等待登录等待用户完成登录过程
  • 发布内容在小红书上发布文本/图片内容
  • 列表订阅源(或:订阅源列表)从主页获取推荐的订阅列表
  • 搜索订阅源(或:搜索信息源)按关键词搜索内容
  • 获取动态详情获取帖子的详细信息
  • 将评论发布到动态中在特定帖子下发表评论
  • 用户配置文件获取用户个人资料信息

资源

  • 文件管理器浏览并读取文件系统中的文件
  • 系统信息获取系统信息和资源使用情况

提示

  • 代码审查全面代码分析模板
  • 文档为代码生成文档
  • 数据分析使用可定制的方法分析数据
  • 文档生成文档的模板
  • 数据分析分析数据集的模板

📋 先决条件

  • Python 3.10 或更高版本
  • 紫外线 (推荐)或使用 pip

🛠️ 安装

使用紫外线(推荐)

# Clone the repository
git clone 
cd mcp_learn_py

# Install dependencies
uv sync

# Or install with development dependencies
uv sync --dev

使用 pip

# Clone the repository
git clone 
cd mcp_learn_py

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Or install development dependencies
pip install -r requirements-dev.txt

⚙️ 配置

  1. 复制示例环境文件:
   cp .env.example .env
  1. 编辑 .env 使用您偏好的设置:
   MCP_SERVER_NAME="My MCP Server"
   MCP_SERVER_PORT="8000"
   DEBUG="true"
   # ... other settings

🏃‍♂️ 运行服务器

开发模式

# Using uv
uv run python scripts/start_server.py

# Using pip
python scripts/start_server.py

生产模式

# Using uvicorn directly
uvicorn src.server:app --host 0.0.0.0 --port 8000

# Or using the configured script
mcp-server

服务器将在 http://localhost:8000 默认情况下。

🔑 小红书登录管理

该框架现在包含了全面的登录管理功能,支持通过cookie实现持久化:

交互式登录

# Check current login status
./scripts/mcp_server.sh login status

# Start interactive login process
./scripts/mcp_server.sh login interactive

# Get cookie information
./scripts/mcp_server.sh login info

# Clear saved login session
./scripts/mcp_server.sh login clear

直接登录脚本

# Using the login script directly
uv run python scripts/login.py --status      # Check status
uv run python scripts/login.py --login       # Interactive login
uv run python scripts/login.py --clear       # Clear session
uv run python scripts/login.py --info        # Show cookie info

关键特性

  • Cookie 持久性登录会话会自动保存和恢复
  • 二维码支持获取用于手机认证的登录二维码
  • 可靠检测使用精确选择器进行准确的登录状态检查
  • 跨平台在Windows、macOS和Linux系统上均可运行
  • 多种方法交互式登录、二维码登录或手动浏览器登录

用于登录的MCP工具

  • check_login_status - 检查是否已登录小红书
  • get_login_qrcode - 获取用于手机登录的二维码图像
  • wait_for_login - 等待登录完成,设置超时时间

🧪 测试

运行测试

# Using uv
uv run pytest

# Using pip
pytest

# With coverage
pytest --cov=src --cov-report=html

手动测试

使用随附的测试客户端:

# Using uv
uv run python scripts/test_client.py

# Using pip
python scripts/test_client.py

# Or using the script
mcp-test-client

📖 使用示例

从Claude桌面端连接

在您的Claude桌面配置中添加:

{
  "mcpServers": {
    "mcp-learning-server": {
      "command": "uv",
      "args": ["run", "python", "/path/to/mcp_learn_py/scripts/start_server.py"],
      "env": {
        "UV_PROJECT_ENVIRONMENT": "/path/to/mcp_learn_py/.venv"
      }
    }
  }
}

远程部署

服务器支持通过HTTP传输进行远程部署。参见 docs/deployment.md 翻译为中文是:文档/部署.md 以获取详细说明。

🔧 开发

代码风格

这个项目使用:

  • 黑色 用于代码格式化
  • isort(注:这是一个专有名词,通常指的是一种用于排序或整理的工具或程序,在中文中直接音译,但具体含义需根据上下文确定) 用于进口分类
  • flake8 用于代码检查(或语法检查)
  • mypy 用于类型检查
# Format code
uv run black src/ tests/
uv run isort src/ tests/

# Lint code
uv run flake8 src/ tests/

# Type check
uv run mypy src/

预提交钩子(Pre-commit Hooks)

# Install pre-commit hooks
uv run pre-commit install

# Run hooks manually
uv run pre-commit run --all-files

📚 学习资源

🤝 贡献

  1. 为仓库创建分支(或“克隆仓库”)
  2. 创建一个特性分支(git checkout -b feature/amazing-feature
  3. 做出你的更改
  4. 如有需要,请添加测试
  5. 运行测试套件(pytest)
  6. 提交你的更改(git commit -m 'Add amazing feature')
  7. 推送到分支(git push origin feature/amazing-feature)
  8. 提交拉取请求

📄 许可证

这个项目遵循MIT许可证授权——详见 许可证 文件中有详细信息。

🙏 致谢

目录标签

目录标签

PythonClaude数学计算动态工具注册本地部署社交媒体自动化HTTP服务器JSON-RPC

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP