Discover Awesome MCP Servers

Extend your agent with 10,386 capabilities via MCP servers.

All10,386
mcp-function-app-tester

mcp-function-app-tester

Server MCP berbasis TypeScript yang memungkinkan interaksi dengan Azure Table Storage secara langsung melalui Cline. Alat ini memungkinkan Anda untuk melakukan kueri dan mengelola data di Azure Storage Tables.

JavaScript
Scryfall MCP Server

Scryfall MCP Server

Memungkinkan interaksi dengan Scryfall API, memungkinkan pengguna untuk mencari detail kartu Magic: The Gathering, mengambil aturan kartu, dan mengakses informasi harga menggunakan Model Context Protocol.

JavaScript
ClickUp MCP Server

ClickUp MCP Server

Mengaktifkan integrasi AI dengan tugas ClickUp, mendukung manajemen sumber daya, operasi tugas, organisasi ruang kerja, dan rekomendasi tugas bertenaga AI melalui protokol standar.

TypeScript
mcp-github

mcp-github

Server MCP GitHub Anthropic, tapi lebih baik. Dukungan untuk lebih banyak titik akhir (endpoint). Termasuk rilis dan tag, ulasan *pull request*, status, batas laju (rate limit), gist, proyek, paket, dan bahkan diff *pull request*. Dimaksudkan untuk digunakan dengan API MCP MissionSquad untuk manajemen rahasia (alias token akses Anda).

TypeScript
World Bank MCP Server

World Bank MCP Server

Memungkinkan asisten AI untuk berinteraksi dengan API data terbuka Bank Dunia, memungkinkan daftar dan analisis indikator di seluruh negara yang tersedia.

Python
mcp-server-birdstats

mcp-server-birdstats

Okay, here's how you can cross-reference your BirdNET-Pi data with eBird observations using natural language, along with some considerations and potential approaches: **Understanding the Goal** The core idea is to compare what BirdNET-Pi *thinks* it heard with what human observers *actually* reported seeing in the same area and time frame. This helps: * **Validate BirdNET-Pi's accuracy:** See how often BirdNET-Pi correctly identifies birds present. * **Identify potential misidentifications:** Investigate cases where BirdNET-Pi reports a bird that wasn't observed by humans. This could be due to rare birds, distant calls, or BirdNET-Pi errors. * **Gain a more complete picture of bird activity:** Combine automated detection with human observation for a richer dataset. **General Steps & Considerations** 1. **Data Preparation:** * **BirdNET-Pi Data:** You'll need your BirdNET-Pi detection logs. These typically include: * Timestamp (date and time) * Latitude and Longitude (location of your BirdNET-Pi device) * Bird species detected (and often a confidence score) * **eBird Data:** You'll need to access eBird data. There are a few ways to do this: * **eBird API (preferred):** The eBird API allows you to programmatically query eBird data based on location and date ranges. This is the most efficient and flexible approach. You'll need an eBird API key. * **eBird Data Downloads:** eBird offers bulk data downloads (e.g., the eBird Basic Dataset). These are large files, but you can filter them to your region of interest. * **eBird Website:** You can manually browse eBird observations on the eBird website for specific locations and dates, but this is only practical for very small-scale comparisons. 2. **Location Matching:** * **Define a Radius:** Determine a reasonable radius around your BirdNET-Pi location. eBird observations within this radius will be considered "nearby." The appropriate radius depends on the habitat and the mobility of the birds you're interested in (e.g., a smaller radius for songbirds in a forest, a larger radius for waterfowl on a lake). 1-5 km is a reasonable starting point. * **Spatial Queries:** Use spatial functions (if you're using a database or programming language with spatial capabilities) to efficiently find eBird observations within the defined radius. Otherwise, you'll need to calculate distances between your BirdNET-Pi location and each eBird observation. 3. **Time Matching:** * **Define a Time Window:** Determine a time window around the BirdNET-Pi detection. eBird observations within this time window will be considered "concurrent." A time window of +/- 1 hour to +/- 1 day is common. Consider the behavior of the birds (e.g., are they more active at dawn?). * **Time Comparisons:** Compare the timestamps of BirdNET-Pi detections with the timestamps of eBird observations. 4. **Species Matching:** * **Taxonomic Consistency:** Ensure that the species names used by BirdNET-Pi and eBird are consistent. There may be slight variations in common names or scientific names. Use a taxonomic database (e.g., the Clements Checklist) to standardize the names. * **Consider Subspecies/Forms:** Decide whether you want to match at the species level or consider subspecies or distinct forms. 5. **Analysis and Interpretation:** * **Calculate Concordance:** Determine the percentage of BirdNET-Pi detections that are also reported by eBird observers within the specified radius and time window. * **Investigate Discrepancies:** Examine cases where BirdNET-Pi detects a bird that is *not* reported by eBird. Consider: * **Rarity:** Is the bird rare in the area? If so, it's possible BirdNET-Pi is correct, and eBird observers simply missed it. * **Distance:** Could the bird be calling from a distance, making it audible to BirdNET-Pi but not visible to observers? * **Habitat:** Is the habitat around your BirdNET-Pi location different from the habitat where eBird observers are reporting? * **BirdNET-Pi Confidence:** What was the confidence score of the BirdNET-Pi detection? Low confidence detections are more likely to be errors. * **eBird Effort:** How much effort (time spent observing) did eBird observers put in? A short checklist is less likely to capture all species present. * **Consider False Negatives:** Also, consider cases where eBird observers reported a bird that BirdNET-Pi *didn't* detect. This could be due to: * **Quiet Birds:** Some birds are less vocal. * **BirdNET-Pi Sensitivity:** BirdNET-Pi might not be sensitive enough to detect faint calls. * **Noise Interference:** Noise might mask the bird's calls. **Example using Python and the eBird API (Conceptual)** ```python import requests import json from datetime import datetime, timedelta from math import radians, sin, cos, sqrt, atan2 # For distance calculation # --- Configuration --- BIRDNET_LAT = 34.0522 # Example latitude BIRDNET_LON = -118.2437 # Example longitude RADIUS_KM = 2.0 TIME_WINDOW_HOURS = 2 EBIRD_API_KEY = "YOUR_EBIRD_API_KEY" # Replace with your actual API key def haversine(lat1, lon1, lat2, lon2): """Calculates the distance between two points on Earth (Haversine formula).""" R = 6371 # Radius of Earth in kilometers lat1, lon1, lat2, lon2 = map(radians, [lat1, lon1, lat2, lon2]) dlon = lon2 - lon1 dlat = lat2 - lat1 a = sin(dlat / 2)**2 + cos(lat1) * cos(lat2) * sin(dlon / 2)**2 c = 2 * atan2(sqrt(a), sqrt(1 - a)) distance = R * c return distance def get_ebird_observations(latitude, longitude, radius, date, api_key): """Queries the eBird API for observations within a radius of a location on a given date.""" date_str = date.strftime("%Y-%m-%d") url = f"https://api.ebird.org/v2/data/obs/geo/recent?lat={latitude}&lng={longitude}&dist={radius}&back=7&fmt=json" #back=7 gets the last 7 days of data headers = {"X-eBirdApiToken": api_key} response = requests.get(url, headers=headers) if response.status_code == 200: return response.json() else: print(f"Error fetching eBird data: {response.status_code} - {response.text}") return None # --- Example BirdNET-Pi Data (replace with your actual data) --- birdnet_detections = [ {"timestamp": datetime(2024, 10, 27, 7, 30, 0), "species": "Northern Cardinal", "confidence": 0.85}, {"timestamp": datetime(2024, 10, 27, 8, 15, 0), "species": "American Robin", "confidence": 0.70}, {"timestamp": datetime(2024, 10, 27, 9, 0, 0), "species": "California Quail", "confidence": 0.90}, {"timestamp": datetime(2024, 10, 27, 10, 30, 0), "species": "Great Horned Owl", "confidence": 0.60}, #Example of a bird not seen by ebird ] # --- Main Logic --- for detection in birdnet_detections: detection_time = detection["timestamp"] ebird_data = get_ebird_observations(BIRDNET_LAT, BIRDNET_LON, RADIUS_KM, detection_time, EBIRD_API_KEY) if ebird_data: nearby_ebird_sightings = [] for sighting in ebird_data: sighting_time = datetime.fromtimestamp(sighting["obsDt"].timestamp()) #Convert to datetime object time_difference = abs(detection_time - sighting_time) distance = haversine(BIRDNET_LAT, BIRDNET_LON, sighting["lat"], sighting["lng"]) if time_difference <= timedelta(hours=TIME_WINDOW_HOURS) and distance <= RADIUS_KM: nearby_ebird_sightings.append(sighting["comName"]) birdnet_species = detection["species"] if birdnet_species in nearby_ebird_sightings: print(f"BirdNET-Pi detected {birdnet_species} at {detection_time}, confirmed by eBird.") else: print(f"BirdNET-Pi detected {birdnet_species} at {detection_time}, NOT confirmed by eBird.") print(f" Nearby eBird sightings: {nearby_ebird_sightings}") else: print(f"Could not retrieve eBird data for {detection_time}.") ``` **Explanation of the Python Code:** 1. **Imports:** Imports necessary libraries (requests for API calls, json for handling JSON data, datetime for time manipulation, and math for distance calculation). 2. **Configuration:** Sets up key parameters like the BirdNET-Pi location, search radius, time window, and *your eBird API key*. **Important:** Replace `"YOUR_EBIRD_API_KEY"` with your actual API key. 3. **`haversine()` function:** Calculates the distance between two latitude/longitude points using the Haversine formula. 4. **`get_ebird_observations()` function:** * Constructs the eBird API URL based on the location, radius, and date. * Makes a request to the eBird API. * Parses the JSON response and returns the eBird data. * Includes error handling for API requests. 5. **`birdnet_detections`:** This is a *placeholder*. You'll need to replace this with your actual BirdNET-Pi data. The example shows a list of dictionaries, where each dictionary represents a BirdNET-Pi detection. 6. **Main Logic:** * Iterates through each BirdNET-Pi detection. * Calls `get_ebird_observations()` to retrieve eBird data for the relevant location and date. * Iterates through the eBird sightings and checks if they are within the specified time window and radius. * Compares the BirdNET-Pi species detection with the eBird sightings. * Prints a message indicating whether the BirdNET-Pi detection was confirmed by eBird. **Important Notes:** * **Error Handling:** The code includes basic error handling for the eBird API request. You should add more robust error handling to handle potential issues like network errors, invalid API keys, and unexpected data formats. * **Rate Limiting:** The eBird API has rate limits. Be mindful of these limits and implement appropriate delays or caching to avoid exceeding them. * **Data Cleaning:** Real-world data is often messy. You may need to clean and preprocess your BirdNET-Pi and eBird data to handle missing values, inconsistencies, and errors. * **Statistical Analysis:** For a more rigorous analysis, consider using statistical methods to assess the agreement between BirdNET-Pi and eBird, taking into account factors like detection probability and observer effort. * **Alternative Libraries:** Consider using libraries like `geopy` for more advanced geocoding and distance calculations, and `pandas` for data manipulation and analysis. **Indonesian Translation of Key Concepts:** * **Cross-reference:** *Referensi silang* atau *membandingkan* * **BirdNET-Pi data:** *Data BirdNET-Pi* * **eBird observations:** *Pengamatan eBird* * **Natural language:** *Bahasa alami* * **Validation:** *Validasi* atau *pengesahan* * **Misidentifications:** *Salah identifikasi* * **Concordance:** *Kesesuaian* * **Radius:** *Jari-jari* * **Time window:** *Jendela waktu* * **Species:** *Spesies* atau *jenis burung* * **Confidence score:** *Skor kepercayaan* * **Effort:** *Upaya* atau *usaha* * **False negatives:** *Negatif palsu* * **API Key:** *Kunci API* **Example Indonesian Output (based on the Python code):** ``` BirdNET-Pi mendeteksi Northern Cardinal pada 2024-10-27 07:30:00, dikonfirmasi oleh eBird. BirdNET-Pi mendeteksi American Robin pada 2024-10-27 08:15:00, dikonfirmasi oleh eBird. BirdNET-Pi mendeteksi California Quail pada 2024-10-27 09:00:00, dikonfirmasi oleh eBird. BirdNET-Pi mendeteksi Great Horned Owl pada 2024-10-27 10:30:00, TIDAK dikonfirmasi oleh eBird. Pengamatan eBird terdekat: ['Northern Cardinal', 'American Robin', 'California Quail'] ``` This translates to: ``` BirdNET-Pi detected Northern Cardinal on 2024-10-27 07:30:00, confirmed by eBird. BirdNET-Pi detected American Robin on 2024-10-27 08:15:00, confirmed by eBird. BirdNET-Pi detected California Quail on 2024-10-27 09:00:00, confirmed by eBird. BirdNET-Pi detected Great Horned Owl on 2024-10-27 10:30:00, NOT confirmed by eBird. Nearby eBird sightings: ['Northern Cardinal', 'American Robin', 'California Quail'] ``` Remember to adapt the code and analysis to your specific needs and data. Good luck!

JavaScript
MongoDB Lens

MongoDB Lens

Full featured MCP Server for MongoDB database analysis.

JavaScript
PDF Reader MCP Server

PDF Reader MCP Server

Menyediakan alat untuk membaca dan mengekstrak teks dari file PDF, mendukung baik file lokal maupun URL.

Python
Linear MCP Server

Linear MCP Server

Menyediakan antarmuka Protokol Konteks Model untuk mengakses sistem pelacakan masalah Linear, memungkinkan pengguna untuk membuat kueri dan mencari masalah dengan keamanan tipe TypeScript dan penanganan kesalahan yang kuat.

TypeScript
emqx-mcp-server

emqx-mcp-server

Implementasi server Model Context Protocol (MCP) yang menyediakan interaksi broker MQTT EMQX.

Python
MCP Server Firecrawl

MCP Server Firecrawl

Sebuah server yang menyediakan kemampuan web scraping dan pencarian konten cerdas menggunakan Firecrawl API, memungkinkan agen AI untuk mengekstrak data terstruktur dari situs web dan melakukan pencarian konten.

TypeScript
GitHub Mapper MCP Server

GitHub Mapper MCP Server

Menyediakan alat untuk memetakan dan menganalisis repositori GitHub. Alat ini memungkinkan pengguna untuk mengatur Token Akses Pribadi GitHub dan mengambil informasi detail tentang repositori tertentu, termasuk struktur dan statistik ringkasannya.

TypeScript
MCP Server for Spinnaker

MCP Server for Spinnaker

Implementasi server Protokol Konteks Model yang memungkinkan model AI untuk berinteraksi dengan dan mengelola deployment, pipeline, dan aplikasi Spinnaker melalui antarmuka yang terstandardisasi.

TypeScript
Image Generation MCP Server

Image Generation MCP Server

Sebuah server Protokol Konteks Model yang memungkinkan pembuatan gambar berkualitas tinggi menggunakan model Flux.1 Schnell melalui Together AI dengan parameter yang dapat disesuaikan.

JavaScript
Netskope MCP Server

Netskope MCP Server

Menyediakan alat untuk mengelola infrastruktur, kebijakan, dan konfigurasi pengarah Netskope melalui Protokol Konteks Model.

TypeScript
MCP Email Server

MCP Email Server

Menyediakan kemampuan IMAP dan SMTP, memungkinkan pengembang untuk mengelola layanan email dengan integrasi yang mulus dan alur kerja otomatis.

Python
Gemini Thinking Server

Gemini Thinking Server

Implementasi server MCP yang memanfaatkan Google Gemini API untuk menyediakan kemampuan pemecahan masalah analitis melalui langkah-langkah berpikir berurutan tanpa menghasilkan kode.

JavaScript
Microsoft SQL Server MCP Server (MSSQL)

Microsoft SQL Server MCP Server (MSSQL)

Jembatan yang mudah digunakan yang memungkinkan asisten AI seperti Claude dan Cursor IDE untuk langsung meminta dan menjelajahi database Microsoft SQL Server. Tidak diperlukan pengalaman coding!

JavaScript
olostep-mcp

olostep-mcp

Mencari di Google, situs web individual, dan mengikis kontennya. Cepat dan hemat biaya. ⚡️

TypeScript
MCP Google Custom Search Server

MCP Google Custom Search Server

Sebuah server Protokol Konteks Model yang memungkinkan LLM (Model Bahasa Besar) untuk melakukan pencarian web menggunakan Google Custom Search API melalui antarmuka yang terstandardisasi.

TypeScript
Rust Docs MCP Server

Rust Docs MCP Server

Sebuah server MCP yang menyediakan alat AI dengan akses ke dokumentasi Rust dari docs.rs, memungkinkan pencarian crate, dokumentasi, informasi tipe, *feature flag*, informasi versi, dan kode sumber.

TypeScript
MongoDB MCP Server for LLMs

MongoDB MCP Server for LLMs

Server Protokol Konteks Model yang memungkinkan LLM berinteraksi langsung dengan database MongoDB, memungkinkan pengguna untuk menanyakan koleksi, memeriksa skema, dan mengelola data melalui bahasa alami.

TypeScript
omniparser-autogui-mcp

omniparser-autogui-mcp

Operasi otomatis GUI di layar.

Python
AWS Cost Explorer MCP Server

AWS Cost Explorer MCP Server

Antarmuka baris perintah dan API yang memungkinkan pengguna untuk menganalisis dan memvisualisasikan data pengeluaran cloud AWS dengan memungkinkan Claude untuk menanyakan AWS Cost Explorer melalui percakapan bahasa alami.

Python
DICOM MCP Server

DICOM MCP Server

Server pengujian konektivitas yang memungkinkan operasi jaringan DICOM (seperti C-ECHO) melalui Protokol Konteks Model Claude, dengan dukungan untuk manajemen konfigurasi node.

Python
Farcaster MCP Server

Farcaster MCP Server

Menyediakan alat untuk berinteraksi dengan jaringan Farcaster, memungkinkan model AI untuk mengambil cast, mencari channel, dan menganalisis konten.

JavaScript
splunk-mcp

splunk-mcp

Alat berbasis FastMCP untuk berinteraksi dengan Splunk Enterprise/Cloud melalui bahasa alami. Alat ini menyediakan serangkaian kemampuan untuk mencari data Splunk, mengelola KV store, dan mengakses sumber daya Splunk.

Python
Rememberizer MCP Server

Rememberizer MCP Server

Sebuah server Protokol Konteks Model yang memungkinkan LLM untuk mencari, mengambil, dan mengelola dokumen melalui API manajemen pengetahuan Rememberizer.

Python
Canvas MCP Server

Canvas MCP Server

Server Protokol Konteks Model yang memungkinkan interaksi dengan API Sistem Manajemen Pembelajaran Canvas, memungkinkan pengguna untuk mengelola kursus, tugas, pendaftaran, dan nilai di dalam Canvas.

JavaScript
ClickHouse MCP Server

ClickHouse MCP Server

Server Protokol Konteks Model yang memungkinkan Model Bahasa Besar berinteraksi secara mulus dengan database ClickHouse, mendukung daftar sumber daya, pengambilan skema, dan eksekusi kueri.

Python