Claude TypeScript MCP Servers

by ukkz

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Provides web search and local search functionality using the Brave Search API to retrieve information from the web and find information about local businesses, services, and attractions.

  • Enables Git operations including viewing repository status, showing differences, committing changes, managing staging, viewing logs, creating branches, and initializing repositories.

  • Supports running Node.js development commands through the Shell MCP server for JavaScript/TypeScript development tasks.

Servidores MCP de Claude TypeScript

Una colección de servidores de Protocolo de Contexto de Modelo (MCP) dirigidos a desarrolladores de software que utilizan LLM para asistencia en el desarrollo. Si bien muchos desarrolladores prefieren Cline por su integración directa con VSCode, utiliza una API de pago por uso que se vuelve costosa con un uso intensivo. Este proyecto aprovecha la suscripción de tarifa plana de Claude Pro conectando la aplicación Claude Desktop con servidores MCP personalizados, lo que proporciona capacidades de asistencia en el desarrollo comparables sin los costos variables.

日本語による解説記事: Cline任せでコード書いてたらAPIクレジットが爆散したのでClaude Desktop + MCPをいい感じにしてサブスクだけで無双する

Descripción general

Este proyecto implementa varios servidores MCP que se pueden utilizar con Claude Desktop para mejorar sus capacidades de desarrollo de software:

  • Brave Search : proporciona funciones de búsqueda web y búsqueda local mediante la API de Brave Search
  • Sistema de archivos : permite operaciones del sistema de archivos con restricciones de seguridad
  • Git : proporciona la funcionalidad de Git para administrar repositorios.
  • GitHub : permite la interacción con repositorios de GitHub, problemas, solicitudes de extracción y más.
  • Shell : permite la ejecución de comandos de shell en un entorno controlado
  • Puppeteer : permite la automatización del navegador y la interacción web a través de Puppeteer
  • Obtener : recupera contenido de las URL y convierte HTML a Markdown para mejorar la legibilidad

Requisitos

Instalación

  1. Clonar el repositorio:
    git clone https://github.com/yourusername/claude-ts-mcps.git cd claude-ts-mcps
  2. Instalar dependencias:
    bun install

Configuración

Para usar estos servidores MCP con Claude Desktop, necesita crear un archivo de configuración que le indique a Claude cómo conectarse a ellos. A continuación, se muestra un ejemplo de configuración:

{ "mcpServers": { "brave-search": { "command": "/Users/username/.bun/bin/bun", "args": [ "run", "/Users/username/Documents/claude-ts-mcps/src/brave-search.ts" ], "env": { "BRAVE_API_KEY": "YOUR_BRAVE_API_KEY" } }, "filesystem": { "command": "/Users/username/.bun/bin/bun", "args": [ "run", "/Users/username/Documents/claude-ts-mcps/src/filesystem.ts", "/Users/username" ] }, "git": { "command": "/Users/username/.bun/bin/bun", "args": [ "run", "/Users/username/Documents/claude-ts-mcps/src/git.ts" ] }, "github": { "command": "/Users/username/.bun/bin/bun", "args": [ "run", "/Users/username/Documents/claude-ts-mcps/src/github.ts" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_DEFAULT_TOKEN", "GITHUB_TOKEN_WORK": "YOUR_WORK_ACCOUNT_TOKEN", "GITHUB_TOKEN_PERSONAL": "YOUR_PERSONAL_ACCOUNT_TOKEN" } }, "shell": { "command": "/Users/username/.bun/bin/bun", "args": [ "run", "/Users/username/Documents/claude-ts-mcps/src/shell.ts" ] }, "puppeteer": { "command": "/Users/username/.bun/bin/bun", "args": [ "run", "/Users/username/Documents/claude-ts-mcps/src/puppeteer.ts" ] }, "fetch": { "command": "/Users/username/.bun/bin/bun", "args": [ "run", "/Users/username/Documents/claude-ts-mcps/src/fetch.ts" ], "env": { "CUSTOM_USER_AGENT": "YOUR_CUSTOM_USER_AGENT", // Optional "IGNORE_ROBOTS_TXT": "false" // Optional, set to true to ignore robots.txt } } } }

Guarde esta configuración como claude_desktop_config.json y configure Claude Desktop para usarla.

Compatibilidad con varias cuentas de GitHub

El servidor MCP de GitHub permite cambiar entre varias cuentas de GitHub. Puedes configurar varios perfiles de cuenta configurando las variables de entorno:

"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_DEFAULT_TOKEN", // Default account (backward compatible) "GITHUB_TOKEN_WORK": "YOUR_WORK_ACCOUNT_TOKEN", // Work account profile "GITHUB_TOKEN_PERSONAL": "YOUR_PERSONAL_ACCOUNT_TOKEN" // Personal account profile }

Para usar un perfil de cuenta específico en sus solicitudes, agregue el parámetro account_profile a cualquier llamada a la API de GitHub:

{ "owner": "username", "repo": "repo-name", "path": "path/to/file.txt", "account_profile": "work" // Will use the GITHUB_TOKEN_WORK environment variable }

Si no se especifica ningún account_profile , se utilizará el GITHUB_PERSONAL_ACCESS_TOKEN predeterminado.

Obtener la configuración del servidor

El servidor Fetch MCP proporciona opciones de personalización a través de variables de entorno:

"env": { "CUSTOM_USER_AGENT": "YOUR_CUSTOM_USER_AGENT", // Optional: Specify a custom User-Agent header "IGNORE_ROBOTS_TXT": "false" // Optional: Set to "true" to bypass robots.txt rules }
  • CUSTOM_USER_AGENT : le permite definir una cadena de agente de usuario específica para solicitudes HTTP, lo que puede ser útil cuando ciertos sitios web restringen el acceso en función de la identificación del cliente.
  • IGNORE_ROBOTS_TXT : Por defecto (falso), el servidor de búsqueda respeta las reglas de robots.txt que los sitios web establecen para controlar los rastreadores web. Si se establece en "true", se desactiva esta restricción, pero se recomienda su uso responsable.

Uso

  1. Iniciar Claude Desktop
  2. Cargar el archivo de configuración
  3. Claude ahora tendrá acceso a las herramientas adicionales proporcionadas por estos servidores MCP

Desarrollo

Cada servidor MCP se implementa como un archivo TypeScript independiente en el directorio src :

  • src/brave-search.ts : Integración de la API de Brave Search
  • src/filesystem.ts : Operaciones del sistema de archivos
  • src/git.ts : Operaciones de Git
  • src/github.ts : Integración de API de GitHub para gestión de repositorios, problemas, solicitudes de incorporación de cambios, etc.
  • src/shell.ts : Ejecución de comandos de shell
  • src/puppeteer.ts : Automatización del navegador e interacción web
  • src/fetch.ts : Recuperación de contenido de URL y conversión de HTML a Markdown

El servidor MCP de GitHub tiene una estructura modular:

  • src/github/common/ : Utilidades, interfaces y tipos comunes
  • src/github/operations/ : Implementación de varias operaciones de la API de GitHub
  • src/github/tools/ : Definiciones de herramientas para el servidor MCP

Para agregar nueva funcionalidad:

  1. Crea un nuevo archivo TypeScript en el directorio src
  2. Implementar el servidor MCP usando @modelcontextprotocol/sdk
  3. Añade el nuevo servidor a tu configuración de Claude Desktop

Consideraciones de seguridad

  • El sistema de archivos y los servidores de shell incluyen medidas de seguridad para evitar el acceso no autorizado.
  • Siempre valide la entrada del usuario antes de ejecutar comandos
  • Tenga cuidado al configurar directorios permitidos para el acceso al sistema de archivos
  • Utilice la lista de permitidos de comandos para el servidor de shell para restringir los comandos ejecutables
  • El servidor de búsqueda respeta las directivas robots.txt de forma predeterminada para evitar el rastreo de sitios restringidos.
  • Almacene sus tokens de acceso personal de GitHub de forma segura y utilice los permisos de token adecuados

Referencias

Licencia

Licencia MIT

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Una colección de servidores de protocolo de contexto de modelo que permiten a Claude Desktop proporcionar capacidades de asistencia al desarrollo con sistema de archivos, Git, comandos de shell y funcionalidades de búsqueda web sin incurrir en costos de uso de API.

  1. Overview
    1. Requirements
      1. Installation
        1. Configuration
          1. Multiple GitHub Account Support
          2. Fetch Server Configuration
        2. Usage
          1. Development
            1. Security Considerations
              1. References
                1. License
                  ID: s0v7ilayxa