opportunity-mcp
Opportunity MCP
Un servidor del Protocolo de Contexto de Modelos (MCP) que permite a cualquier asistente de IA buscar oportunidades para jóvenes —becas, programas de investigación, pasantías, conferencias y programas de intercambio— agregadas en tiempo real desde los principales sitios de descubrimiento de oportunidades.
Estado: alfa (
v0.1.x). El esquema, la interfaz de herramientas y la lista de fuentes pueden cambiar a medida que los adaptadores maduren. Fije una versión menor en producción.
Descripción general
Los estudiantes que dependen de sitios de agregación de becas de terceros suelen abrir diez o más pestañas, revisar docenas de publicaciones irrelevantes y copiar las fechas límite en una hoja de cálculo personal, solo para perder el plazo de solicitud porque ningún agregador ofrece un seguimiento fiable de las fechas límite. Opportunity MCP reduce ese flujo de trabajo a una única consulta conversacional.
Tú: Busca becas de máster totalmente financiadas en Europa con fechas límite en los próximos 60 días, para las que sean elegibles los ciudadanos paquistaníes.
Claude: (Devuelve una lista estructurada y sin duplicados extraída en tiempo real de las fuentes indexadas, ordenada por fecha límite, con enlaces al artículo original.)
El servidor se ejecuta localmente a través de stdio, incluye un índice SQLite + FTS5 que se actualiza cada seis horas mediante CI, y se distribuye a través de PyPI, el Registro oficial de MCP y Smithery.
Canales de distribución
Canal | Identificador | Estado |
PyPI |
| ✅ activo |
Registro MCP |
| ✅ publicado |
Smithery |
| ✅ publicado |
GitHub | fuente de verdad | |
GitHub Releases | instantáneas | auto-publicado por CI |
Instalación
Claude Desktop
pip install opportunity-mcp
opportunity-mcp-refresh # build the local index (one-off, ~30 seconds)Añada lo siguiente a claude_desktop_config.json:
{
"mcpServers": {
"opportunities": {
"command": "opportunity-mcp"
}
}
}Reinicie Claude Desktop. Las seis herramientas siguientes estarán disponibles para el modelo.
Cursor, Windsurf, Continue y otros clientes MCP
La mayoría de los clientes utilizan la misma estructura mcpServers. Apunte el command a opportunity-mcp (después de pip install) o utilice uvx para una instalación cero:
{
"mcpServers": {
"opportunities": {
"command": "uvx",
"args": ["opportunity-mcp"]
}
}
}Smithery (instalación con un clic)
https://smithery.ai/server/sayedhusnainhader/opportunity-mcp — Smithery gestiona el comando de instalación por usted.
Desde el código fuente
git clone https://github.com/revolutionarybukhari/opportunity-mcp
cd opportunity-mcp
uv sync # or: pip install -e ".[dev]"
uv run opportunity-mcp-refresh
uv run opportunity-mcp # speaks MCP over stdioHerramientas
El servidor expone seis herramientas. Cada una acepta argumentos JSON y devuelve resultados tipados con Pydantic.
Herramienta | Firma | Descripción |
|
| Búsqueda de texto completo en todas las oportunidades indexadas con filtros opcionales. |
|
| Recupera los detalles completos de una sola oportunidad por su ID. |
|
| Oportunidades más recientes de todas las fuentes, ordenadas por fecha de publicación. |
|
| Oportunidades que cierran en |
|
| Lista las fuentes indexadas, el recuento de elementos y las marcas de tiempo de la última actualización. |
|
| Vuelve a obtener las fuentes bajo demanda. El argumento opcional |
type es uno de scholarship, fellowship, internship, conference, exchange, competition, grant, award o other.
Fuentes indexadas
Verificadas en tiempo real contra el feed RSS de cada sitio.
Fuente | Mecanismo | Estado |
RSS | ✅ activo | |
RSS | ✅ activo | |
RSS | ✅ activo | |
RSS | ✅ activo | |
RSS | ✅ activo | |
RSS | ✅ activo | |
RSS | ✅ adaptador activo (feed actualmente vacío en origen) | |
HTML | planificado | |
HTML | planificado |
El cumplimiento de robots.txt por fuente, las notas de los Términos de Servicio y las peculiaridades de CI están documentados en docs/SOURCES.md.
Ejemplos de prompts
Find fully-funded master's scholarships in Europe with deadlines in the next 60 days.
What conferences are happening in Africa in the next three months?
List the ten newest internships indexed today.
Show me everything closing in the next seven days that an undergraduate could apply to.
Get full details for opportunity 7733b95a81e3239d.Arquitectura
AI client ──MCP──▶ FastMCP server ──▶ SQLite + FTS5 ◀── refresh job ──▶ source adapters ──▶ opportunity sitesDos separaciones claras de responsabilidades:
Los adaptadores saben cómo leer un sitio y producir objetos
Opportunitycrudos (validados por Pydantic).El motor de consultas no sabe nada sobre los sitios; busca en un índice normalizado.
Añadir una nueva fuente suele ser una solicitud de extracción (pull request) de cincuenta líneas. Consulte docs/ADAPTER_GUIDE.md. La justificación completa de la arquitectura se encuentra en docs/ARCHITECTURE.md.
Privacidad y ética
Sin seguimiento de usuario. Todas las consultas se procesan localmente; nada sale de la máquina del usuario excepto la actualización periódica del sitio de origen.
Todos los datos indexados son públicos. Los resúmenes están limitados a 500 caracteres y cada registro enlaza con el artículo original.
Identificación educada. El
User-AgentHTTP incluye la URL del proyecto para que los propietarios de los sitios puedan contactarnos directamente.Cadencia de actualización conservadora. Las fuentes se consultan como máximo cada seis horas, a través de CI, nunca durante la consulta del usuario.
Las eliminaciones de fuentes bajo petición se cumplen en un plazo de 24 horas, sin negociación.
Se respeta
robots.txtpor cada adaptador antes de realizar la obtención.
Hoja de ruta
Fase 2 — extracción consciente del país, nivel e idioma (actualmente delegada al cliente de IA).
Fase 3 — primer adaptador HTML (Youth Opportunities), cobertura más amplia de fuentes de Nivel 2/Nivel 4.
Fase 4 — punto final HTTP alojado y transmitible para clientes que prefieren servidores MCP remotos.
Fase 5 — resumen semanal opcional por perfil guardado.
Los problemas abiertos con la etiqueta add a source son buenas primeras contribuciones.
Contribución
Las solicitudes de extracción son bienvenidas. La forma más rápida de ayudar es añadir una fuente que aún no indexamos: lea docs/ADAPTER_GUIDE.md y abra una PR. Consulte docs/CONTRIBUTING.md para la configuración de desarrollo, convenciones de prueba y expectativas del código de conducta.
git clone https://github.com/revolutionarybukhari/opportunity-mcp
cd opportunity-mcp
uv sync
uv run pytest
uv run ruff check .Licencia
MIT © Colaboradores de Opportunity MCP.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/revolutionarybukhari/opportunity-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server