api-doc-mcp-client
v1.0.0
Published
MCP client for dynamic API documentation retrieval
Maintainers
Readme
API Doc MCP Client
Um cliente MCP (Model Context Protocol) para recuperação dinâmica de documentação de APIs via HTTP.
🚀 Características
- Cliente MCP: Implementa o protocolo MCP para integração com assistentes de IA
- Chamadas HTTP Dinâmicas: Acessa rotas de documentação de APIs via HTTP
- Ferramentas Específicas: Ferramentas dedicadas para diferentes tipos de documentação
- Configuração Simples: Fácil configuração no Cursor ou outros clientes MCP
- Escalável: Suporta novas rotas sem modificação do código
📦 Instalação
Via npm (recomendado)
npm install api-doc-mcp-clientVia GitHub
git clone https://github.com/yourusername/api-doc-mcp-client.git
cd api-doc-mcp-client
npm install🔧 Configuração
Configuração no Cursor
Use o arquivo cursor-mcp-config.json:
{
"mcpServers": {
"api-doc-mcp-client": {
"command": "node",
"args": ["index.js"],
"env": {
"MCP_HTTP_URL": "http://127.0.0.1:3002"
}
}
}
}Variáveis de Ambiente
MCP_HTTP_URL: URL do servidor de documentação (padrão:http://127.0.0.1:3002)ENDPOINT: Endpoint base para documentação (padrão:/mcp/docs)
🛠️ Ferramentas Disponíveis
1. get_routes
Lista todas as rotas disponíveis no servidor de documentação.
Parâmetros:
random_string: String dummy para ferramentas sem parâmetros (obrigatório)
Exemplo:
get_routes({
random_string: "dummy"
})2. get_users_documentation
Recupera documentação específica do módulo de usuários.
Parâmetros:
random_string: String dummy para ferramentas sem parâmetros (obrigatório)
Exemplo:
get_users_documentation({
random_string: "dummy"
})3. get_contacts_documentation
Recupera documentação específica do módulo de contatos.
Parâmetros:
random_string: String dummy para ferramentas sem parâmetros (obrigatório)
Exemplo:
get_contacts_documentation({
random_string: "dummy"
})🌐 Funcionamento
O cliente MCP funciona como uma ponte entre assistentes de IA e servidores de documentação HTTP:
- Conecta via stdio: Comunica com clientes MCP através de entrada/saída padrão
- Faz chamadas HTTP: Acessa servidores de documentação via HTTP
- Retorna dados formatados: Fornece respostas estruturadas para o assistente
- Tratamento de erros: Gerencia erros de rede e servidor graciosamente
📁 Estrutura do Projeto
api-doc-mcp-client/
├── index.js # Cliente MCP principal
├── cursor-mcp-config.json # Configuração do Cursor
├── package.json # Configuração do npm
├── README.md # Este arquivo
└── restart-client.sh # Script de reinicialização🚀 Uso
Como Cliente MCP
- Configure o cliente no Cursor usando
cursor-mcp-config.json - O assistente de IA terá acesso às ferramentas de documentação
- Use as ferramentas para acessar documentação de APIs
Como Biblioteca
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
// Seu código MCP aqui📋 Exemplo de Uso
// 1. Listar rotas disponíveis
get_routes({
random_string: "list"
})
// 2. Obter documentação de usuários
get_users_documentation({
random_string: "users"
})
// 3. Obter documentação de contatos
get_contacts_documentation({
random_string: "contacts"
})🔄 Extensibilidade
O cliente é projetado para ser extensível:
- Novas Ferramentas: Adicione novas ferramentas no método
init() - Novos Endpoints: Configure novos endpoints via variáveis de ambiente
- Novos Módulos: Implemente ferramentas para novos módulos de documentação
🎯 Casos de Uso
- Desenvolvimento de APIs: Acesso rápido à documentação durante desenvolvimento
- Assistentes de IA: Integração com Cursor, Claude, e outros assistentes
- Documentação Dinâmica: Recuperação de documentação atualizada em tempo real
- Automação: Integração em pipelines de CI/CD para validação de documentação
🤝 Contribuição
- Fork o projeto
- Crie uma branch para sua feature (
git checkout -b feature/AmazingFeature) - Commit suas mudanças (
git commit -m 'Add some AmazingFeature') - Push para a branch (
git push origin feature/AmazingFeature) - Abra um Pull Request
📄 Licença
Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para detalhes.
🆘 Suporte
- Issues: GitHub Issues
- Documentação: GitHub Wiki
- Email: [email protected]
📈 Roadmap
- [ ] Suporte a autenticação HTTP
- [ ] Cache de documentação
- [ ] Suporte a múltiplos servidores
- [ ] Ferramentas para validação de documentação
- [ ] Integração com OpenAPI/Swagger
