Skip to main content
Glama
RenanMiqueloti

mcp-tools-server

mcp-tools-server

Servidor MCP (Model Context Protocol) de propósito general con herramientas de utilidad listas para ser consumidas por cualquier agente compatible.

Demuestra la implementación server-side de MCP: la mayoría de los proyectos solo consumen servidores. Este proyecto implementa uno.


Herramientas expuestas

Herramienta

Qué hace

datetime_info

Fecha, hora UTC, timestamp Unix, día de la semana, semana ISO

calculate

Evalúa expresiones matemáticas de forma segura (math completo)

text_stats

Palabras, frases, caracteres y tokens estimados de un texto

json_extract

Extrae valores de JSON mediante dot-path (user.address.city)

search_knowledge

Búsqueda en la base de conocimientos: stub listo para conectar a Qdrant

http_get

GET HTTP con lista de permitidos (allowlist) de dominios


Related MCP server: aleostudio MCP Server

Inicio rápido

git clone https://github.com/RenanMiqueloti/mcp-tools-server.git
cd mcp-tools-server
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python server.py

Conectar a Claude Desktop

Añada en ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "mcp-tools": {
      "command": "python",
      "args": ["/caminho/absoluto/para/server.py"]
    }
  }
}

Reinicie Claude Desktop. Las herramientas estarán disponibles automáticamente.


Conectar a un agente LangGraph

from langchain_mcp_adapters.client import MultiServerMCPClient
from langgraph.prebuilt import create_react_agent
from langchain_anthropic import ChatAnthropic

client = MultiServerMCPClient({
    "mcp-tools": {
        "command": "python",
        "args": ["server.py"],
        "transport": "stdio",
    }
})

tools = await client.get_tools()
agent = create_react_agent(ChatAnthropic(model="claude-opus-4-6"), tools)
result = await agent.ainvoke({"messages": [("human", "What day of the week is it?")]})

En server.py, sustituya el stub en el manejador search_knowledge:

from qdrant_client import QdrantClient
from langchain_openai import OpenAIEmbeddings

client_q = QdrantClient(url=os.getenv("QDRANT_URL"))
embeddings = OpenAIEmbeddings()

query_vec = embeddings.embed_query(query)
hits = client_q.search("knowledge", query_vector=query_vec, limit=top_k)
results = [{"rank": i+1, "text": h.payload["text"], "score": h.score} for i, h in enumerate(hits)]

Estructura

mcp-tools-server/
├── server.py         # Servidor MCP completo (stdio transport)
├── requirements.txt
├── .env.example
└── LICENSE

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    A general-purpose MCP server that provides utility tools for echo, date/time, and file operations within Claude Code and Claude Desktop. It functions as an extensible framework designed to help developers easily build and register custom Python-based tools.
    11
    -
  • F
    license
    A
    quality
    D
    maintenance
    A lightweight MCP server providing utility tools for math, text processing, data conversion, and URL fetching. It supports both STDIO and SSE communication modes for seamless integration with Claude Desktop and remote AI agents.
    5
    1
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    A sample MCP server that provides basic arithmetic tools like addition, subtraction, multiplication, and division. It serves as a demonstration for implementing the Model Context Protocol and connecting custom tools to clients like Claude Desktop.
    -