Spaces:
Runtime error
Runtime error
File size: 998 Bytes
7498f2c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
from __future__ import annotations
import asyncio
from typing import Callable, Awaitable
from mcp.server import Server
from services.web_research import get_role_guidelines
from services.llm import llm
def create_common_tools(server: Server) -> None:
@server.tool()
async def research_guidelines(role_title: str, job_description: str) -> str:
"""Fetch latest best-practice guidance for a role (uses Tavily if configured)."""
return get_role_guidelines(role_title, job_description)
@server.tool()
async def llm_refine(system_prompt: str, user_prompt: str, max_tokens: int = 800) -> str:
"""Refine a text snippet using the configured LLM provider (OpenAI/Anthropic/Gemini)."""
return llm.generate(system_prompt, user_prompt, max_tokens=max_tokens)
def run_server(server: Server, host: str = "127.0.0.1", port: int = 8765) -> None:
# Minimal run loop for development embedding
asyncio.run(server.run_stdio_async()) |