docs: add OpenSpec proposal for GraphQL tools

Add comprehensive proposal for general GraphQL tools in MCP server:
- proposal.md: Problem statement and impact analysis
- tasks.md: Implementation checklist
- specs/mcp-integration/spec.md: 3 new MCP tool requirements
- specs/graphql-api/spec.md: GraphQL introspection requirement

Proposal introduces get_graphql_schema and execute_graphql_query tools
to enable AI agents to discover and interact with the GraphQL API
dynamically for complex tasks beyond dedicated member tools.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-21 11:58:55 +01:00
co-authored by Claude
parent a94f7d0321
commit d220c27b67
4 changed files with 172 additions and 0 deletions
@@ -0,0 +1,24 @@
## Why
The current MCP server provides dedicated tools for member management (`list_members`, `get_member`, `create_member`, `update_member`). While these work well for basic operations, they are limited for complex tasks that require:
- Flexible querying with custom field selection
- Complex filters or relationships (future)
- Ad-hoc data exploration by AI agents
- Leveraging GraphQL's full introspection capabilities
AI agents connected via the MCP server should be able to discover the GraphQL schema dynamically and construct their own queries for complex tasks.
## What Changes
- Add `get_graphql_schema` tool to expose the complete GraphQL schema via introspection
- Add `execute_graphql_query` tool to allow AI agents to execute arbitrary GraphQL queries and mutations
- Update README.md with documentation for the new tools
- Keep existing dedicated member tools for backward compatibility and simple operations
## Impact
- Affected specs: `mcp-integration`, `graphql-api`
- Affected code: `src/mcp_server.py`, `README.md`
- Breaking changes: None (additive only)
- The dedicated member tools remain available, providing a simpler interface for common operations
- AI agents gain flexibility to handle complex queries without requiring new dedicated tools