mcpField
M
MCP Server Practice

MCP Server Practice

本地服务
github.com/mybarefootstory开发工具084 周前更新

关于 MCP Server Practice

MCP Server Practice 是一个 Python 项目,提供用于获取 LinkedIn 个人资料和天气信息的 MCP 服务。它包含资料查询、天气预警和预报工具。

主要功能

  1. 01获取 LinkedIn 个人资料
  2. 02查询天气预警
  3. 03查询天气预报
  4. 04异步 HTTP 请求

适用场景

  1. 01查询 LinkedIn 个人资料
  2. 02查看天气预警
  3. 03获取天气预报

MCP 相关

项目实现了 MCP 服务,向 MCP 客户端提供 LinkedIn 资料查询和天气数据工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP 服务实践

此仓库包含用于 LinkedIn 个人资料抓取和天气数据检索的 Model Context Protocol(MCP)服务实现。MCP 框架有助于 AI 服务之间无缝集成和通信。

概述

  • LinkedIn 个人资料抓取工具:使用 Fresh LinkedIn Profile Data API 获取 LinkedIn 个人资料数据。
  • 天气数据服务:使用 National Weather Service(NWS)API 获取天气预警和预报。

前置条件

  • Python 3.7+
  • 用于异步 HTTP 请求的 httpx
  • 用于环境变量管理的 python-dotenv
  • 用于 MCP 服务实现的 mcp

安装

  1. 克隆仓库:

    git clone https://github.com/mybarefootstory/MCP-Server-Practice-2.git
    cd MCP-Server-Practice-2
    
  2. 安装依赖项:

    pip install httpx python-dotenv mcp
    
  3. 设置环境变量:

    • 在根目录中创建一个 .env 文件。
    • 添加你的 RapidAPI 密钥:
      RAPIDAPI_KEY=your_rapidapi_key_here
      

LinkedIn 个人资料抓取工具

描述

使用 Fresh LinkedIn Profile Data API 获取 LinkedIn 个人资料数据。该服务使用 FastMCP 初始化,并监听获取个人资料信息的请求。

代码片段
from mcp.server.fastmcp import FastMCP
import httpx
import os
from dotenv import load_dotenv

load_dotenv()
RAPIDAPI_KEY = os.getenv("RAPIDAPI_KEY")

mcp = FastMCP("linkedin_profile_scraper")

async def get_linkedin_data(linkedin_url: str) -> dict:
    # Fetch LinkedIn profile data
    ...

@mcp.tool()
async def get_profile(linkedin_url: str) -> str:
    # Get LinkedIn profile data
    ...

if __name__ == "__main__":
    mcp.run(transport="stdio")

天气数据服务

描述

使用 NWS API 获取天气预警和预报。该服务使用 FastMCP 初始化,并提供用于获取预警和预报的工具。

代码片段
from mcp.server.fastmcp import FastMCP
import httpx

mcp = FastMCP("weather")

async def make_nws_request(url: str) -> dict:
    # Make a request to the NWS API
    ...

@mcp.tool()
async def get_alerts(state: str) -> str:
    # Get weather alerts for a US state
    ...

@mcp.tool()
async def get_forecast(latitude: float, longitude: float) -> str:
    # Get weather forecast for a location
    ...

if __name__ == "__main__":
    mcp.run(transport='stdio')

使用方法

  • LinkedIn 个人资料抓取工具:运行服务并使用 get_profile 工具获取 LinkedIn 数据。
  • 天气数据服务:运行服务并使用 get_alerts 和 get_forecast 工具获取天气信息。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。