Tawaz MCP
<div align="center">
# Tawaz DocStudio
### *The Ultimate Research & Documentation Engine*
**Transform how you create documents, diagrams, charts, and citations — all from one MCP server.**
[](https://modelcontextprotocol.io)
[](https://nodejs.org)
[](https://python.org)
[](LICENSE)
---
**Tawaz MCP** is not just another document generator. It's a full-featured research workflow engine that turns your AI assistant into a documentation powerhouse.
Create Word docs. Build PowerPoint decks. Generate Excel sheets. Draw flowcharts. Render charts. Manage citations. All with a single tool call.
</div>
---
## Why Tawaz DocStudio?
| Feature | Description |
|:--------|:------------|
| **DOCX** | Create & edit Word documents with headings, tables, bullets |
| **PPTX** | Build PowerPoint presentations with styled slides |
| **XLSX** | Generate Excel spreadsheets with multiple sheets |
| **Diagrams** | Flowcharts, org charts, mind maps via Graphviz |
| **Charts** | Bar, line, scatter, pie, heatmap via Matplotlib |
| **Citations** | Parse BibTeX/RIS, generate APA/MLA/IEEE bibliographies |
| **Search** | Global search across all documents in a project |
| **Structure** | Auto-create research project folder layouts |
---
## Installation
### Prerequisites
- [Node.js](https://nodejs.org/) 18+
- [Python](https://python.org/) 3.x
- [Graphviz](https://graphviz.org/download/) (for diagrams) — add to PATH
### Setup
```bash
# Clone the repo
git clone https://github.com/Rockstar-1281/tawaz-mcp.git
cd tawaz-mcp
# Install Node.js dependencies
npm install
# Install Python dependencies
py -m pip install graphviz matplotlib bibtexparser pillow
```
---
## Works Everywhere
Tawaz MCP uses the **Model Context Protocol (MCP)** — an open standard supported by all major AI coding tools. Works with:
| Client | Config Location |
|:-------|:----------------|
| **OpenCode** | `~/.config/opencode/opencode.json` |
| **Claude Code** | `~/.claude/settings.json` or project `.mcp.json` |
| **Codex CLI** | `~/.codex/config.toml` |
| **Cursor** | `~/.cursor/mcp.json` |
| **Windsurf** | `~/.windsurf/mcp.json` |
| **Zed** | `~/.zed/settings.json` |
| **Cline** | `~/.cline/mcp.json` |
| **Custom Apps** | Any MCP client — just point to the server |
### OpenCode
```json
{
"mcpServers": {
"tawaz": {
"command": "node",
"args": ["C:\\path\\to\\tawaz-mcp\\index.js"]
}
}
}
```
### Claude Code
```json
{
"mcpServers": {
"tawaz": {
"command": "node",
"args": ["C:\\path\\to\\tawaz-mcp\\index.js"]
}
}
}
```
### Codex CLI
```toml
[mcp_servers.tawaz]
command = "node"
args = ["C:\\path\\to\\tawaz-mcp\\index.js"]
```
### Cursor / Windsurf
```json
{
"mcpServers": {
"tawaz": {
"command": "node",
"args": ["C:\\path\\to\\tawaz-mcp\\index.js"]
}
}
}
```
> **Note:** Replace `C:\path\to\tawaz-mcp` with the actual path to your cloned repo.
---
## Available Tools
### Document Tools
| Tool | What it does |
|:-----|:-------------|
| `create_docx` | Create Word docs with headings, tables, bullets |
| `edit_docx` | Append, prepend, or replace content in existing DOCX |
| `create_pptx` | Build PowerPoint presentations |
| `edit_pptx` | Add new slides to existing PPTX |
| `create_xlsx` | Generate Excel spreadsheets |
| `edit_xlsx` | Add rows, update cells, manage sheets |
### Visual Intelligence
| Tool | What it does |
|:-----|:-------------|
| `create_diagram` | Generate flowcharts, org charts, mind maps (Graphviz) |
| `create_chart` | Create bar, line, scatter, pie, heatmap charts (Matplotlib) |
### Citation Management
| Tool | What it does |
|:-----|:-------------|
| `parse_references` | Parse BibTeX, RIS, or JSON citation files |
| `generate_bibliography` | Generate APA, MLA, Chicago, IEEE bibliographies |
| `format_citation` | Format individual in-text citations |
### Project Utilities
| Tool | What it does |
|:-----|:-------------|
| `create_project_structure` | Scaffold a research project folder |
| `search_in_folder` | Search across all docs in a folder |
| `get_file_info` | Get file metadata |
---
## Examples
### Create a Flowchart
```javascript
create_diagram({
type: "flowchart",
output: "./assets/diagrams/methodology",
title: "Research Methodology",
data: "Data Collection -> Analysis -> Validation -> Report"
});
```
### Generate a Chart
```javascript
create_chart({
type: "bar",
output: "./assets/charts/sales",
title: "Q3 Sales",
data: JSON.stringify({ "Widget A": 150, "Widget B": 200, "Widget C": 180 }),
ylabel: "Units Sold"
});
```
### Parse BibTeX References
```javascript
parse_references({
inputPath: "./references.bib",
format: "bibtex"
});
```
### Generate APA Bibliography
```javascript
generate_bibliography({
references: JSON.stringify([
{
key: "smith2023",
type: "article",
fields: {
author: "Smith, John",
title: "AI Research",
year: "2023",
journal: "Nature"
}
}
]),
style: "apa"
});
```
### Create a Research Project
```javascript
create_project_structure({
projectName: "my-research",
basePath: "C:\\Users\\user\\Documents"
});
```
Creates:
```
my-research/
├── assets/
│ ├── diagrams/
│ ├── charts/
│ └── images/
├── citations/
├── documents/
└── exports/
```
### Build a DOCX Report
```javascript
create_docx({
outputPath: "./report.docx",
title: "Research Report",
content: [
{ type: "heading", text: "1. Introduction", level: 1 },
{ type: "paragraph", text: "This report presents our findings." },
{ type: "heading", text: "2. Methodology", level: 1 },
{ type: "paragraph", text: "See Figure 1 for the process flow." },
{
type: "table",
rows: [
["Metric", "Value"],
["Sample Size", "1000"],
["Confidence", "95%"]
]
}
]
});
```
---
## Supported Formats
| Format | Create | Edit |
|:-------|:------:|:----:|
| DOCX | ✅ | ✅ |
| PPTX | ✅ | ✅ |
| XLSX | ✅ | ✅ |
---
## Visual Intelligence
| Diagram Type | Chart Type | Citation Style |
|:-------------|:-----------|:---------------|
| Flowchart | Bar | APA |
| Org Chart | Line | MLA |
| Mind Map | Scatter | Chicago |
| Mermaid | Pie | IEEE |
| | Heatmap | |
| | Grouped | |
---
## Contributing
Contributions welcome! Fork the repo, create a feature branch, and submit a PR.
```bash
git checkout -b feature/amazing-feature
git commit -m "Add amazing feature"
git push origin feature/amazing-feature
```
---
## License
ISC License — see [LICENSE](LICENSE) for details.
---
<div align="center">
**Built with ❤️ by [Rockstar-1281](https://github.com/Rockstar-1281)**
*Star ⭐ the repo if you find it useful!*
</div>
TDQS
Scored across 14 tools
Most tools target clearly distinct resource-action pairs, such as create_docx vs edit_docx or create_chart vs create_diagram. The citation-related tools (parse_references, generate_bibliography, format_citation) are related but distinguishable by their focus on parsing, bibliography generation, and single-citation formatting.
Tool names follow a consistent verb_noun snake_case pattern throughout: create_*, edit_*, parse_*, generate_*, search_*, get_*. The few non-create/edit names still use the same predictable style, making the naming convention coherent and easy to navigate.
With 14 tools, the set is well-scoped for a research document and reference management server. Each tool serves a distinct function without unnecessary redundancy or bloat.
The server covers the full create/edit lifecycle for DOCX, PPTX, and XLSX, plus reference parsing and bibliography generation, folder structure creation, search, and visualization. Minor gaps exist, such as no PDF conversion/export or a way to directly insert citations into documents, but most research workflows are reasonably supported.