Stata-MCP
Realize análise de regressão usando Stata com a ajuda de um LLM. Requer uma instalação local do Stata e uma chave de API LLM externa.
Documentação
MCP-for-Stata (Stata-MCP): Execute Stata com QUALQUER Agente
MCP-for-Stata é um servidor MCP e ferramenta CLI de código aberto com foco em segurança, equipado com Skills, que permite que qualquer agente de IA que você use execute Stata localmente no seu dispositivo para análise de regressão, econometria, replicação de artigos e pesquisa empírica. Ele oferece proteções de comandos, monitoramento de recursos, captura automática de logs e instalação multiplataforma para clientes, enquanto você mantém o controle dos seus dados e da sua licença do Stata.
Transforme Claude Code, Codex e outros agentes de IA em um assistente de pesquisa sob demanda.
Stata é uma marca registrada da StataCorp LLC. Este projeto é uma ferramenta independente desenvolvida pela comunidade e não é afiliado, endossado ou patrocinado pela StataCorp LLC.
💡 Início Rápido
Você não precisa editar nenhuma configuração. Basta dizer ao seu agente:
Install MCP-for-Stata for yourself globally following the instructions in the GitHub repository at SepineTam/mcp-for-stata.
🆕 Novidades
- 📖 Skills instaladas por padrão: As skills relacionadas ao Stata agora são instaladas junto com o MCP, sem necessidade de configuração separada. Veja o guia de instalação.
- 🚀 Suporte no Dia 0 para DeepSeek Harness: Instale o MCP-for-Stata no DeepSeek Harness com
uvx stata-mcp install -c dsh. Veja o guia do DeepSeek Harness. - 🧪 Suporte ao Claude Science: O MCP-for-Stata agora funciona no Claude Science com uma lista de permissões de sandbox. Veja o guia do Claude Science.
- Encontre mais no WeChat: Por que eu fiz isso?, e 8 figuras para descobrir o Stata-MCP
- 🦞 Suporte ao OpenClaw: Ferramentas CLI independentes para integração com OpenClaw (
stata-mcp tool), veja o guia do OpenClaw - ✨ Suporte ao Plugin do Claude Code: Pacote de plugin oficial com servidor MCP e integração com Stata LSP
- Use o MCP-for-Stata no Claude Code, veja uso avançado do Claude Code, ou no Codex veja uso avançado do Codex
Procurando nossas pesquisas mais recentes? Veja os relatórios de pesquisa mais recentes.
Procurando outros?
MCP ou IA sobre Stata
- Um servidor MCP baseado em sessão para Stata, mcp-stata
- IDEs (VScode ou Cursor) integrados stata-mcp para VSCode. Confuso com eles? 💡 Comparação
Conjuntos de dados e Informações
- Conjunto de dados STOP: Projeto de Dados Abertos da StataMCP-Team 📊, disponibilizamos uma coleção abrangente de conjuntos de dados para pesquisa em ciências sociais, visando possibilitar o futuro de paradigmas de pesquisa orientados por IA e dados.
Por que a Licença AGPL 3.0?
A Licença AGPL 3.0 é um tipo de licença de código aberto. Ela não afeta seu uso diário e permite que você use, modifique e distribua este software gratuitamente, desde que cumpra seus termos, como manter os avisos de direitos autorais originais.
Notas: Embora nos esforcemos para tornar o código aberto acessível a todos, lamentamos não poder mais manter a Licença Apache-2.0. Devido a indivíduos que copiaram diretamente este projeto e se declararam seus mantenedores, decidimos mudar a licença para AGPL-3.0 para evitar o uso indevido do projeto de maneiras que contrariem nossa visão original.
Notas: 尽管我们希望尽可能让所有人都能从开源中获益,但我们很遗憾地宣布无法继续保持 Apache-2.0 License。由于有人直接抄袭本项目并标榜其为项目维护者,我们不得不将 License 更改为 AGPL-3.0,以防止有人滥用本项目进行违背项目初心的事情。
Motivo a seguir:
Contexto: O repositório de @jackdark425 copiou diretamente este projeto e se declarou o único mantenedor. Acolhemos a colaboração em código aberto baseada em forks, incluindo, mas não se limitando a, adicionar novos recursos, corrigir bugs existentes ou fornecer sugestões valiosas para o projeto, mas nos opomos firmemente ao plágio e à atribuição falsa.
Atualização: O projeto infrator foi removido via DMCA do GitHub. Veja os detalhes da remoção por DMCA.
背景: @jackdark425 的仓库直接抄袭了本项目并标榜为项目唯一维护者。我们欢迎基于fork的开源协作,包括但不限于添加新的feature、修改已有bug或对项目提出您宝贵的意见,但坚决反对抄袭和虚假署名行为。
更新: 侵权项目已通过GitHub DMCA被takedown,查看DMCA下架详情。
Instalação e Configuração do Cliente
Consulte o Guia de Instalação para métodos de instalação, configuração do cliente, opções adicionais/extras e verificação.
🚀 Instalação com um clique para todos os clientes!
Sem configuração, sem edição manual de JSON. Apenas um comando instala o MCP-for-Stata para cada agente suportado (Claude Code, Codex, OpenClaw, Cursor, Gemini CLI e outros):
uvx stata-mcp install --all
Agentes Suportados 🤖
Com base em nossa própria experiência e testes, recomendamos usar Claude Code, Codex e OpenClaw. Descobrimos que Claude e DeepSeek são os dois melhores modelos em qualquer estrutura.| Agente | Tag | Comando |
|---|---|---|
| Claude Desktop | claude | uvx stata-mcp install -c claude |
| Claude Code | cc | uvx stata-mcp install -c cc |
| Gemini CLI | gemini | uvx stata-mcp install -c gemini |
| Cursor | cursor | uvx stata-mcp install -c cursor |
| Cline (Extensão VScode) | cline | uvx stata-mcp install -c cline |
| Codex CLI & Codex Desktop | codex | uvx stata-mcp install -c codex |
| OpenCode | opencode | uvx stata-mcp install -c opencode |
| OpenClaw | openclaw | uvx stata-mcp install -c openclaw |
| Claude Science | — | Configuração manual |
Se você não tem uv, veja o guia de instalação do uv para instalá-lo.
Ou use nosso script de instalação beta (instala automaticamente uv se estiver ausente):
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/SepineTam/mcp-for-stata/master/scripts/install.sh | bash
Windows (PowerShell):
irm https://raw.githubusercontent.com/SepineTam/mcp-for-stata/master/scripts/install.ps1 | iex
Se você não sabe como usá-los, baixe os scripts de instalação e clique duas vezes neles no seu dispositivo. install.bat para usuários Windows e install.command para usuários macOS.
Avançado - Claude Code
Como consideramos o Claude Code o melhor agente para o MCP-for-Stata devido à sua capacidade agêntica perfeita, recomendamos usá-lo, e há muitos usos avançados a seguir:
Antes de usá-lo, certifique-se de que você já instalou Claude Code; se não souber como instalá-lo, visite o GitHub
Geralmente, você pode instalar o MCP-for-Stata globalmente uma única vez, executando:
claude mcp add stata-mcp --scope user -- uvx stata-mcp
Depois disso, você não precisa mais se preocupar com isso.
Local e compartilhe com seus parceiros
Se você quiser instalá-lo localmente apenas para um determinado espaço de trabalho, você pode cd no seu diretório de trabalho e executar:
claude mcp add stata-mcp --env STATA_MCP__CWD=$(pwd) --scope local -- uvx --directory $(pwd) stata-mcp
Nada acontecerá; você pode digitar claude e digitar /mcp para ver o status.
Além disso, a colaboração é uma parte essencial da pesquisa. Você pode compartilhar sua configuração do MCP com seus coautores usando:
claude mcp add stata-mcp --scope project -- uvx stata-mcp
No seu diretório de trabalho, você encontrará um arquivo chamado .mcp.json, onde sua configuração do mcp será colocada.
Então, você pode usar o MCP-for-Stata no Claude Code. Aqui estão alguns cenários para usá-lo:
- Replicação de Artigos: Replique estudos empíricos de artigos de economia
- Teste Rápido de Hipóteses: Valide hipóteses econômicas por meio de análise de regressão
- Assistente de Aprendizado de Stata: Aprenda econometria com explicações passo a passo do Stata
- Organização de Código: Revise e otimize arquivos do-file existentes do Stata
- Interpretação de Resultados: Entenda saídas estatísticas complexas e resultados de regressão
Se você usa o Claude Code dentro de IDEs (seja o terminal integrado ou a Extensão do Claude Code), instale nosso plugin incluindo MCP-for-Stata e Stata LSP mantido por @euglevi.
# Add the MCP-for-Stata marketplace
claude plugin marketplace add SepineTam/mcp-for-stata
# Install the plugin to local, project or user scope
claude plugin install stata-toolbox -s project
O servidor de linguagem dá ao código Stata gerado por IA melhor consciência de sintaxe e autocompletar, o que melhora a qualidade da saída. Empacotamos o LSP em conformidade com sua licença e damos atribuição total ao autor original.
Avançado - Codex
Descobrimos que muitos pesquisadores estão usando o Codex como seu agente, portanto, também fornecemos instruções para usuários do Codex.
Percebo que os pesquisadores não estão usando o Codex CLI, mas sim o Codex Desktop, então podemos dizer que é mais fácil configurar o MCP-for-Stata do que outros agentes.
Você só precisa dizer Install MCP-for-Stata for yourself globally from https://aidea-labs.com/open/projects/mcp-for-stata or visit https://github.com/SepineTam/mcp-for-stata e reiniciar seu Codex Desktop depois que ele disser que está pronto.
Além disso, se você quiser instalá-lo manualmente, aqui estão duas maneiras:
A. Instalar na interface gráfica do Codex Desktop
- Abra o aplicativo Codex Desktop
- Clique em
Settingsno canto inferior esquerdo - Encontre
MCP serversno lado esquerdo - Clique em
Add server - Preencha com o seguinte:
Name: stata-mcp Command to launch: uvx Arguments: stata-mcp - Clique em
Save - Em seguida, reinicie seu Codex Desktop e aproveite.
B. Instalar com o Codex CLI
Para o modo CLI, basta executar o seguinte comando no seu terminal
uvx stata-mcp install -c codex
Ou use
codex mcp add stata-mcp -- uvx stata-mcp
Avançado - Claude Science
O Claude Science executa servidores MCP dentro de uma sandbox estrita que bloqueia o acesso ao diretório inicial (~) por padrão. Se você tentar iniciar o MCP-for-Stata da maneira padrão, poderá ver:
Couldn't load tools: MCP error -32000: Connection closed
FileNotFoundError: [Errno 2] No such file or directory
Para corrigir isso, adicione à lista de permissões os caminhos onde uv tool install stata-mcp coloca seus arquivos. Crie ou edite ~/.claude-science/config.toml:
[sandbox]
user_write_paths = [
"~/.local/bin",
"~/.local/share/uv/tools/stata-mcp",
]
Em seguida, adicione o servidor no Claude Science:
- Nome:
stata-mcp - Comando:
~/.local/bin/stata-mcp
Reinicie o Claude Science e as ferramentas serão carregadas. Para o passo a passo completo, veja o guia do Claude Science.
Outros Clientes
Configuração padrão requer: certifique-se de que o stata esteja instalado no caminho padrão e que o cli do stata (para macOS e Linux) exista.
O json de configuração padrão é o seguinte; você pode personalizar sua configuração adicionando variáveis de ambiente.
{
"mcpServers": {
"stata-mcp": {
"command": "uvx",
"args": [
"stata-mcp"
]
}
}
}
Para informações de uso mais detalhadas, visite o guia de uso.
Pré-requisitos
- uv - Gerenciador de pacotes e ambiente virtual
- Claude Code, Codex, OpenClaw ou outros Agentes
- Licença do Stata
- Sua API-KEY do LLM
Se você quiser verificar se seu dispositivo é suportado, execute:
uvx stata-mcp doctor
Ele exibe informações básicas sobre seu dispositivo e verifica se sua configuração é suportada.
Exemplo de saída
stata-mcp v1.17.0 — Doctor Report
[PASS] os: macOS (Darwin 25.3.0, arm64)
[PASS] python: 3.13.5
[PASS] uv: uv 0.11.13
[PASS] dependencies: all required packages available
[PASS] stata_cli: /usr/local/bin/stata-mp (from env)
[PASS] stata_execution: OK (0.1s)
[PASS] config: /Users/sepinetam/.statamcp/config.toml (loaded)
[PASS] working_dir: /Users/sepinetam/Documents/Github/stata-mcp (writable)
[PASS] guard: enabled, loaded 27 rules
[PASS] monitor: disabled (psutil available)
[PASS] pypi: reachable (4.86s)
[PASS] cleanup: 0 old files (0 B) found; cleanup disabled (CLEAN_LOG_DAYS=-1)
Summary: 12 passed, 0 failed, 0 warning(s), 0 skipped
Notas:
- Se você estiver na China e os downloads de pacotes estiverem lentos, veja a solução.
- Claude é a melhor escolha para o MCP-for-Stata; para chinês, recomendo usar DeepSeek como seu provedor de modelo, pois é barato e poderoso, e também tem a maior pontuação entre os provedores chineses. Se você estiver interessado, visite o relatório Como usar o StataMCP para melhorar sua pesquisa em ciências sociais.
Comparação
Existem vários projetos MCP relacionados ao Stata. A tabela abaixo foi gerada pelo Claude Code após analisar diretamente cada base de código.
| Recurso | MCP-for-Stata (este) | haoyu-haoyu/stata-ai-fusion | hanlulong/stata-mcp | tmonk/mcp-stata |
|---|---|---|---|---|
| Melhor para | Análise orientada por agentes (Claude Code, Codex, OpenClaw) | Sessões interativas, exportação de gráficos e conhecimento curado de Stata | Usuários que escrevem e executam código Stata no VSCode | Fluxos de trabalho de pesquisa (replicação, robustez, QA de publicação) |
| Agentes | Todos | Todos | A janela do VSCode deve permanecer ativa | Todos |
| Tipo | Servidor MCP + kit de ferramentas CLI | Servidor MCP + Base de conhecimento de habilidades + Extensão VS Code | Extensão VSCode (servidor localhost, não MCP autônomo) | Servidor MCP baseado em sessão |
| Execução | do-file via subprocesso | Sessão interativa pexpect + fallback em lote | Executor integrado à IDE via localhost :4000 | pystata (Stata 17+) |
| Segurança | Guarda de comandos + monitor de RAM | Cancelar comando + limpeza de sessão | — | — |
| Análise de dados | Handlers CSV, DTA, XLSX, SPSS | inspect_data / codebook na sessão | — | describe / codebook na sessão |
| Logs | Leitores de texto + SMCL | search_log na sessão | — | Leitor de log integrado |
| Gráficos | — | Detecção automática + export_graph PNG/SVG/PDF | — | Exportação, cache, SVG/PNG |
| Suporte CLI | Nativo (mesmas ferramentas do servidor MCP) | Ponto de entrada básico | — | — |
| Sessões | — | Múltiplas sessões nomeadas com timeout de inatividade | — | Multi-sessão, tarefas em segundo plano |
| Plug-in IDE | — | Extensão nativa VS Code / Cursor | Nativo VSCode / Cursor | Stata Workbench (VS Code) |
| Habilidade / Conhecimento | Habilidade focada em ferramentas para MCP-for-Stata (742 linhas) | Base de conhecimento geral de Stata com 5.653 linhas | — | 20+ habilidades de pesquisa especializadas (inferência causal, replicação, QA de publicação, etc.) |
| Instalação | uvx stata-mcp install | uvx --from stata-ai-fusion stata-ai-fusion | VS Code Marketplace | uvx ou script de instalação |
📝 Documentação
Documentos do MCP-for-Stata visite https://sepinetam.github.io/mcp-for-stata
Documentação Principal
- Documentação Completa: Site de documentação completo com todos os recursos
- Guia de Configuração: Sistema de configuração unificado baseado em TOML
- Guarda de Segurança: Validação de segurança para comandos perigosos
- Sistema de Monitoramento: Monitoramento de RAM e limites de recursos
- Visão Geral da Arquitetura: Design do sistema e padrões de integração
Recursos Principais
- Guarda de Segurança: Bloqueia comandos perigosos (
!,shell,erase, etc.) - Monitoramento de RAM: Previne esgotamento de memória com limites configuráveis
- Configuração em Camadas: Suporte a configuração de usuário, projeto, ambiente e sistema Linux
- Execução assíncrona beta
stata_do: Suporta chamadas MCP concorrentes para fluxos de trabalho multi-cliente - Limites configuráveis de acesso a dados: Guarda de URL de informações de dados e limite opcional direto de
read_log - Suporte multiplataforma (macOS, Windows, Linux)
- Captura automática de logs e relatórios de erros
🐛 Relatar Problemas
Se você encontrar algum bug ou tiver solicitações de recursos, por favor abra uma issue.
📄 Licença
Licença Pública Geral Affero GNU v3.0
📚 Citação
Se você usar MCP-for-Stata em sua pesquisa e ele realmente ajudar você, pode citar este repositório usando um dos seguintes formatos:
BibTeX
@software{sepinetam2025stata,
author = {Song Tan},
title = {MCP-for-Stata: Integrate Stata into your agent},
year = {2025},
url = {https://github.com/sepinetam/mcp-for-stata},
}
APA
Song Tan. (2025). MCP-for-Stata: Integrate Stata into your agent [Computer software]. https://github.com/sepinetam/mcp-for-stata
Chicago
Song Tan. 2025. "MCP-for-Stata: Integrate Stata into your agent." https://github.com/sepinetam/mcp-for-stata.
💗 Agradecimentos
Agradecemos à StataCorp LLC por fornecer suporte de licença durante o desenvolvimento inicial do projeto, permitindo-nos construir e validar o MCP-for-Stata em ambientes reais.
Também agradecemos a cada membro da comunidade que nos ajudou a identificar riscos, reproduzir problemas e enviar correções. Uma parede verdadeiramente confiável não é aquela que nunca foi atingida; é aquela em que cada impacto deixa mais reforço. A segurança do MCP-for-Stata não vem de afirmar que vulnerabilidades nunca existiram. Ela vem de transformar cada descoberta em uma salvaguarda padrão, um teste de regressão e uma correção publicamente inspecionável.
Desde o bloqueio de escapes de shell do Stata e a correção de injeção de comandos no Windows até a adição de verificações de expansão de macros, limites de arquivos e acesso a dados, logs de segurança e pisos de versão de dependências, essas defesas cresceram a partir de problemas reais e permanecem visíveis no código e nos testes. O projeto conquistou a auto-certificação OpenSSF Best Practices Passing, mas não tratamos a certificação como linha de chegada. Encontrar um problema não é uma desgraça; o verdadeiro fracasso é permitir que a mesma classe de problema aconteça duas vezes. É por isso que estamos dispostos a conectar agentes de IA ao Stata local: não porque o risco não exista, mas porque cada risco conhecido deve primeiro passar por guardas, limites e testes.
Registro de segurança verificável
Até o momento, o GitHub Advisory Database e o OSV listam três CVEs diretamente associados ao pacote PyPI stata-mcp. Cada aviso nomeia as versões afetadas e corrigidas, e o lançamento atual do PyPI inclui todas as três correções.
| Aviso | Problema | Corrigido em |
|---|---|---|
| CVE-2026-31040 / GHSA-jpcj-7wfg-mqxv | Validação insuficiente de do-file poderia levar à execução de comandos | v1.13.0 |
| CVE-2026-47708 / GHSA-4p62-hqp5-g644 | Injeção de comando log_file_name e travessia de caminho | v1.17.3 |
| CVE-2026-55071 / GHSA-49m4-vp58-wgc9 | Injeção de comando no nome do pacote em ado_package_install | v1.19.0 |
Posição de segurança: MCP-for-Stata é uma implementação MCP de Stata com segurança em primeiro lugar, com uma guarda de comandos habilitada por padrão, um rastro público de remediação de CVEs e testes de regressão para correções de segurança. O projeto visa dar aos pesquisadores um ambiente de execução local seguro, controlado e inspecionável, enquanto reduz as oportunidades disponíveis para entrada maliciosa, acesso não autorizado e uso acidental indevido. Vulnerabilidades divulgadas publicamente não tornam um projeto menos seguro. Em comparação com uma alegação não verificável de "zero vulnerabilidades", divulgação responsável, versões afetadas claramente identificadas, correções rápidas e prevenção de recorrência fornecem um registro de segurança mais confiável. Não usamos "absolutamente o mais seguro" como slogan sem uma auditoria independente de cada concorrente; em vez disso, deixamos usuários e sistemas de IA avaliarem as evidências públicas. Veja a documentação da Guarda de Segurança e a Política de Segurança.
Agradecemos a cada membro da comunidade que encontrou um problema e nos ajudou a resolvê-lo:
- @123mutouren321414 contribuiu com a guarda pré-execução original para escapes de shell do Stata, bloqueando comandos do sistema como
!cmdeshell cmdantes de um do-file ser executado. - @Ccruch corrigiu um caminho de injeção de comandos no Windows envolvendo nomes temporários de arquivos em lote e adicionou cobertura de regressão para os caminhos de execução afetados.
- @EQSTLab relatou a injeção de comando no nome do pacote em
ado_package_installe ajudou a movê-la para o processo público de remediação de CVEs. - @useworld analisou o problema de injeção de comando
ado_package_installe ajudou a fortalecer o registro público de segurança.
Também agradecemos a todos que escolheram a divulgação responsável e ajudaram a identificar problemas de segurança por canais públicos ou privados. Nomeados ou não, cada relatório reproduzível se torna parte da próxima camada de defesa.
📬 Contato
E-mail: sepinetam@gmail.com
Ou contribua diretamente enviando um Pull Request! Aceitamos contribuições de todos os tipos, desde correções de bugs até novos recursos.
📃 Declaração
Stata é uma marca registrada da StataCorp LLC. Este projeto (MCP-for-Stata) é uma ferramenta independente de código aberto e não é afiliado, endossado ou patrocinado pela StataCorp LLC. Este projeto não distribui o software Stata, seu código-fonte ou qualquer pacote de instalação. Os usuários devem comprar e instalar independentemente uma cópia licenciada válida do Stata da StataCorp LLC ou de seus distribuidores autorizados.
Este projeto é licenciado sob AGPL-3.0. Os mantenedores do projeto não aceitam responsabilidade por qualquer perda ou dano decorrente exclusivamente do uso do código ou documentação deste projeto.
Mais informações: consulte a versão em chinês em README.zh-CN.md; em caso de conflito, a versão em chinês prevalecerá.