Tools Reference
This page documents all available tools in the WPNuxt MCP server.
WordPress Discovery Tools
wp_connect
Connect to a WordPress site for the current session.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
wordpressUrl | string | Yes | WordPress site URL (e.g., https://your-site.com) |
Example:
Connect to https://wordpress.wpnuxt.com
Returns: Site information including title, description, language, and GraphQL endpoint status.
wp_get_site_settings
Fetch WordPress general settings (site title, tagline, URL, etc.).
Parameters: None
Returns: Site title, description, URL, language, and reading settings.
wp_list_content_types
List all content types in WordPress including custom post types.
Parameters: None
Returns: Array of content types with:
name- Internal name (e.g.,post,page,product)graphqlSingleName- Singular GraphQL namegraphqlPluralName- Plural GraphQL namehierarchical- Whether content supports parent/child relationships
wp_list_taxonomies
List all taxonomies (categories, tags, custom taxonomies).
Parameters: None
Returns: Array of taxonomies with GraphQL names and associated content types.
wp_list_menus
List all WordPress navigation menus with their items.
Parameters: None
Returns: Array of menus with:
name- Menu nameslug- Menu sluglocations- Theme locations where menu is assigneditems- Menu items with labels, URLs, and hierarchy
wp_detect_plugins
Detect installed WordPress plugins by analyzing the GraphQL schema.
Parameters: None
Returns: Detected plugins including:
- WooCommerce
- Advanced Custom Fields (ACF)
- Yoast SEO
- WPGraphQL extensions
- Headless Login for WPGraphQL
wp_list_blocks
Analyze Gutenberg blocks used across the site.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sampleSize | number | No | Number of posts/pages to scan (10-100, default 50) |
Returns: Block usage statistics including:
- Core blocks (paragraph, heading, image, etc.)
- Custom/plugin blocks
- Usage frequency
- Sample attributes
Content Fetching Tools
wp_fetch_posts
Fetch posts from WordPress.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
first | number | No | Number of posts (1-100, default 10) |
after | string | No | Cursor for pagination |
Returns: Posts with title, excerpt, content, featured image, author, and categories.
wp_fetch_pages
Fetch pages from WordPress.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
first | number | No | Number of pages (1-100, default 10) |
after | string | No | Cursor for pagination |
Returns: Pages with title, content, featured image, and parent/child hierarchy.
wp_sample_content
Get sample content for development and testing.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
contentType | string | No | Content type to sample (default: post) |
count | number | No | Number of items (1-10, default 3) |
Returns: Sample content items with full data structure.
wp_query
Execute a custom GraphQL query against WordPress.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
query | string | Yes | GraphQL query string |
variables | object | No | Query variables |
Returns: Raw GraphQL response.
Code Generation Tools
wpnuxt_init
Generate a complete WPNuxt project based on WordPress site analysis.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
projectName | string | Yes | Project folder name |
packageManager | string | No | pnpm, npm, yarn, or bun (default: pnpm) |
includeNuxtUI | boolean | No | Include Nuxt UI v4 (default: true) |
generatePages | boolean | No | Generate page components (default: true) |
generateComponents | boolean | No | Generate content components (default: true) |
setupMenus | boolean | No | Generate menu components (default: true) |
generateQueries | boolean | No | Generate GraphQL queries (default: true) |
Returns: Complete project files including:
nuxt.config.tspackage.jsonapp.vue- Default layout
- Home page
- Environment files
wpnuxt_generate_pages
Generate Nuxt page components for WordPress content types.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
contentTypes | string | No | Content types to generate pages for |
includeHome | boolean | No | Generate home page (default: true) |
includeCatchAll | boolean | No | Generate catch-all route (default: true) |
displayPreferences | object | No | Layout preferences per content type |
Returns: Page components with:
- Archive (index) pages
- Single item pages
- Catch-all route for WordPress URIs
wpnuxt_generate_components
Generate Vue components for WordPress content types.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
contentTypes | string | No | Content types (default: post, page) |
includeTaxonomies | boolean | No | Generate taxonomy lists (default: true) |
includeUtilities | boolean | No | Generate utility components (default: true) |
Returns: Components including:
PostCard.vue/PageCard.vue- Content preview cardsPostsList.vue/PagesList.vue- Grid list componentsCategoriesList.vue/TagsList.vue- Taxonomy listsFeaturedImage.vue- Responsive image component
wpnuxt_generate_queries
Generate custom GraphQL queries for content types.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
contentTypes | string | No | Content types to generate queries for |
includeFragments | boolean | No | Include reusable fragments (default: true) |
Returns: GraphQL query files for the extend/queries/ folder.
wpnuxt_generate_block_renderers
Generate Vue components for rendering Gutenberg blocks.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
includeCore | boolean | No | Include core block renderers (default: true) |
includeCustom | boolean | No | Include custom/plugin blocks (default: true) |
Returns: Block renderer components including:
BlockRenderer.vue- Main renderer componentCoreParagraph.vue,CoreHeading.vue, etc. - Core blocks- Custom block components based on detected usage
wpnuxt_setup_menus
Generate navigation menu components.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
menuName | string | No | Specific menu to generate for |
includeNuxtUI | boolean | No | Use Nuxt UI components (default: auto-detect) |
Returns: Menu components with:
- Desktop navigation
- Mobile navigation
- Dropdown submenus
Utility Tools
wpnuxt_list_composables
List WPNuxt composables available for the project.
Parameters: None
Returns: Available composables with:
- Default composables (
usePosts,usePages,useMenu, etc.) - Naming convention explanation
- Usage examples
wpnuxt_migrate
Analyze a WPNuxt v1 project and detect usage anti-patterns, then generate migration helpers.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
fileContents | array | Yes | Files to scan (path and content) |
generateHelpers | boolean | No | Generate compatibility helpers (default: true) |
What it scans for:
v1 → v2 Migration Issues:
- Removed composables (
useFeaturedImage,useWPUri,usePrevNextPost,isStaging) - Renamed composables (
useWPPosts→usePosts,useAsyncWPPosts→useLazyPosts) - Renamed directives (
v-sanitize→v-sanitize-html) - Removed components (
<WPContent>,<ContentRenderer>,<StagingBanner>) - Changed configuration options
Usage Anti-Patterns (SSR issues):
- Composables called inside lifecycle hooks (
onMounted, etc.) - breaks SSR - Composables called inside functions instead of top level
- Missing
.valueaccess on Refs returned by composables - Incorrect data assignment patterns
Example of anti-patterns detected:
<script setup>
// ❌ BAD: Composable inside onMounted breaks SSR
onMounted(async () => {
const { data } = await usePosts() // Will not work on server!
posts.value = data || [] // Missing .value on data
})
// ✅ GOOD: Composable at top level
const { data: posts } = await usePosts()
</script>
Returns:
- List of issues with file locations, line numbers, and severity
- Auto-fix suggestions
- Generated compatibility helper file (
app/composables/wpnuxt-compat.ts) - Step-by-step migration instructions
See Migration Guide for more details.
Nuxt Documentation Proxy Tools
These tools proxy requests to the official Nuxt MCP servers, so you only need to configure WPNuxt MCP to access all documentation.
nuxt_docs
Access Nuxt framework documentation.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
action | string | Yes | get-page, list-pages, or getting-started |
path | string | No | Documentation page path (for get-page) |
version | string | No | 3.x, 4.x, or all (default: 4.x) |
Common paths:
/docs/4.x/getting-started/introduction/docs/4.x/guide/directory-structure/composables/docs/4.x/guide/concepts/rendering/docs/4.x/api/composables/use-async-data
Example:
Get the Nuxt 4 composables documentation
nuxt_ui_docs
Access Nuxt UI component library documentation.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
action | string | Yes | get-component, list-components, get-installation, or list-tools |
componentName | string | No | Component name in PascalCase (for get-component) |
Example:
Get the Button component documentation from Nuxt UI
Returns: Component props, slots, events, and usage examples.