Test FastMCP

Test FastMCP

A basic MCP server built with the FastMCP framework that provides fundamental mathematical operations like addition, subtraction, multiplication, and division. It serves as a demonstration for integrating math-based tools into MCP-compatible environments like Cursor IDE.

Category
访问服务器

README

Test FastMCP

一个使用 FastMCP 框架构建的 MCP 服务器,提供基本的数学运算功能。

🚀 功能特性

  • 加法运算 (add) - 计算两个整数的和
  • 减法运算 (subtract) - 计算两个整数的差
  • 乘法运算 (multiply) - 计算两个整数的积
  • 除法运算 (divide) - 计算两个整数的商

📋 系统要求

  • Python 3.12+
  • uv 包管理器
  • Cursor IDE (用于MCP集成)

🛠️ 安装和设置

1. 安装 uv

如果你还没有安装 uv,请先安装:

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# 或者使用 pip
pip install uv

2. 项目设置

  1. 克隆项目

    git clone <repository-url>
    cd test_fast_mcp
    
  2. 安装依赖

    uv sync
    
  3. 激活虚拟环境

    uv shell
    
  4. 运行服务器

    uv run python main.py
    

🔧 开发命令

  • 启动开发服务器

    uv run dev
    
  • 运行测试

    uv run test
    
  • 代码格式化

    uv run format
    
  • 代码检查

    uv run lint
    
  • 导入排序

    uv run sort
    

添加新依赖

# 添加生产依赖
uv add package-name

# 添加开发依赖
uv add --dev package-name

更新依赖

uv lock --upgrade

🔌 Cursor 集成

配置 MCP 服务器

将以下配置添加到你的 Cursor MCP 配置文件 (~/.cursor/mcp.json) 中:

{
  "mcpServers": {
    "test-fast-mcp": {
      "command": "uv",
      "args": ["run", "python", "/Users/guosong/Desktop/Sina/Code/test_fast_mcp/main.py"],
      "env": {
        "PYTHONPATH": ".",
        "TRANSPORT": "stdio"
      }
    }
  }
}

重要配置说明:

  • 使用绝对路径指向 main.py 文件
  • 添加 "TRANSPORT": "stdio" 环境变量
  • 确保 PYTHONPATH 设置正确

验证集成

  1. 重启 Cursor IDE
  2. 检查 MCP 服务器状态(应该显示 "4 tools enabled")
  3. 测试工具调用

📁 项目结构

test_fast_mcp/
├── main.py          # 主服务器文件,包含所有工具定义
├── pyproject.toml   # 项目配置和依赖管理
├── uv.lock         # 依赖锁定文件
├── mcp.json        # Cursor MCP 配置示例
├── test_tools.py   # 工具测试文件
└── README.md       # 项目说明文档

🧪 测试工具

运行测试脚本来验证数学函数:

python test_tools.py

预期输出:

Testing math functions:
add(5, 4) = 9
subtract(10, 3) = 7
multiply(6, 7) = 42
divide(15, 3) = 5.0

🔍 故障排除

常见问题

  1. "No tools or prompts" 错误

    • 确保使用绝对路径配置
    • 添加 TRANSPORT: "stdio" 环境变量
    • 重启 Cursor IDE
  2. 构建错误

    • 运行 uv sync 重新安装依赖
    • 检查 pyproject.toml 配置
  3. 工具无法调用

    • 确认 MCP 服务器正在运行
    • 检查工具名称格式:mcp_test-fast-mcp_<tool_name>

调试步骤

  1. 检查服务器状态:

    ps aux | grep "python main.py"
    
  2. 查看服务器日志:

    uv run python main.py
    
  3. 测试工具功能:

    python -c "from main import add; print(add(5, 4))"
    

🏗️ 开发指南

这个项目使用 FastMCP 框架,它简化了 MCP 服务器的创建过程。

添加新工具

  1. main.py 中定义新函数
  2. 使用 @mcp.tool 装饰器
  3. 添加详细的文档字符串
  4. 重启服务器

示例:

@mcp.tool
def new_tool(param: str) -> str:
    """Tool description.
    
    Args:
        param: Parameter description
        
    Returns:
        Return value description
    """
    return f"Processed: {param}"

工具命名规范

  • 使用小写字母和下划线
  • 提供清晰的参数类型注解
  • 包含详细的文档字符串
  • 添加适当的错误处理

📄 许可证

MIT License

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📞 支持

如果遇到问题,请:

  1. 检查故障排除部分
  2. 查看项目 Issues
  3. 提交新的 Issue

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选