MCP Server Practice
About
# MCP Server Practice This repository contains implementations of Model Context Protocol (MCP) servers for LinkedIn profile scraping and weather data retrieval. The MCP framework facilitates seamless integration and communication between AI services. ## Overview - **LinkedIn Profile Scraper**: Fetches LinkedIn profile…
Explore
- LinkedIn profile scraping via Fresh LinkedIn Data API
- Weather alerts and forecasts from NWS API
- Asynchronous HTTP requests using httpx
- Environment variable management with python-dotenv
- Implements MCP servers with FastMCP framework
- Stdio transport for tool invocation
- Python 3.7+
- httpx for asynchronous HTTP requests
- python-dotenv for environment variable management
- mcp for MCP server implementation
Overview
- LinkedIn Profile Scraper: Fetches LinkedIn profile data using the Fresh LinkedIn Profile Data API. - Weather Data Service: Retrieves weather alerts and forecasts using the National Weather Service (NWS) API.Prerequisites
- Python 3.7+ -httpx for asynchronous HTTP requests
- python-dotenv for environment variable management
- mcp for MCP server implementation
Installation
1. Clone the repository: ``bash
git clone https://github.com/mybarefootstory/MCP-Server-Practice-2.git
cd MCP-Server-Practice-2
`
2. Install dependencies:
`bash
pip install httpx python-dotenv mcp
`
3. Set up environment variables:
- Create a .env file in the root directory.
- Add your RapidAPI key:
`
RAPIDAPI_KEY=your_rapidapi_key_here
`
LinkedIn Profile Scraper
Description
Fetches LinkedIn profile data using the Fresh LinkedIn Profile Data API. The server is initialized with FastMCP and listens for requests to retrieve profile information.
Code Snippet
`python
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")
`
Weather Data Service
Description
Retrieves weather alerts and forecasts using the NWS API. The server is initialized with FastMCP and provides tools for fetching alerts and forecasts.
Code Snippet
`python
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')
`
Usage
- LinkedIn Profile Scraper: Run the server and use the get_profile tool to fetch LinkedIn data.
- Weather Data Service: Run the server and use the get_alerts and get_forecast` tools to retrieve weather information.Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



