Research Methods Library

io.github.mikenguyen13Published by GitHub account mikenguyen13v0.1.1Updated Oct 24, 2026

Research methods for AI assistants: study design guidance, R and Python code, and citations

VerifiedStreamable HTTPWeb executableKnowledge & MemoryDeveloper ToolsData & Analytics

Overview

AI-generated overview

Remote MCP server that grounds an assistant in research-methods texts: method recommendations, runnable R/Python/Julia code, and formatted citations.

What you can do
  • Search and read sections of textbooks, an R package and articles on statistics, econometrics and causal inference
  • Recommend statistical, econometric, causal inference or ML methods for a research question, with assumptions and packages
  • Get runnable R, Python or Julia code for a named estimator, test or modeling step
  • Format references in APA, Chicago, MLA, Harvard, BibTeX or RIS for the sections used
  • List the works in the library with topics, code languages, licenses and links
When to use it
Useful when an assistant is helping with study design, choosing a statistical or causal-inference method, writing a methods section, or producing code and citations for empirical research in economics, marketing, credit scoring or machine learning.
Requirements
A remote MCP endpoint added as a custom connector in an MCP-compatible client; no account or API key. Self-hosting is possible with Docker or Node.js.
Before you install
All tools are read-only and the server stores no user information, but some library works are served only as excerpts and carry all-rights-reserved licenses, so check the license and publisher terms before reusing text or code.

Installation

In SourceWeft

  1. Open Research Methods Library in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.mikenguyen13%2Fresearch-methods-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "research-methods-library": {
      "type": "http",
      "url": "https://research-methods-mcp.vercel.app/mcp"
    }
  }
}

README

[Image]

Research Methods Library

A Model Context Protocol server that grounds AI assistants in methodological texts: study design recommendations, identifying assumptions, runnable R and Python code, and a citation for every source.

[MIT license] [MCP: streamable HTTP]

The Research Methods Library is a Model Context Protocol (MCP) server. Given a research question, it recommends candidate designs, states their identifying assumptions, returns runnable R and Python code, and supplies a formatted citation for every source consulted. Its index contains approximately 19,000 sections from 9 books, an R package, and the author's research articles (listed under Sources) covering causal inference, econometrics, experimental design, marketing research, credit scoring, machine learning, and artificial intelligence.

The server works with Claude, ChatGPT, Amazon Bedrock AgentCore, Cursor, Visual Studio Code, and any other MCP-compatible client. Access is free and requires no account or API key.

Installation

Endpoint: https://research-methods-mcp.vercel.app/mcp. Access is free and requires no account or API key.

[Add to Cursor] [Install in VS Code]

ClientConfiguration
Claude (web, desktop, and mobile)Settings → Connectors → Add custom connector; enter the endpoint
Claude Codeclaude mcp add --transport http research-methods https://research-methods-mcp.vercel.app/mcp
ChatGPTSettings → enable developer mode → add a custom connector of type MCP server with the endpoint and no authentication
Amazon Bedrock AgentCoreAdd the endpoint as an MCP server target of an AgentCore Gateway, with no outbound authorization: agentcore add gateway-target --name research-methods --type mcp-server --endpoint https://research-methods-mcp.vercel.app/mcp --gateway <gateway>, then agentcore deploy
Cursor, Visual Studio CodeUse the buttons above
Windsurf, Cline, Zed, and other clientsAdd the following JSON to the client's MCP configuration
json
{  "mcpServers": {    "research-methods": {      "url": "https://research-methods-mcp.vercel.app/mcp"    }  }}

Example queries

States raised the minimum wage in different years. How do I estimate the effect on teen employment?

For this query the assistant calls choose_method, which returns staggered difference-in-differences together with its scope conditions, the reason a conventional two-way fixed-effects regression can be biased when treatment effects are heterogeneous, the assumptions to verify, implementations in R (did, fixest, didimputation, HonestDiD) and Python (csdid, pyfixest, differences), and the relevant readings.

[The query above answered in Claude through the connector, followed by a request for BibTeX references]

Give me Python code for a probability-of-default model with gradient boosting.

Only California passed the law and I have 30 years of state data. What can I do?

Write the methods section for my regression discontinuity and give me BibTeX for the sources.

Each response links to the specific section consulted and carries the citation of the work from which it is drawn.

Tools

ToolWhat it does
choose_methodMatches a research question to methods, with when to use each, key assumptions, R and Python packages, and readings. 62 curated methods.
searchFinds sections across all works, with links, snippets, code languages, and a citation. Compatible with ChatGPT deep research.
fetchReads a section in full, with its code, link, and citation. Compatible with ChatGPT deep research.
get_codeRunnable R, Python, or Julia code for a task, with the packages it uses.
citeReferences in APA, Chicago, MLA, Harvard, BibTeX, or RIS for the sections consulted, deduplicated by work.
list_sourcesThe works in the library (textbooks, an R package, and research articles), with topics, languages, licenses, and links.

Prompts (slash commands in clients that support them): plan_analysis, write_methods_section, explain_method. Resources: the library catalog and a table of contents for each work.

All tools are read-only. The server makes no calls to language models and stores no information about its users; see the privacy policy.

Sources

WorkCodeSectionsServedLicense
A Guide on Data AnalysisPython, R1,635Full textCC BY-NC-SA 4.0
causalverse: The All-in-One Causal Inference ToolkitR1,163Full text and function referenceGPL-3.0
Credit Scoring: Theory, Methods, and PracticePython2,639Full textCC BY 4.0 text, MIT code
Marketing Research: A Technical and Academic TreatmentPython, R1,842Excerpts and code; full text on the websiteAll rights reserved text, MIT code
AI in Action: A Reference for Artificial IntelligenceJulia, Python5,978Excerpts and code; full text on the websiteAll rights reserved
Advanced Data AnalysisPython, R1,844Full textCC BY 4.0
Applying Tidy Finance with Python to VietnamPython1,345Excerpts and code; full text on the websiteAll rights reserved
Tài Chính Ứng Dụng với PythonPython1,309Excerpts and code; full text on the websiteAll rights reserved
Machine Learning in PythonPython361Full textCC BY-SA 4.0
Social Science Theory: A Field Guide to the Theories, Effects, and Frameworks Behind Research and BusinessR1,118Full textCC BY 4.0 text, MIT code
Research Articles and Publications—7Abstracts, DOIs, and citationsPublishers' terms

Sections of A Guide on Data Analysis that appear in the Springer print volumes are cited as their published chapter, then the volume. For example, a section on causal inference is cited as Nguyen, M. (2025). Causal inference. In Experimental design (Vol. 4, pp. 7–48). Springer Cham. https://doi.org/10.1007/978-3-032-01839-7_2, in Nguyen, M. (2025). Experimental design (Vol. 4). Springer Cham. https://doi.org/10.1007/978-3-032-01839-7

Method

The source files of each work (.Rmd, .qmd, .Rd) are parsed into a single index of sections, code blocks, and citations. During index construction every link is verified against the published website: a section whose anchor is absent links to its chapter page, and unpublished pages are excluded. Queries are answered from the in-memory index; no database or language model is involved.

Self-hosting

bash
docker build -t research-methods-mcp .docker run -p 8080:8080 research-methods-mcp     # http://localhost:8080/mcp

Or with Node.js: npm ci && npm run build && npm start (listens on 127.0.0.1:8787; set HOST and PORT to change). The same handler runs on Vercel through api/index.mjs and vercel.json (the hosted endpoint) and on Deno Deploy through src/deno.ts.

Development

bash
npm cinpm run build:index   # parse the book repositories (sibling folders) into data/index.json.gznpm run build         # bundle dist/stdio.js and dist/http.jsnpm test              # end-to-end tests through real MCP clientsnpm run check-links   # audit every link in the index against the live sites

To add a book, add an entry to sources.yml and rebuild the index. To add or tune a method, edit methods.yml; the build fails if a method points at a section that does not exist.

Citation

Users are asked to cite the works they draw on; the cite tool formats the references. To cite the server itself, see CITATION.cff.

License

The server code is MIT licensed. The content it returns keeps each work's own license, listed above and by the list_sources tool.

Source: README.md at commit 8e91b5b

Tools

6

fetch

Read a library section

Read one section of the library by its section id. Returns the section in Markdown with its code, the section URL, and the citation of the work it comes from. Long sections come in parts; the text names the id of the next part.

Parametersidrequired

choose_method

Recommend analysis methods

Recommend statistical, econometric, causal inference, or machine learning methods for a research question or data analysis task: which statistical test or model fits the data, how to estimate a causal or treatment effect, how to analyze an A/B test or experiment, how many observations are needed (power and sample size), how to handle panel, time-series, survey, text, or survival data, and how to build predictive or credit-scoring models. Describe the question, the data (cross-section, panel, time series, experiment), how the treatment or exposure was assigned, and the outcome. Returns candidate methods with when each applies, key assumptions, R and Python packages, and the library sections that teach them.

Parameterslimitlanguagequestionrequired

get_code

Get runnable R, Python, or Julia code

Get runnable code from the library for a specific statistical, econometric, causal inference, or machine learning task, in R, Python, or Julia. Suited to requests for code that carries out a named estimator, test, or modeling step; it returns code with brief context, not an explanation of the method. Results can be restricted to one language or one work. Returns code blocks with the section they come from, the packages they use, a link, and a citation.

Parameterslimittopicrequiredsourcelanguage

cite

Format references

Format references for works in the library in APA, Chicago, MLA, Harvard, BibTeX, or RIS. Pass the ids of the sections you used to get a deduplicated reference list plus the section links, or pass source ids to cite whole works. With no ids, returns a reference for every work in the library.

Parametersidsstyle

list_sources

List the works in the library

List the works in the library (textbooks, an R package, and research articles) with their topics, code languages, section counts, licenses, links, and how to cite each one. Suited to questions about what the library covers or which work to consult. Takes no parameters and returns one entry per work.

Takes no parameters.

Version history

2
  1. v0.1.1LatestOct 16, 2026
  2. v0.1.0Oct 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts